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
| Field | Description |
|---|---|
clientReferenceInformation. | — |
orderInformation. | |
orderInformation. | — |
orderInformation. | — |
orderInformation. | — |
orderInformation. | — |
orderInformation. | — |
orderInformation. | — |
orderInformation. | — |
orderInformation. | — |
orderInformation. | — |
paymentInformation. | — |
paymentInformation. | — |
paymentInformation. | — |
processingInformation. | Set the value to true. |
Processor-Specific Fields
Fiserv RapidConnect
| Field | Description |
|---|---|
clientReferenceInformation. | — |
clientReferenceInformation. | — |
orderInformation. | — |
Visa Platform Connect
| Field | Description |
|---|---|
paymentInformation. | required for . |
paymentInformation. | required 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 tointernet,oci,oci_attempted, oroci_failure.processingInformation.authorizationOptions.initiator.type— Set the value tocustomer.processingInformation.authorizationOptions.initiator.credentialStoredOnFile— Set the value totrue.
The first transaction initiated by the merchant:
processingInformation.commerceIndicator— Set the value tointernet.processingInformation.authorizationOptions.initiator.type— Set the value tomerchant.processingInformation.authorizationOptions.initiator.credentialStoredOnFile— Set the value totrue.
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 tointernet,oci,oci_attempted, oroci_failure.processingInformation.authorizationOptions.initiator.type— Set the value tocustomer.processingInformation.authorizationOptions.initiator.storedCredentialUsed— Set the value totrue.
Initiated by the merchant:
processingInformation.commerceIndicator— Set the value tointernet.processingInformation.authorizationOptions.initiator.type— Set the value tomerchant.processingInformation.authorizationOptions.initiator.storedCredentialUsed— Set the value totrue.
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 tointernet,oci,oci_attempted, oroci_failure.processingInformation.authorizationOptions.initiator.type— Set the value tocustomer.processingInformation.authorizationOptions.initiator.credentialStoredOnFile— Set the value totrue.recurringPaymentInformation.type— Set the value to1.
First or registration transactions initiated by the customer: Option 2 (3-D Secure authentication cannot be done):
processingInformation.commerceIndicator— Set the value torecurring.processingInformation.authorizationOptions.initiator.type— Set the value tocustomer.
Initiated by the merchant:
processingInformation.commerceIndicator— Set the value tointernet.processingInformation.authorizationOptions.initiator.type— Set the value tomerchant.processingInformation.authorizationOptions.initiator.credentialStoredOnFile— Set the value totrue.recurringPaymentInformation.type— Set the value to1.
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 tointernet.processingInformation.authorizationOptions.initiator.type— Set the value tomerchant.processingInformation.authorizationOptions.initiator.storedCredentialUsed— Set the value totrue. (optional)recurringPaymentInformation.type— Set the value to2.
Initiated by the merchant: Option 2:
processingInformation.commerceIndicator— Set the value torecurring.processingInformation.authorizationOptions.initiator.type— Set the value tomerchant.
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 tointernet,oci,oci_attempted, oroci_failure.processingInformation.authorizationOptions.initiator.type— Set the value tocustomer.processingInformation.authorizationOptions.initiator.credentialStoredOnFile— Set the value totrue.installmentInformation.paymentType— Set the value to1.
Initiated by the customer: Option 2 (3-D Secure authentication cannot be done):
processingInformation.commerceIndicator— Set the value toinstall.processingInformation.authorizationOptions.initiator.type— Set the value tocustomer.
The first or registration installment transaction initiated by the merchant:
processingInformation.commerceIndicator— Set the value tointernet.processingInformation.authorizationOptions.initiator.type— Set the value tomerchant.processingInformation.authorizationOptions.initiator.credentialStoredOnFile— Set the value totrue.installmentInformation.paymentType— Set the value to1.
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 to2.processingInformation.commerceIndicator— Set the value tointernet.processingInformation.authorizationOptions.initiator.type— Set the value tomerchant.processingInformation.authorizationOptions.initiator.storedCredentialUsed— Set the value totrue. (optional)
Initiated by the merchant: Option 2:
processingInformation.commerceIndicator— Set the value toinstall.processingInformation.authorizationOptions.initiator.type— Set the value tomerchant.
Thanks for your feedback!
Last published: October 28, 2026