Skip to main content
Welcome to the preview portal — This is an early release of the new Doc Hub experience, with more content coming soon.

Sales


This section provides the information you need to process a sale transaction.

A sale combines an authorization and a capture into a single transaction.

Supported Processors

  • Chase Paymentech Solutions
  • Elavon Americas
  • FDC Nashville Global
  • Fiserv RapidConnect
  • Streamline
  • Worldpay VAP

Processor-Specific Information

Visa Platform Connect

Supports all supported card types for sales.

Endpoints

POST /pts/v2/payments

POST /pts/v2/payments

POST /pts/v2/payments

POST /pts/v2/payments

POST /pts/v2/payments

Example

Standard Example

{  "processingInformation": {    "capture": true  },  "orderInformation": {    "billTo": {      "country": "US",      "lastName": "VDP",      "address1": "201 S. Division St.",      "postalCode": "48104-2201",      "locality": "Ann Arbor",      "administrativeArea": "MI",      "firstName": "RTS",      "email": "[email protected]"    },    "amountDetails": {      "totalAmount": "100.00",      "currency": "usd"    }  },  "paymentInformation": {    "card": {      "expirationYear": "2030",      "number": "CARD_NUMBER",      "expirationMonth": "12",      "type": "001"    }  }}
{  "_links": {    "void": {      "method": "POST",      "href": "/pts/v2/payments/6485004068966546103093/voids"    },    "self": {      "method": "GET",      "href": "/pts/v2/payments/6485004068966546103093"    }  },  "clientReferenceInformation": {    "code": "RTS-Auth"  },  "id": "6485004068966546103093",  "orderInformation": {    "amountDetails": {      "totalAmount": "100.00",      "authorizedAmount": "100.00",      "currency": "usd"    }  },  "paymentAccountInformation": {    "card": {      "type": "001"    }  },  "paymentInformation": {    "tokenizedCard": {      "type": "001"    },    "card": {      "type": "001"    }  },  "processorInformation": {    "systemTraceAuditNumber": "841109",    "approvalCode": "831000",    "merchantAdvice": {      "code": "01",      "codeRaw": "M001"    },    "responseDetails": "ABC",    "networkTransactionId": "016153570198200",    "retrievalReferenceNumber": "208720841109",    "consumerAuthenticationResponse": {      "code": "2",      "codeRaw": "2"    },    "transactionId": "016153570198200",    "responseCode": "00",    "avs": {      "code": "Y",      "codeRaw": "Y"    }  },  "reconciliationId": "6485004068966546103093",  "status": "AUTHORIZED",  "submitTimeUtc": "2026-03-28T20:46:47Z"}

Fiserv RapidConnect Example

{  "clientReferenceInformation": {    "code": "123456789012",    "reconciliationId": "000000050000773"  },  "processingInformation": {    "commerceIndicator": "internet",    "capture": true  },  "orderInformation": {    "billTo": {      "country": "US",      "firstName": "John",      "lastName": "Smith",      "phoneNumber": "650-965-6111",      "address1": "600 Morgan Falls Road",      "postalCode": "94566-1234",      "locality": "Atlanta",      "administrativeArea": "MI",      "email": "[email protected]"    },    "amountDetails": {      "totalAmount": "110",      "currency": "USD"    }  },  "merchantInformation": {    "merchantDescriptor": {      "name": "Best Bakery"    }  },  "paymentInformation": {    "tokenizedCard": {      "expirationYear": "2030",      "expirationMonth": "02"    },    "instrumentIdentifier": {      "id": "7018759999957811111"    }  }}
{  "paymentInformation": {    "bin": "411111",    "issuer": "CONOTOXIA SP. Z O.O",    "binCountry": "PL",    "accountType": "Visa Classic",    "cardBrand": "VISA",    "cardType": "001",    "instrumentIdentifier": {      "id": "7018759999957811111",      "state": "ACTIVE"    }  },  "submitTimeUtc": "2026-03-12T16:27:31Z",  "_links": {    "refund": {      "href": "/pts/v2/payments/7417968511323232235535/refunds",      "method": "POST"    },    "void": {      "href": "/pts/v2/payments/7417968511323232235535/voids",      "method": "POST"    },    "self": {      "method": "GET",      "href": "/pts/v2/payments/7417968511323232235535"    }  },  "processorInformation": {    "approvalCode": "OK1272",    "consumerAuthenticationResponse": {      "code": "1",      "codeRaw": "1"    },    "responseCodeSource": "4",    "networkTransactionId": "0014239537635196CN",    "responseCode": "000"  },  "clientReferenceInformation": {    "code": "123456789012"  },  "id": "7417968511323232235535",  "orderInformation": {    "amountDetails": {      "authorizedAmount": "110.00"    }  },  "message": "Successful transaction.",  "reconciliationId": "000000050000773",  "status": "COMPLETED",  "tokenInformation": {    "instrumentIdentifierNew": false,    "instrumentIdentifier": {      "id": "7018759999957811111",      "state": "ACTIVE"    }  }}

Required Fields

Default Required Fields

FieldDescription
clientReferenceInformation.transactionId—
orderInformation.amountDetails.currency
orderInformation.amountDetails.totalAmount—
orderInformation.billTo.address1—
orderInformation.billTo.administrativeArea—
orderInformation.billTo.country—
orderInformation.billTo.email—
orderInformation.billTo.firstName—
orderInformation.billTo.lastName—
orderInformation.billTo.locality—
orderInformation.billTo.postalCode—
paymentInformation.card.expirationMonth—
paymentInformation.card.expirationYear—
paymentInformation.card.number—
processingInformation.captureSet the value to true.

Processor-Specific Fields

