Docs
Resources
Error Codes

Error Codes

Identify and address server and Payments.js error codes.

-Specific Server Error Codes

ERROR CODEDESCRIPTIONSOLUTION
400 (Bad request)Missing payments-account headerSpecify an account_id.
401 (Unauthorized)Invalid or missing payments-api-key headerVerify that you are using the correct API key with the necessary permissions for your request.
401 (Unauthorized)payments-account is not accessible via api_key.account_id that was used for authenticationProvide an API key that is associated with the specified account.
403 (Forbidden)Either the payments-account is a type that is incapable of making your request or your request is originating from a provider on our blocked listVerify that your hosting provider is not on our blocked list. If so, please contact our team at . If it is not on the list, reattempt this request with your partner account_id.
404 (Not found)Invalid payments-account-id headerVerify that you are using the correct account_id.

Payments.js Error Codes

DISPLAY MESSAGEDESCRIPTIONSOLUTION
paymentRequest is required for form field type paymentRequestButtonThe field was created with a type of paymentRequestButton, but the paymentRequest was not set in the forms.fieldOptions parameter.Set the paymentRequest attribute in your form.createField like so: var prButton = form.createField('paymentRequestButton', { paymentRequest: paymentRequest, });.
Unable to start Apple Pay sessionThe merchant does not have the capabilities (i.e. does not support either the country, currency, or card network) to process this payment or was unable to initialize the ApplePaySession.Verify that the merchant is capable of processing the Payment Intent and that you have completed the steps to verify your domain.
No DOM Element found with id {selector}The selector provided in your inject method call does not exist in the DOM.Double-check that you are passing the correct element id when attempting to inject your PaymentRequest button.
selector + DOM Element must have a parent containerThe user attempted to inject an element that does not have a parent element.Nest your PaymentRequest example button element within a container element.
Field type of FIX is requiredThe build method failed because the necessary fields for the payment method’s type were not created.Verify that you created all the necessary fields with the createField method.
Unhandled payment method typeThe user attempted to confirm a payment intent with a payment_method.type that is not supported by .js.Verify that the payment intent’s payment_method.type matches one of the following: card, ach_debit, or eft_debit.
The payment intent client secret is requiredThe user did not specify a client secret in their call to the confirmPayment method.Pass a Payment Intent's client secret into the call to the confirmPayment method.
payment_method is a required propertyThe user did not specify the payment_method parameter in their call to the confirmPayment method.Pass a payment_method parameter into the call to the confirmPayment method.
A form is requiredThe user attempted to confirm a Payment Intent with the confirmPayment method without building a form object.Verify that the form has been successfully built with the build method.
A payments.form() is required prior to creating a payment methodThe user attempted to create a payment method without building a form object.Verify that the form has been successfully initialized with the form method.
Field of type {fieldType} is not validThe user entered a value that did not pass our form validation.Disable the submit button if the form is invalid.
Expected document.body not to be nullThe user attempted to initialize a instance in an HTML page without a body element.Verify that the page has a body element and add one if necessary.
Unauthorized: jwt malformedThe publishable key or account_id is missing or invalid.Verify that you have specified a valid account_id and publishable key when initializing a object instance.