For the complete documentation index, see llms.txt. This page is also available as Markdown.

Error Codes

Every Checkout API error response returns a JSON object with the following fields:

Field
Type
Description

code

number

3-digit Verifone error code

timestamp

string

ISO 8601 timestamp of the error

message

string

Human-readable description

details

object

Optional additional context

When debugging a 400 error, always check the details field — it will identify which specific request parameter is invalid or missing.

Common Error Codes

Verifone Code
Cause

107

Invalid parameter format — check details for affected fields

110

Invalid resource or malformed JSON

126

Missing required parameter

123

Transaction rejected by processor

127

Unexpected parameter submitted

HTTP
Verifone Code
Cause

401

116

Authentication required — check Authorization header

403

111

Transaction blocked by organisation ruleset

403

113

Insufficient permissions for this operation

403

121

Transaction declined by processor

403

165

Checkout exceeded maximum failed transaction attempts (3)

403

168

Checkout already completed

403

169

Checkout has expired (max 30 days)

HTTP
Verifone Code
Cause

404

109

Resource not found

500

100

Unexpected server error — contact support with code and timestamp

504

170

API call timed out — retry the request

Checkout-Specific Codes

These codes are unique to the Checkout API lifecycle:

Session State Errors

  • 165 — The session has exceeded 3 failed payment attempts. Create a new checkout session.

  • 168 — The session has already been completed. No further payments can be made.

  • 169 — The session has expired (sessions are valid for up to 30 days). Create a new checkout session.

  • For 165 / 168 / 169: always create a fresh checkout via POST /v2/checkout

  • For 100 server errors: log the full code and timestamp and contact Verifone support

  • For 170 timeouts: implement an exponential back-off retry strategy

Last updated

Was this helpful?