Fiserv RapidConnect
FieldDescription
clientReferenceInformation.code—
clientReferenceInformation.reconciliationId—
orderInformation.billTo.phoneNumber—
Visa Platform Connect
FieldDescription
paymentInformation.card.securityCoderequired for .
paymentInformation.card.typerequired for .

eftpos Sale Types and Additional Required Fields

Some types of sales transactions require additional fields. The need for these fields and their values depend upon the type of transaction, whether the transaction was initiated by the customer or the merchant, and whether 3-D Secure authentication is used in the transaction.

Pay as You Go First Transaction

The first transaction initiated by the customer:

  • processingInformation.commerceIndicator — Set the value to internet, oci, oci_attempted, or oci_failure.
  • processingInformation.authorizationOptions.initiator.type — Set the value to customer.
  • processingInformation.authorizationOptions.initiator.credentialStoredOnFile — Set the value to true.

The first transaction initiated by the merchant:

  • processingInformation.commerceIndicator — Set the value to internet.
  • processingInformation.authorizationOptions.initiator.type — Set the value to merchant.
  • processingInformation.authorizationOptions.initiator.credentialStoredOnFile — Set the value to true.

Pay as You Go Subsequent Transaction

Pay as You Go subsequent transactions must include these additional fields in the sales transaction.

Initiated by the customer:

  • processingInformation.commerceIndicator — Set the value to internet, oci, oci_attempted, or oci_failure.
  • processingInformation.authorizationOptions.initiator.type — Set the value to customer.
  • processingInformation.authorizationOptions.initiator.storedCredentialUsed — Set the value to true.

Initiated by the merchant:

  • processingInformation.commerceIndicator — Set the value to internet.
  • processingInformation.authorizationOptions.initiator.type — Set the value to merchant.
  • processingInformation.authorizationOptions.initiator.storedCredentialUsed — Set the value to true.

Recurring First or Registration Transaction

First or registration transactions must include these additional fields in the sales transaction. There are two sets of fields that can be used depending upon whether 3-D Secure authentication occurs with the transaction. Option 1 is the preferred set of fields to use.

First or registration transactions initiated by the customer: Option 1:

  • processingInformation.commerceIndicator — Set the value to internet, oci, oci_attempted, or oci_failure.
  • processingInformation.authorizationOptions.initiator.type — Set the value to customer.
  • processingInformation.authorizationOptions.initiator.credentialStoredOnFile — Set the value to true.
  • recurringPaymentInformation.type — Set the value to 1.

First or registration transactions initiated by the customer: Option 2 (3-D Secure authentication cannot be done):

  • processingInformation.commerceIndicator — Set the value to recurring.
  • processingInformation.authorizationOptions.initiator.type — Set the value to customer.

Initiated by the merchant:

  • processingInformation.commerceIndicator — Set the value to internet.
  • processingInformation.authorizationOptions.initiator.type — Set the value to merchant.
  • processingInformation.authorizationOptions.initiator.credentialStoredOnFile — Set the value to true.
  • recurringPaymentInformation.type — Set the value to 1.

Subsequent Recurring Transaction

Subsequent transactions must include these additional fields in the sales transaction. There are two sets of fields that can be used depending upon whether 3-D Secure authentication occurs with the transaction. Option 1 is the preferred set of fields to use.

Initiated by the merchant: Option 1:

  • processingInformation.commerceIndicator — Set the value to internet.
  • processingInformation.authorizationOptions.initiator.type — Set the value to merchant.
  • processingInformation.authorizationOptions.initiator.storedCredentialUsed — Set the value to true. (optional)
  • recurringPaymentInformation.type — Set the value to 2.

Initiated by the merchant: Option 2:

  • processingInformation.commerceIndicator — Set the value to recurring.
  • processingInformation.authorizationOptions.initiator.type — Set the value to merchant.

First or Registration Installment Transaction

First installment or registration transactions must include these additional fields in the sales transaction. There are two sets of fields that can be used depending upon whether 3-D Secure authentication occurs with the transaction. Option 1 is the preferred set of fields to use.

The first or registration installment transaction initiated by the customer: Option 1:

  • processingInformation.commerceIndicator — Set the value to internet, oci, oci_attempted, or oci_failure.
  • processingInformation.authorizationOptions.initiator.type — Set the value to customer.
  • processingInformation.authorizationOptions.initiator.credentialStoredOnFile — Set the value to true.
  • installmentInformation.paymentType — Set the value to 1.

Initiated by the customer: Option 2 (3-D Secure authentication cannot be done):

  • processingInformation.commerceIndicator — Set the value to install.
  • processingInformation.authorizationOptions.initiator.type — Set the value to customer.

The first or registration installment transaction initiated by the merchant:

  • processingInformation.commerceIndicator — Set the value to internet.
  • processingInformation.authorizationOptions.initiator.type — Set the value to merchant.
  • processingInformation.authorizationOptions.initiator.credentialStoredOnFile — Set the value to true.
  • installmentInformation.paymentType — Set the value to 1.

Subsequent Installment Transaction

Subsequent installment transactions must include these additional fields in the sales transaction. There are two sets of fields that can be used depending upon whether 3-D Secure authentication occurs with the transaction. Option 1 is the preferred set of fields to use.

Initiated by the merchant: Option 1:

  • installmentInformation.paymentType — Set the value to 2.
  • processingInformation.commerceIndicator — Set the value to internet.
  • processingInformation.authorizationOptions.initiator.type — Set the value to merchant.
  • processingInformation.authorizationOptions.initiator.storedCredentialUsed — Set the value to true. (optional)

Initiated by the merchant: Option 2:

  • processingInformation.commerceIndicator — Set the value to install.
  • processingInformation.authorizationOptions.initiator.type — Set the value to merchant.

Last published: October 28, 2026

Not available for your audience

This page isn't available for your current audience selection.