Orders v2 errors

APICurrentLast updated: August 3rd 2021, @ 12:24:08 pm


Errors are listed by endpoint and then by error name.

Get order

Error Description Issue
INTERNAL_SERVER_ERRORAn internal server error occurred. A system or application error occurred.
NOT_AUTHORIZEDAuthorization failed due to insufficient permissions. PERMISSION_DENIED: You do not have permission to access or perform operations on this resource.
RESOURCE_NOT_FOUNDThe specified resource does not exist. INVALID_RESOURCE_ID: Specified resource ID does not exist. Check the resource ID and try again.
AUTHENTICATION_FAILUREAuthentication failed due to missing authorization header or invalid authentication credentials. INVALID_ACCOUNT_STATUS: Account validations failed for the user.

Create order

Error Description Issue
INTERNAL_SERVER_ERROR An internal server error occurred. A system or application error occurred.
AUTHENTICATION_FAILURE Authentication failed due to missing authorization header or invalid authentication credentials. INVALID_ACCOUNT_STATUS: Account validations failed for the user.
INVALID_REQUEST The request is not well-formed, is syntactically incorrect, or violates schema. For more information, see Validation errors.
  • INVALID_ARRAY_MAX_ITEMS: The number of items in an array parameter is too large. Possible error locations:
    • /purchase_units
    • /purchase_units/0/shipping/options
  • INVALID_ARRAY_MIN_ITEMS: The number of items in an array parameter is too small. Possible error location: /purchase_units
  • INVALID_COUNTRY_CODE: Country code is invalid. See Country codes for a list of supported country codes. Possible error locations:
    • payer/address/country_code
    • purchase_units/0/shipping/address/country_code
  • INVALID_PARAMETER_SYNTAX: The value of a field does not conform to the expected format. Possible error locations:
    • application_context/locale
    • payer/address/country_code
    • payer/birth_date
    • payer/email_address
    • payer/payer_id
    • payer/phone/*
    • purchase_units/*
  • INVALID_STRING_LENGTH: The value of a field is either too short or too long. Possible error locations:
    • application_context/brand_name
    • application_context/locale
    • payer/*
    • purchase_units/0/*
  • INVALID_PARAMETER_VALUE: A parameter value is not valid. Possible error locations:
    • application_context/landing_page
    • application_context/locale
    • application_context/shipping_preference
    • application_context/user_action
    • intent
    • payer/phone/phone_type
    • payer/tax_info/tax_id_type
    • prefer
    • purchase_units/0/items/0/category
  • MISSING_REQUIRED_PARAMETER: A required parameter is missing. Possible error locations:
    • intent
    • purchase_units
    • purchase_units/0/amount
    • purchase_units/0/amount/value
    • purchase_units/0/amount/currency_code
    • /purchase_units/0/shipping/options/0/id
    • /purchase_units/0/shipping/options/0/label
    • /purchase_units/0/shipping/options/0/selected
  • NOT_SUPPORTED: This field is not currently supported. Possible error locations:
    • payer/address/*
    • payer/name/*
    • payer/phone/phone_number/*
    • purchase_units/0/shipping/address/*
    • purchase_units/0/shipping/name/**
NOT_AUTHORIZED Authorization failed due to insufficient permissions.
  • PERMISSION_DENIED: You do not have permission to access or perform operations on this resource.
  • PERMISSION_DENIED_FOR_DONATION_ITEMS: The API caller or payee have not been granted appropriate permissions to send items.category as DONATION. Speak to your account manager if you want to process these type of items.
  • MALFORMED_REQUEST: You've sent a request that our server could not understand.
UNPROCESSABLE_ENTITY The requested action could not be performed, is semantically incorrect, or failed business validation.
  • AMOUNT_MISMATCH: Should equal item_total + tax_total + shipping + handling + insurance - shipping_discount - discount.
  • CANNOT_BE_NEGATIVE: Must be greater than or equal to zero. If the currency supports decimals, only two decimal places are supported.
  • CANNOT_BE_ZERO_OR_NEGATIVE: Must be greater than zero. If the currency supports decimals, only two decimal places are supported.<
  • CITY_REQUIRED: The specified country requires a city in address.admin_area_2.
  • DECIMAL_PRECISION: If the currency supports decimals, only two decimal places are supported.
  • INVALID_CURRENCY_CODE: Currency code is invalid or is not currently supported. For list of supported currency codes, see Currency codes.
  • INVALID_PAYER_ID: The payer ID is not valid.
  • ITEM_TOTAL_MISMATCH: Should equal sum of unit_amount * quantity across all items for a given purchase_unit.
  • ITEM_TOTAL_REQUIRED: If item details are specified, items.unit_amount and items.quantity and amount.breakdown.item_total are required.
  • MAX_VALUE_EXCEEDED: Should be less than or equal to 9999999.99.
  • MULTI_CURRENCY_ORDER: Multiple differing values of currency_code are not supported. Entire order request must have the same currency code.
  • MULTIPLE_ITEM_CATEGORIES: For a given purchase unit, the items.category could be either PHYSICAL_GOODS and\/or DIGITAL_GOODS or just DONATION. items.category as DONATION cannot be combined with items with either PHYSICAL_GOODS or DIGITAL_GOODS.
  • MULTIPLE_SHIPPING_ADDRESS_NOT_SUPPORTED: Multiple shipping addresses are not supported.
  • PAYEE_ACCOUNT_INVALID: Mismatch between request payeeId and payeeEmail.
  • PAYEE_ACCOUNT_LOCKED_OR_CLOSED: The merchant account is locked or closed.
  • PAYEE_ACCOUNT_RESTRICTED: The merchant account is restricted.
  • POSTAL_CODE_REQUIRED: The specified country requires a postal code.
  • TAX_TOTAL_MISMATCH: Should equal sum of tax * quantity across all items for a given purchase unit.
  • TAX_TOTAL_MISMATCH: Should equal sum of tax * quantity across all items for a given purchase unit.
  • TAX_TOTAL_REQUIRED: If item details are specified, items.tax_total, items.quantity, and amount.breakdown.tax_total are required.
  • UNSUPPORTED_PAYMENT_INSTRUCTION: You must provide the payment instruction when you capture an authorized payment using intent=AUTHORIZE. For details, see Capture authorization. For intent=CAPTURE, send the payment instruction when you create the order.
  • SHIPPING_OPTION_NOT_SELECTED: At least one of the shipping.option should be set to selected = true.
  • SHIPPING_OPTIONS_NOT_SUPPORTED: Shipping options are not supported when application_context.shipping_preference is set to NO_SHIPPING or SET_PROVIDED_ADDRESS.
  • MULTIPLE_SHIPPING_OPTION_SELECTED: Only one shipping.option can be set to selected = true.
  • PREFERRED_SHIPPING_OPTION_AMOUNT_MISMATCH: The amount provided in the preferred shipping option should match the amount provided in amount breakdown. Possible error location: /purchase_units/0/shipping/options/0/amount/value.

Patch order

Error Description Issue
INTERNAL_SERVER_ERROR An internal server error occurred. A system or application error occurred.
AUTHENTICATION_FAILURE Authentication failed due to missing authorization header or invalid authentication credentials. INVALID_ACCOUNT_STATUS: Account validations failed for the user.
INVALID_REQUEST Request is not well formed, is syntactically incorrect, or violates schema.
  • FIELD_NOT_PATCHABLE: Field cannot be patched. Possible error locations:
    • id
    • status
  • INVALID_ARRAY_MAX_ITEMS: The number of items in an array parameter is too large. Possible error location: /purchase_units/0/shipping/options.
  • INVALID_PARAMETER_SYNTAX: The value of a field does not conform to the expected format. Possible error location: /purchase_units/0/payee/email_address.
  • INVALID_STRING_LENGTH: The value of a field is either too short or too long. Possible error locations:
    • /purchase_units/0/shipping/options/0/id
    • /purchase_units/0/shipping/options/0/label
  • INVALID_PARAMETER_VALUE: The value of a field is invalid. Possible error location: op.
  • MISSING_REQUIRED_PARAMETER: A required field or parameter is missing. Possible error locations:
    • op
    • /purchase_units/0/shipping/options/0/id
    • /purchase_units/0/shipping/options/0/label
    • /purchase_units/0/shipping/options/0/selected
  • AMOUNT_NOT_PATCHABLE: The amount cannot be updated as the payer has chosen and approved a specific financing offer for a given amount. Create a new order with the updated order amount and have the payer approve the new payment terms. Possible error location: /purchase_units/0/amount
  • INVALID_PATCH_OPERATION: The operation cannot be honored. Cannot add a property that's already present; use replace. Cannot remove or replace a property that's not present; use add. Possible error location: op.
NOT_AUTHORIZED Authorization failed due to insufficient permissions.
  • PERMISSION_DENIED: You do not have permission to access or perform operations on this resource.
  • PAYEE_ACCOUNT_NOT_SUPPORTED: Payee does not have an account. Your current setup requires the payee to have a verified account with PayPal before you can process transactions on their behalf.
  • PAYEE_ACCOUNT_NOT_VERIFIED: Payee has not verified their account with PayPal. Your current setup requires the payee to have an account with PayPal before you can process transactions on their behalf.
  • PAYEE_NOT_CONSENTED: Payee does not have appropriate consent to allow the API caller to process this type of transaction on their behalf. Your current setup requires the payee to provide a consent before this transaction can be processed successfully.
RESOURCE_NOT_FOUNDThe specified resource does not exist. INVALID_RESOURCE_ID: Specified resource ID does not exist. Check the resource ID and try again.
UNPROCESSABLE_ENTITY The requested action could not be performed, is semantically incorrect, or failed business validation.
  • INVALID_JSON_POINTER_FORMAT: Path should be a valid JSON Pointer that references a location within the request where the operation is performed.
  • INVALID_PARAMETER: Cannot be specified as part of the request.
  • NOT_PATCHABLE: Cannot be patched.
  • UNSUPPORTED_PATCH_PARAMETER_VALUE: The value specified for this field is not currently supported.
  • PATCH_VALUE_REQUIRED: Specify a value for the field being patched.
  • PATCH_PATH_REQUIRED: Specify a value for the field in which the operation needs to be performed.
  • REFERENCE_ID_NOT_FOUND: Filter expression value is incorrect. Check the value of the reference_id and try again.
  • MULTI_CURRENCY_ORDER: Multiple differing values of currency_code are not supported. Entire order request must have the same currency code.
  • SHIPPING_OPTION_NOT_SELECTED: At least one of the shipping.option should be set to selected = true.
  • MULTI_CURRENCY_ORDER: Multiple differing values of currency_code are not supported. Entire order request must have the same currency code.
  • SHIPPING_OPTION_NOT_SELECTED: At least one of the shipping.option should be set to selected = true.
  • SHIPPING_OPTIONS_NOT_SUPPORTED: Shipping options are not supported when application_context.shipping_preference is set to NO_SHIPPING or SET_PROVIDED_ADDRESS.
  • MULTIPLE_SHIPPING_OPTION_SELECTED: Only one shipping.option can be set to selected = true.
  • ORDER_ALREADY_COMPLETED: The order cannot be patched after it is completed.
  • PREFERRED_SHIPPING_OPTION_AMOUNT_MISMATCH: The amount provided in the preferred shipping option should match the amount provided in amount breakdown. Possible error location: /purchase_units/0/shipping/options/0/amount/value.

Authorize order

Error Description Issue
INTERNAL_SERVER_ERROR An internal server error occurred. A system or application error occurred.
AUTHENTICATION_FAILURE Authentication failed due to missing authorization header or invalid authentication credentials. INVALID_ACCOUNT_STATUS: Account validations failed for the user.
INVALID_REQUEST "Request is not well formed, is syntactically incorrect, or violates schema.
  • INVALID_COUNTRY_CODE: Country code is invalid. See Country codes for a list of supported country codes. Possible error location: payment_source/card/billing_address/country_code.
  • INVALID_PARAMETER_VALUE: A parameter value is not valid. Possible error locations:
    • Prefer
    • payment_source/token/type
  • MISSING_REQUIRED_PARAMETER: A required field or parameter is missing. Possible error locations:
    • payment_source/token/id
    • payment_source/token/type
    • payment_source/card/expiry
  • INVALID_STRING_LENGTH: The value of a field is either too short or too long. Possible error locations:
    • payment_source/token/id
    • payment_source/card/billing_address/country_code
NOT_AUTHORIZED Authorization failed due to insufficient permissions.
  • PERMISSION_DENIED: You do not have permission to access or perform operations on this resource.
  • PERMISSION_DENIED_FOR_DONATION_ITEMS: The API caller or payee have not been granted appropriate permissions to send items.category as DONATION. Speak to your account manager if you want to process these type of items.
RESOURCE_NOT_FOUNDThe specified resource does not exist. INVALID_RESOURCE_ID: Specified resource ID does not exist. Check the resource ID and try again.
UNPROCESSABLE_ENTITY "The requested action could not be performed, is semantically incorrect, or failed business validation.
  • ACTION_DOES_NOT_MATCH_INTENT: Order was created with an intent to CAPTURE. Use v2/checkout/orders/order_id/capture to complete the transaction or alternately Create an order with an intent of AUTHORIZE.
  • AGREEMENT_ALREADY_CANCELLED: The requested agreement is already canceled.
  • BILLING_AGREEMENT_NOT_FOUND: The requested billing agreement token was not found.
  • DOMESTIC_TRANSACTION_REQUIRED: This transaction requires the payee and payer to be resident in the same country. A domestic transaction is required to create this payment.
  • DUPLICATE_INVOICE_ID: >Duplicate invoice ID detected. Avoid potential duplicate transactions by setting your account so that it requires unique invoice IDs for each transaction.
  • ORDER_NOT_APPROVED: Payer has not yet approved the order for payment. Redirect the payer to the approve URL returned as part of the HATEOAS links within the create order call.>/li>
  • MAX_NUMBER_OF_PAYMENT_ATTEMPTS_EXCEEDED: You have exceeded the maximum number of payment attempts.
  • PAYEE_BLOCKED_TRANSACTION: The fraud settings for this seller are such that this payment cannot be executed.
  • PAYER_ACCOUNT_LOCKED_OR_CLOSED: The payer account cannot be used for this transaction.
  • PAYER_ACCOUNT_RESTRICTED: The payer account cannot be used because it has been restricted.
  • PAYER_CANNOT_PAY: Payer cannot pay for this transaction. Contact the payer to find other ways to pay for this transaction.
  • TRANSACTION_LIMIT_EXCEEDED: Total payment amount exceeded transaction limit.
  • TRANSACTION_RECEIVING_LIMIT_EXCEEDED: The transaction exceeds the receiver's receiving limit.
  • TRANSACTION_REFUSED: The request was refused.
  • ORDER_ALREADY_AUTHORIZED: Order already authorized. If intent=AUTHORIZE, only one authorization per order is allowed.
  • AUTH_CAPTURE_NOT_ENABLED: Authorization and capture feature is not enabled for the merchant. Make sure that the recipient of the funds is a verified business account.
  • AMOUNT_CANNOT_BE_SPECIFIED: An authorization amount can only be specified if an order has been saved by calling /v2/checkout/orders/{order_id}/save. Save the order and try again.
  • AUTHORIZATION_AMOUNT_EXCEEDED: Authorization amount specified exceeded allowable limit. Specify a different amount and try the request again. Alternately, contact customer support to increase your limits.
  • AUTHORIZATION_CURRENCY_MISMATCH: The currency of the authorization should be same as that in which the order was created and approved by the payer. Check the currency_code and try again.
  • MAX_AUTHORIZATION_COUNT_EXCEEDED: Maximum number of authorizations allowed for the order has been reached. Contact customer support if you need to increase your limit.
  • ORDER_COMPLETED_OR_VOIDED: Order is voided or completed and cannot be authorized.
  • ORDER_EXPIRED: Order is expired and cannot be authorized. Contact customer support if you need to increase your order validity period.
  • INVALID_PICKUP_ADDRESS: If the shipping_option.type is set to PICKUP, then the shipping_detail.name.full_name should start with S2S meaning ship to store. For example, S2S My Store.
  • SHIPPING_ADDRESS_INVALID:Provided shipping address is invalid.

Capture order

Error Description Issue
INTERNAL_SERVER_ERROR An internal server error occurred. A system or application error occurred.
AUTHENTICATION_FAILURE Authentication failed due to missing authorization header or invalid authentication credentials. INVALID_ACCOUNT_STATUS: Account validations failed for the user.
INVALID_REQUEST Request is not well formed, is syntactically incorrect, or violates schema.
  • INVALID_PARAMETER_VALUE: A parameter value is not valid. Possible error locations:
    • intent
    • Prefer
    • payment_source/token/type
  • MISSING_REQUIRED_PARAMETER: A required field or parameter is missing. Possible error locations:
    • payment_source/token/id
    • payment_source/token/type
  • INVALID_STRING_LENGTH: The value of a field is either too short or too long. Possible error location: payment_source/token/id.
NOT_AUTHORIZED Authorization failed due to insufficient permissions.
  • CONSENT_NEEDED: Payee consent needed.
  • PERMISSION_DENIED: You do not have permission to access or perform operations on this resource.
  • PERMISSION_DENIED_FOR_DONATION_ITEMS: The API caller or payee have not been granted appropriate permissions to send items.category as DONATION. Speak to your account manager if you want to process these type of items.
RESOURCE_NOT_FOUNDThe specified resource does not exist. INVALID_RESOURCE_ID: Specified resource ID does not exist. Check the resource ID and try again.
UNPROCESSABLE_ENTITY The requested action could not be performed, is semantically incorrect, or failed business validation.
  • AGREEMENT_ALREADY_CANCELLED: The requested agreement is already canceled.
  • BILLING_AGREEMENT_NOT_FOUND: The requested billing agreement token was not found.
  • COMPLIANCE_VIOLATION: Transaction is declined due to compliance violation.
  • DOMESTIC_TRANSACTION_REQUIRED: This transaction requires the payee and payer to be resident in the same country. A domestic transaction is required to create this payment.
  • DUPLICATE_INVOICE_ID: Duplicate invoice ID detected. void potential duplicate transactions by setting your account so that it requires unique invoice IDs for each transaction.
  • INSTRUMENT_DECLINED: The instrument presented was either declined by the processor or bank or it can't be used for this payment.
  • ORDER_NOT_APPROVED: Payer has not yet approved the Order for payment. Redirect the payer to the approve URL returned as part of the HATEOAS links within the create order call or provide a valid payment_source in the request.
  • MAX_NUMBER_OF_PAYMENT_ATTEMPTS_EXCEEDED: You have exceeded the maximum number of payment attempts.
  • PAYEE_BLOCKED_TRANSACTION: The fraud settings for this seller are such that this payment cannot be executed.
  • PAYER_ACCOUNT_LOCKED_OR_CLOSED: The payer account cannot be used for this transaction.
  • PAYER_ACCOUNT_RESTRICTED: The payer's account is restricted.
  • PAYER_CANNOT_PAY: The payer cannot pay for this transaction. Contact the payer to find other ways to pay for this transaction.
  • TRANSACTION_LIMIT_EXCEEDED: Total payment amount exceeded transaction limit.
  • TRANSACTION_RECEIVING_LIMIT_EXCEEDED: The transaction exceeds the receiver's receiving limit.
  • TRANSACTION_REFUSED: The request was refused.
  • REDIRECT_PAYER_FOR_ALTERNATE_FUNDING: Transaction failed. Redirect the payer to select another funding source.
  • "ORDER_ALREADY_CAPTURED: Order already captured. If intent=CAPTURE, only one capture per order is allowed.
  • TRANSACTION_BLOCKED_BY_PAYEE: Transaction blocked by payee’s fraud protection settings.
  • AUTH_CAPTURE_NOT_ENABLED: Authorization and capture feature is not enabled for the merchant. Make sure that the recipient of the funds is a verified business account.
  • NOT_ENABLED_FOR_CARD_PROCESSING: The API caller account is not setup to be able to process card payments. Contact PayPal customer support.
  • PAYEE_NOT_ENABLED_FOR_CARD_PROCESSING: Payee account is not setup to be able to process card payments. Contact PayPal customer support.
  • INVALID_PICKUP_ADDRESS: If the shipping_option.type is set to PICKUP, then the shipping_detail.name.full_name should start with S2S, meaning ship to store. For example, S2S My Store.
  • SHIPPING_ADDRESS_INVALID: Provided shipping address is invalid.