Hosted Payment Errors

Error codes returned by Customized Checkout and Embedded Components

Codes are returned in the standard response envelope on StartSession, GetResult, and Ack calls.

Check the CODE field on every response. 0000 means the request succeeded. Any other value indicates a validation error, session issue, or gateway problem. The TEXT field contains a human-readable message that distinguishes between errors sharing the same code.

For card declines returned from the card network, see Credit Card Declines. For authentication errors (1001, 9128), see Authentication.

Session and Sequencing

Errors that indicate the session doesn't exist, has expired, or is being accessed out of order.

CodeMessageDescription
9005CANCELLEDThe customer clicked Cancel on the hosted page, abandoning the payment.
9006MISSING SECUREID / INVALID SECUREID / INVALID SECUREID OR REFNUMGetResult or Ack was called without a SECUREID, or with one the gateway doesn't recognize.
9007NOT APPROVEDAck was attempted on a transaction that was declined.
9008NOT CAPTUREDThe acknowledgement failed to capture the transaction — typically because the session expired before Ack was sent.
9015NO RESULT - DO NOT POLL / CANCELLED SEQGetResult was called before the customer completed the hosted page (polling), or called out of sequence. A second polling occurrence cancels the session.

Input Validation

Errors that indicate a required field is missing or malformed.

CodeMessageDescription
9001SECUREID NOT ALLOWED / CANNOT OVERRIDE URLSSECUREID was sent on StartSession (not allowed on create), or SUCCESSURL/FAILUREURL was sent on a terminal without DYNAMICURL enabled.
9010INVALID ACTIONThe ACTION value is not recognized.
9011MISSING REQUESTIDREQUESTID was not provided.
9012CANNOT MIX REQUESTID AND INVOICE / INVALID REQUESTID / DUPLICATE REQUESTIDEither both REQUESTID and the legacy INVOICE field were sent, the REQUESTID is malformed, or a REQUESTID has already been used for this terminal.
9013INVALID REFNUMREFNUM is malformed or too short.
9014MISSING CUST EMAIL / INVALID CUST EMAIL / INVALID CUSTIDCUSTEMAIL is missing or malformed, or CUSTID contains invalid characters.
9016MISSING CUST NAMECUSTNAME is required (for schedule-linked sessions) but wasn't provided.
9021MISSING REFNUMAck was called without a SECUREID or REFNUM.
9022ACCESS DENIED PWPassword does not match on a session-level operation.
1036INVALID INVInvoice number is malformed.
1037USERFEE TOO SMALLCustomerPay USERFEE is below the required minimum for the transaction amount.
1041INVALID SOURCEThe SOURCE field contains invalid characters.

Amount and Fee Validation

CodeMessageDescription
9024INVALID AMT FORMATAMT is missing a decimal point.
9025INVALID AMT / AMT NOT ALLOWED / INVALID PLATFEEAMT is negative, exceeds the terminal's maximum, or was sent alongside SCHEDID (where it's not allowed).
9026INVALID PLATFEE FORMATPLATFEE is missing a decimal point.
9027INVALID PLATFEE AMOUNTPLATFEE is negative.
9028PLATFEE NOT ALLOWEDThe terminal does not have ENABLE PLAT FEE set.
9029INVALID PLATCHRG FORMATPLATCHRG is missing a decimal point.
9030INVALID PLATCHRG AMOUNTPLATCHRG is negative or exceeds AMT.
9031PLATCHRG NOT ALLOWEDThe terminal does not have ENABLE PLAT CHRG set.
9032INVALID USERFEE FORMATUSERFEE is missing a decimal point.
9033INVALID USERFEE AMOUNTUSERFEE is negative.
9034USERFEE NOT ALLOWEDThe terminal does not have USER FEE enabled or the merchant is not CustomerPay-enabled.
9035PLATFEE OR PLATCHRGBoth PLATFEE and PLATCHRG were sent on the same request. Only one is allowed per transaction.
9036CANNOT MIX PLATFORM WITH PLATFEE OR PLATCHRGPLATFORM was sent alongside PLATFEE or PLATCHRG. Use one or the other.

Setup

CodeMessageDescription
9106INVALID REDIRECT URLSUCCESSURL or FAILUREURL is not HTTPS, or fails URL format validation.
1090INVALID HPP SETUPThe terminal's hosted payment configuration is incomplete. Contact [email protected].
1091HPP NOT ALLOWEDThe terminal is not permitted to use hosted payments.

Gateway Errors

CodeMessageDescription
9100SESSION ERRORInternal gateway error while saving session state. Retry the call.
9900SYSTEM ERRORUnexpected gateway exception. Retry on the alternate gateway server (svrasvrb).

How to Handle

  • Session errors (9005, 9006) — user-facing. Show "session expired, please try again" and restart the flow with a fresh StartSession.
  • Sequencing errors (9015) — your integration is polling GetResult too early. Only call it after the customer is redirected back to your Return URL. See Steps for Customized Checkout.
  • Validation errors (9001, 90109036, 1036, 1037, 1041) — bugs in your integration. Fix the request format.
  • Fee-not-allowed errors (9028, 9031, 9034) — your terminal isn't configured for this fee type. Email [email protected].
  • Setup errors (1090, 1091, 9106) — configuration issues that require SportsPay intervention (except 9106, which is your return URL format).
  • Gateway errors (9100, 9900) — retryable. Retry on the alternate gateway server.

Related