Incremental Authorization

This section shows you how to process an incremental authorization.
Incremental authorizations allow merchants to add additional products and services to an existing authorization. This section will show you how to append an original authorization to include additional transactions.
The supported card types for incremental authorizations are Mastercard and Visa.
The incremental authorization service has these limitations:
  • Maximum of 100 incremental authorizations per transaction, in addition to the initial authorization.
  • Interchange optimization is not supported.
  • Split shipments are not supported.

Supported Card Types

These card types support incremental authorizations:
  • Mastercard
  • Visa

Endpoint

Production:
PATCH
https://api.visaacceptance.com
/pts/v2/payments/
{id}
Test:
PATCH
https://apitest.visaacceptance.com
/pts/v2/payments/
{id}
The
{id}
is the transaction ID returned in the original authorization response.

Required Fields for Processing an Incremental Authorization

clientReferenceInformation.code
orderInformation.amountDetails.totalAmount
orderInformation.amountDetails.currency
processingInformation.authorizationOptions. initiator.storedCredentialUsed
Set this field to
true
.

Country-Specific Required Fields for Processing an Incremental Authorization

Use these country-specific required fields to process an incremental authorization.

Argentina

merchantInformation.transactionLocalDateTime
Required in Argentina when the time zone is not included in your account. Otherwise, this field is optional.

Optional Field for Processing an Incremental Authorization

You can use this optional field to include your transaction ID when processing an incremental authorization.
clientReferenceInformation.transactionId

REST Example: Processing an Incremental Authorization

Request
{ "clientReferenceInformation": { "code": "33557799" }, "processingInformation": { "authorizationOptions": { "initiator": { "storedCredentialUsed": "true" } } }, "orderInformation" : { "amountDetails" : { "totalAmount": "105.00", "currency" : "USD" } } "merchantInformation": { "transactionLocalDateTime": "20191002080000" } }
Response to a Successful Request
{ "_links" : { "authReversal" : { "method" : "POST", "href" : "/pts/v2/payments/6479624584536070903093/reversals" }, "self" : { "method" : "GET", "href" : "/pts/v2/payments/6479624584536070903093" }, "capture" : { "method" : "POST", "href" : "/pts/v2/payments/6479624584536070903093/captures" } }, "clientReferenceInformation" : { "code" : "33557799" }, "id" : "6479624584536070903093", "orderInformation" : { "amountDetails" : { "authorizedAmount" : "105.00", "currency" : "USD" } }, "paymentAccountInformation" : { "card" : { "type" : "001" } }, "paymentInformation" : { "tokenizedCard" : { "type" : "001" }, "card" : { "type" : "001" } }, "processorInformation" : { "systemTraceAuditNumber" : "819203", "approvalCode" : "831000", "cardVerification" : { "resultCodeRaw" : "M", "resultCode" : "M" }, "merchantAdvice" : { "code" : "01", "codeRaw" : "M001" }, "responseDetails" : "ABC", "networkTransactionId" : "016153570198200", "retrievalReferenceNumber" : "208115819203", "consumerAuthenticationResponse" : { "code" : "2", "codeRaw" : "2" }, "transactionId" : "016153570198200", "responseCode" : "00", "avs" : { "code" : "Y", "codeRaw" : "Y" } }, "reconciliationId" : "6479624584536070903093", "status" : "AUTHORIZED", "submitTimeUtc" : "2022-03-22T15:20:58Z" }