Processing Apple Pay Transactions

VDC NAB
supports these payment services for Apple Pay: Authorization, Sale, Authorization Reversal, and Capture. This section of the guide contains tasks that show you how to use those services to process Apple Pay transactions:
  • Authorize an Apple Pay payment with
    VDC NAB
    decryption
  • Authorize an Apple Pay payment with merchant decryption
  • Process an Apple Pay sale with
    VDC NAB
    decryption
  • Process an Apple Pay sale with merchant decryption
  • Reverse the authorization of an Apple Pay payment
  • Capture an authorized Apple Pay payment
For each task in this section, the example request message includes the
processingInformation. paymentSolution
REST
API field set to
001
. This value identifies Apple Pay as the digital payment solution.
IMPORTANT
In response to your successful payment authorization request, Apple Pay returns an encrypted payload that contains sensitive payment information. The method you use to extract and decrypt the payment data depends on how you integrated Apple Pay into your system.
For the list of supported cards, see Cards Supported for Apple Pay on VDC National Australia Bank Ltd.
For high-level descriptions of the
VDC NAB
decryption method and the merchant decryption method, see Integration Options.

Authorization Service

This section provides the steps for requesting the authorization service using these methods, which determine the request fields that are required to request the authorization service. In addition, different request fields are required in order to request the authorization service. The type of card used to process the transaction determines which request fields are used.
To request the authorization service, use the endpoint specified below.
After you send the request, verify the response messages to make sure that the request was successful.
A 200-level HTTP response code indicates success.
For information about response codes, see
Transaction Response Codes
.

Endpoint

Production:
POST
https://nabgateway-api.nab.com.au
/pts/v2/payments
Test:
POST
https://nabgateway-api-test.nab.com.au
/pts/v2/payments

Authorizations Using
National Australia Bank
Decryption for JCB

This section shows you how to process an authorization using
National Australia Bank
decryption for JCB.

Required Fields for Authorizing a Payment Using
National Australia Bank
Decryption for JCB

clientReferenceInformation.code
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.type
paymentInformation.fluidData.descriptor
Set this field to
RklEPUNPTU1PTi5BUFBMRS5JTkFQUC5QQVlNRU5U
.
paymentInformaton.fluidData.value
Set this field to the Base64-encoded value obtained from the
paymentData
property of the
PKPaymentToken
object.
paymentInformation.tokenizedCard.transactionType
Set this field to
1
.
processingInformation.paymentSolution
Set this field to
001
.

Optional Fields for Authorizing a Payment for Apple Pay Transactions

You can include these optional fields in a request for an authorization:
paymentInformation.tokenizedCard.assuranceMethod
Set this field to the tokenization confidence level specified by the method used to verify the account or authenticate the cardholder. The value is assigned by the token service provider.

REST Example:
National Australia Bank
Decryption and JCB

Endpoint:
  • Production:
    POST
    https://nabgateway-api.nab.com.au
    /pts/v2/payments
  • Test:
    POST
    https://nabgateway-api-test.nab.com.au
    /pts/v2/payments
Request
{ "clientReferenceInformation": { "code": "1234567890" }, "processingInformation": { "paymentSolution": "001" }, "paymentInformation": { "fluidData": { "value"="eyJkYXRhW5FINWZqVjfkak1NdVNSaE96dWF2ZGVyb2c9PSJ9", "descriptor": "RklEPUNPTU1PTi5BUFBMRS5JTkFQUC5QQVlNRU5U", "encoding": "Base64", }, "tokenizedCard": { "type": "007", "transactionType": "1", } }, "orderInformation": { "amountDetails": { "totalAmount": "100.00", "currency": "USD" }, "billTo": { "firstName": "Maya", "lastName": "Lee", "address1": "123 Main St", "locality": "SomeCity", "administrativeArea": "CA", "postalCode": "94404", "country": "US", "email": "[email protected]" } } }
Response for a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6234236182176225003004" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/captures" } }, "clientReferenceInformation": { "code": "1234567890" }, "id": "6234236182176225003004", "orderInformation": { "amountDetails": { "authorizedAmount": "100.00", "currency": "USD" } }, "paymentInformation": { "tokenizedCard": { "expirationYear": "2031", "prefix": "128945", "expirationMonth": "12", "suffix": "2398", "type": "007" }, "card": { "type": "007" } }, "pointOfSaleInformation": { "terminalId": "111111" }, "processingInformation": { "paymentSolution": "001" }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "X", "codeRaw": "I1" } }, "reconciliationId": "75729760OPN67ZFV", "status": "AUTHORIZED", "submitTimeUtc": "2021-06-11T15:00:18Z" }

Authorizations Using
National Australia Bank
Decryption for Mastercard

This section shows you how to process an authorization using
National Australia Bank
decryption for Mastercard.

Required Fields for Authorizing a Payment Using
National Australia Bank
Decryption for Mastercard

clientReferenceInformation.code
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.type
paymentInformation.fluidData.descriptor
Set this field to
RklEPUNPTU1PTi5BUFBMRS5JTkFQUC5QQVlNRU5U
.
paymentInformaton.fluidData.value
Set this field to the Base64-encoded value obtained from the
paymentData
property of the
PKPaymentToken
object.
paymentInformation.tokenizedCard.transactionType
Set this field to
1
.
processingInformation.paymentSolution
Set this field to
001
.

Example:
National Australia Bank
Decryption and Mastercard

Endpoint:
  • Production:
    POST
    https://nabgateway-api.nab.com.au
    /pts/v2/payments
  • Test:
    POST
    https://nabgateway-api-test.nab.com.au
    /pts/v2/payments
Request
{ "clientReferenceInformation": { "code": "1234567890" }, "processingInformation": { "paymentSolution": "001" }, "paymentInformation": { "fluidData": { "value"="eyJkYXRhW5FINWZqVjfkak1NdVNSaE96dWF2ZGVyb2c9PSJ9", "descriptor": "RklEPUNPTU1PTi5BUFBMRS5JTkFQUC5QQVlNRU5U", "encoding": "Base64", }, "tokenizedCard": { "type": "002", "transactionType": "1",
"requestorId": "987654321plokijuhygtfrdeswa"
} }, "orderInformation": { "amountDetails": { "totalAmount": "100.00", "currency": "USD" }, "billTo": { "firstName": "Maya", "lastName": "Lee", "address1": "123 Main St", "locality": "SomeCity", "administrativeArea": "CA", "postalCode": "94404", "country": "US", "email": "[email protected]" } } }
Response for a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6234236182176225003004" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/captures" } }, "clientReferenceInformation": { "code": "1234567890" }, "id": "6234236182176225003004", "orderInformation": { "amountDetails": { "authorizedAmount": "100.00", "currency": "USD" } }, "paymentInformation": { "tokenizedCard": { "expirationYear": "2031", "prefix": "128945", "expirationMonth": "12", "suffix": "2398", "type": "002" }, "card": { "type": "002" } }, "pointOfSaleInformation": { "terminalId": "111111" }, "processingInformation": { "paymentSolution": "001" }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "X", "codeRaw": "I1" } }, "reconciliationId": "75729760OPN67ZFV", "status": "AUTHORIZED", "submitTimeUtc": "2021-06-11T15:00:18Z" }

Authorizations Using
National Australia Bank
Decryption for Visa

This section shows you how to process an authorization using
National Australia Bank
decryption for Visa.

Required Fields for Authorizing a Payment Using
National Australia Bank
Decryption for Visa

clientReferenceInformation.code
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.type
paymentInformation.fluidData.descriptor
Set this field to
RklEPUNPTU1PTi5BUFBMRS5JTkFQUC5QQVlNRU5U
.
paymentInformaton.fluidData.value
Set this field to the Base64-encoded value obtained from the
paymentData
property of the
PKPaymentToken
object.
paymentInformation.tokenizedCard.transactionType
Set this field to
1
.
processingInformation.paymentSolution
Set this field to
001
.

REST Example:
National Australia Bank
Decryption for Visa

Endpoint:
  • Production:
    POST
    https://nabgateway-api.nab.com.au
    /pts/v2/payments
  • Test:
    POST
    https://nabgateway-api-test.nab.com.au
    /pts/v2/payments
Request
{ "clientReferenceInformation": { "code": "1234567890" }, "processingInformation": { "paymentSolution": "001" }, "paymentInformation": { "fluidData": { "value"="eyJkYXRhW5FINWZqVjfkak1NdVNSaE96dWF2ZGVyb2c9PSJ9", "descriptor": "RklEPUNPTU1PTi5BUFBMRS5JTkFQUC5QQVlNRU5U", "encoding": "Base64", }, "tokenizedCard": { "type": "001", "transactionType": "1",
"requestorId": "987654321plokijuhygtfrdeswa"
} }, "orderInformation": { "amountDetails": { "totalAmount": "100.00", "currency": "USD" }, "billTo": { "firstName": "Maya", "lastName": "Lee", "address1": "123 Main St", "locality": "SomeCity", "administrativeArea": "CA", "postalCode": "94404", "country": "US", "email": "[email protected]" } } }
Response for a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6234236182176225003004" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/captures" } }, "clientReferenceInformation": { "code": "1234567890" }, "id": "6234236182176225003004", "orderInformation": { "amountDetails": { "authorizedAmount": "100.00", "currency": "USD" } }, "paymentInformation": { "tokenizedCard": { "expirationYear": "2031", "prefix": "411111", "expirationMonth": "12", "suffix": "1111", "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "terminalId": "111111" }, "processingInformation": { "paymentSolution": "001" }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "X", "codeRaw": "I1" } }, "reconciliationId": "75729760OPN67ZFV", "status": "AUTHORIZED", "submitTimeUtc": "2021-06-11T15:00:18Z" }

Authorizations Using Merchant Decryption for JCB

This section shows you how to process an authorization using merchant decryption for JCB.

Required Fields for Authorizing a Payment Using Merchant Decryption for JCB

clientReferenceInformation.code
consumerAuthenticationInformation.cavv
For a transaction that uses 3-D Secure, set this field to the 3-D Secure cryptogram.
consumerAuthenticationInformation.ecommerceIndicator
For a transaction that does not use 3-D Secure, set this field to the ECI value contained in the Apple Pay response payload.
For a transaction that uses 3-D Secure, set this field to
js
.
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.tokenizedCard.cryptogram
Set this field to the network token cryptogram.
paymentInformation.tokenizedCard.expirationMonth
Set this field to the value from the payment network token expiration month.
paymentInformation.tokenizedCard.expirationYear
Set this field to the value from the payment network token expiration year.
paymentInformation.tokenizedCard.number
Set this field to the payment network token value.
paymentInformation.tokenizedCard.transactionType
Set this field to
1
.
processingInformation.paymentSolution
Set this field to
001
.

REST Example: Merchant Decryption and JCB

Endpoint:
  • Production:
    POST
    https://nabgateway-api.nab.com.au
    /pts/v2/payments
  • Test:
    POST
    https://nabgateway-api-test.nab.com.au
    /pts/v2/payments
Request
{ "clientReferenceInformation": { "code": "1234567890" }, "processingInformation": { "paymentSolution": "001" }, "paymentInformation": { "tokenizedCard": { "number": "128945xxxxxx2398", "expirationMonth": "12", "expirationYear": "2031", "cryptogram": "AceY+igABPs3jdwNaDg3MAACAAA=", "transactionType": "1" "type": "003" } }, "orderInformation": { "amountDetails": { "totalAmount": "100.00", "currency": "USD" }, "billTo": { "firstName": "Maya", "lastName": "Lee", "address1": "123 Main St", "locality": "SomeCity", "administrativeArea": "CA", "postalCode": "94404", "country": "US", "email": "[email protected]" } }, "consumerAuthenticationInformation": { "cavv": "AceY+igABPs3jdwNaDg3MAACAAA=" } }
Response for a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6234236182176225003004" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/captures" } }, "clientReferenceInformation": { "code": "1234567890" }, "id": "6234236182176225003004", "orderInformation": { "amountDetails": { "authorizedAmount": "100.00", "currency": "USD" } }, "paymentInformation": { "tokenizedCard": { "expirationYear": "2031", "prefix": "128945", "expirationMonth": "12", "suffix": "2398", "type": "003" }, "card": { "type": "003" } }, "pointOfSaleInformation": { "terminalId": "111111" }, "processingInformation": { "paymentSolution": "001" }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "X", "codeRaw": "I1" } }, "reconciliationId": "75729760OPN67ZFV", "status": "AUTHORIZED", "submitTimeUtc": "2021-06-11T15:00:18Z" }

Authorizations Using Merchant Decryption for Mastercard

This section shows you how to process an authorization using merchant decryption for Mastercard.

Required Fields for Authorizing a Payment Using Merchant Decryption for Mastercard

clientReferenceInformation.code
consumerAuthenticationInformation.ecommerceIndicator
For a transaction that does not use 3-D Secure, set this field to
internet
.
For a transaction that uses 3-D Secure, set this field to
spa
.
consumerAuthenticationInformation.ucafAuthenticationData
For a transaction that uses 3-D Secure, set this field to the 3-D Secure cryptogram.
consumerAuthenticationInformation.ucafCollectionIndicator
Set this field to
2
.
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.tokenizedCard.cryptogram
Set this field to the network token cryptogram.
paymentInformation.tokenizedCard.expirationMonth
Set this field to the value from the payment network token expiration month.
paymentInformation.tokenizedCard.expirationYear
Set this field to the value from the payment network token expiration year.
paymentInformation.tokenizedCard.number
Set this field to the payment network token value.
paymentInformation.tokenizedCard.requestorId
Set this field to your token requestor id.
paymentInformation.tokenizedCard.transactionType
Set this field to
1
.
processingInformation.paymentSolution
Set this field to
001
.

REST Example: Merchant Decryption and Mastercard

Endpoint:
  • Production:
    POST
    https://nabgateway-api.nab.com.au
    /pts/v2/payments
  • Test:
    POST
    https://nabgateway-api-test.nab.com.au
    /pts/v2/payments
Request
{ "clientReferenceInformation": { "code": "1234567890" }, "processingInformation": { "paymentSolution": "001", "commerceIndicator": "spa" }, "paymentInformation": { "tokenizedCard": { "number": "5432543254325432", "expirationMonth": "12", "expirationYear": "2031", "cryptogram": "ABCDEFabcdefABCDEFabcdef0987654321234567",
requestorId": "987654321plokijuhygtfrdeswa",
"transactionType": "1", "type": "002" } }, "orderInformation": { "amountDetails": { "totalAmount": "100.00", "currency": "USD" }, "billTo": { "firstName": "Maya", "lastName": "Lee", "address1": "123 Main St", "locality": "SomeCity", "administrativeArea": "CA", "postalCode": "94404", "country": "US", "email": "[email protected]" } }, "consumerAuthenticationInformation": { "ucafAuthenticationData": "ABCDEFabcdefABCDEFabcdef0987654321234567", "ucafCollectionIndicator": "2" } }
Response for a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6234236182176225003004" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/captures" } }, "clientReferenceInformation": { "code": "1234567890" }, "id": "6234236182176225003004", "orderInformation": { "amountDetails": { "authorizedAmount": "100.00", "currency": "USD" } }, "paymentInformation": { "tokenizedCard": { "expirationYear": "2031", "prefix": "543254", "expirationMonth": "12", "suffix": "5432", "type": "002" }, "card": { "type": "002" } }, "pointOfSaleInformation": { "terminalId": "111111" }, "processingInformation": { "paymentSolution": "001" }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "X", "codeRaw": "I1" } }, "reconciliationId": "75729760OPN67ZFV", "status": "AUTHORIZED", "submitTimeUtc": "2021-06-11T15:00:18Z" }

Authorizations Using Merchant Decryption for Visa

This section shows you how to process an authorization using merchant decryption for Visa.

Required Fields for Authorizing a Payment Using Merchant Decryption for Visa

clientReferenceInformation.code
consumerAuthenticationInformation.cavv
For a transaction that uses 3-D Secure, set this field to the 3-D Secure cryptogram.
consumerAuthenticationInformation.ecommerceIndicator
For a transaction that does not use 3-D Secure, set this field to the ECI value contained in the Apple Pay response payload.
For a transaction that uses 3-D Secure, set this field to
5
(
vbv
).
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.tokenizedCard.cryptogram
Set this field to the network token cryptogram.
paymentInformation.tokenizedCard.expirationMonth
Set this field to the value from the payment network token expiration month.
paymentInformation.tokenizedCard.expirationYear
Set this field to the value from the payment network token expiration year.
paymentInformation.tokenizedCard.number
Set this field to the payment network token value.
paymentInformation.tokenizedCard.requestorId
Set this field to your token requestor id.
paymentInformation.tokenizedCard.transactionType
Set this field to
1
.
processingInformation.paymentSolution
Set this field to
001
.

REST Example: Merchant Decryption and Visa

Endpoint:
  • Production:
    POST
    https://nabgateway-api.nab.com.au
    /pts/v2/payments
  • Test:
    POST
    https://nabgateway-api-test.nab.com.au
    /pts/v2/payments
Request
{ "clientReferenceInformation": { "code": "1234567890" }, "processingInformation": { "paymentSolution": "001", "commerceIndicator": "internet" }, "paymentInformation": { "tokenizedCard": { "number": "4111111111111111", "expirationMonth": "12", "expirationYear": "2031", "cryptogram": "AceY+igABPs3jdwNaDg3MAACAAA=", "transactionType": "1" "type": "001"
, "requestorId": "987654321plokijuhygtfrdeswa"
} }, "orderInformation": { "amountDetails": { "totalAmount": "100.00", "currency": "USD" }, "billTo": { "firstName": "Maya", "lastName": "Lee", "address1": "123 Main St", "locality": "SomeCity", "administrativeArea": "CA", "postalCode": "94404", "country": "US", "email": "[email protected]" } }, "consumerAuthenticationInformation": { "cavv": "AceY+igABPs3jdwNaDg3MAACAAA=" } }
Response for a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6234236182176225003004" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/captures" } }, "clientReferenceInformation": { "code": "1234567890" }, "id": "6234236182176225003004", "orderInformation": { "amountDetails": { "authorizedAmount": "100.00", "currency": "USD" } }, "paymentInformation": { "tokenizedCard": { "expirationYear": "2031", "prefix": "411111", "expirationMonth": "12",
requestorId": "987654321plokijuhygtfrdeswa",
"suffix": "1111", "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "terminalId": "111111" }, "processingInformation": { "paymentSolution": "001" }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "X", "codeRaw": "I1" } }, "reconciliationId": "75729760OPN67ZFV", "status": "AUTHORIZED", "submitTimeUtc": "2021-06-11T15:00:18Z" }

Follow-on Services

This section provides information about and procedures for requesting these follow-on services:
  • Authorization Reversal:
    A follow-on service that uses the request ID returned from the previous authorization. An authorization reversal releases the hold that the authorization placed on the customer’s credit card funds. Use this service to reverse an unnecessary or undesired authorization.
  • Capture:
    A follow-on service that uses the request ID returned from the previous authorization. The request ID links the capture to the authorization. This service transfers funds from the customer’s account to your bank and usually takes two to four days to complete.
  • Sale:
    A sale is a bundled authorization and capture. Request the authorization and capture services at the same time.
    National Australia Bank
    processes the capture immediately.

Authorization Reversal

This section describes how to process an authorization reversal.
Reversing an authorization releases the hold on the customer’s payment card funds that the issuing bank placed when processing the authorization.

Endpoint

Production:
POST
https://nabgateway-api.nab.com.au
/pts/v2/payments/{id}/reversals
Test:
POST
https://nabgateway-api-test.nab.com.au
/pts/v2/payments/{id}/reversals
The
{id}
is the transaction ID returned in the authorization response.

Required Fields for Processing an Authorization Reversal

id
Set the
id
URL parameter to the transaction ID that was included in the authorization response message.
clientReferenceInformation.code
clientReferenceInformation.partner.thirdPartyCertificationNumber
National Australia Bank
provides the value for this field.
orderInformation.amountDetails.currency
reversalInformation.amountDetails.totalAmount
The amount of the reversal must be the same as the authorization amount that was included in the authorization response message. Do not use the amount that was requested in the authorization request message.

REST Example: Processing an Authorization Reversal

Endpoint

Production:
POST
https://nabgateway-api.nab.com.au
/pts/v2/payments/{id}/reversals
Test:
POST
https://nabgateway-api-test.nab.com.au
/pts/v2/payments/{id}/reversals
For this example, the
{id}
portion of the URL is set to the transaction ID included in the authorization you want to void:
6869458685866438003955
Request
{ "clientReferenceInformation": { "code": "test123", "partner": { "thirdPartyCertificationNumber": "testTPCN" } } "orderInformation" : { "amountDetails" : { "currency" : "USD" } }, "reversalInformation" : { "amountDetails" : { "totalAmount" : "100.00" } } }
Response to a Successful Request
{ "_links" : { "self" : { "method" : "GET", "href" : "/pts/v2/reversals/6869460219566537303955" } }, "clientReferenceInformation" : { "code" : "RTS-Auth-Reversal" }, "id" : "6869460219566537303955", "orderInformation" : { "amountDetails" : { "currency" : "USD" } }, "processorInformation" : { "responseCode" : "200" }, "reconciliationId" : "82kBK3qDNtls", "reversalAmountDetails" : { "reversedAmount" : "100.00", "currency" : "USD" }, "status" : "REVERSED", "submitTimeUtc" : "2023-06-16T20:07:02Z" }

Capture

This section describes how to capture an authorized transaction.

Endpoint

Production:
POST
https://nabgateway-api.nab.com.au
/pts/v2/payments/
{id}
/captures
Test:
POST
https://nabgateway-api-test.nab.com.au
/pts/v2/payments/
{id}
/captures
The
{id}
is the transaction ID returned in the authorization response.

Required Fields for Capturing an Authorization

clientReferenceInformation.code
Field value maps from the original authorization, sale, or credit transaction.
clientReferenceInformation.partner.thirdPartyCertificationNumber
National Australia Bank
provides the value for this field.
orderInformation.amountDetails.currency
orderInformation.amountDetails.totalAmount

REST Example: Capturing an Authorization

Endpoint:
  • Production:
    POST
    https://nabgateway-api.nab.com.au
    /pts/v2/payments/
    {id}
    /captures
  • Test:
    POST
    https://nabgateway-api-test.nab.com.au
    /pts/v2/payments/
    {id}
    /captures
Request
{ "clientReferenceInformation": { "code": "ABC123", "partner": { "thirdPartyCertificationNumber": "123456789012" } }, "orderInformation": { "amountDetails": { "totalAmount": "100.00", "currency": "EUR" } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/captures/6662994431376681303954/voids" }, "self": { "method": "GET", "href": "/pts/v2/captures/6662994431376681303954" } }, "clientReferenceInformation": { "code": "1666299443215" }, "id": "6662994431376681303954", "orderInformation": { "amountDetails": { "totalAmount": "100.00", "currency": "EUR" } }, "reconciliationId": "66535942B9CGT52U", "status": "PENDING", "submitTimeUtc": "2022-10-20T20:57:23Z" }

Sales

This section shows you how to process a sale transaction.
A sale transaction combines an authorization and a capture into a single transaction.

Endpoint

Production:
POST
https://nabgateway-api.nab.com.au
/pts/v2/payments
Test:
POST
https://nabgateway-api-test.nab.com.au
/pts/v2/payments

Required Fields for Processing a Sale

Use these required fields for processing a sale.
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
paymentInformation.card.securityCode
Required only for
VDC National Australia Bank Ltd
.
paymentInformation.card.type
processingInformation.capture
Set to
true
.

REST Example: Processing a Sale

Endpoint:
  • Production:
    POST
    https://nabgateway-api.nab.com.au
    /pts/v2/payments
  • Test:
    POST
    https://nabgateway-api-test.nab.com.au
    /pts/v2/payments
Request
{ "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" : "" }, "amountDetails" : { "totalAmount" : "100.00", "currency" : "usd" } }, "paymentInformation" : { "card" : { "expirationYear" : "2031", "number" : "4111111111111111", "expirationMonth" : "12", "type" : "001"
,
"securityCode": "999" <!-- Required only for
VDC National Australia Bank Ltd
. -->
} } }
Response to a Successful Request
{ "_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" : "2022-03-28T20:46:47Z" }

Authorizations Using
National Australia Bank
Decryption for JCB

This section provides the information you need in order to process an authorization using
National Australia Bank
decryption for JCB.

Required Fields for Authorizing a Payment Using
National Australia Bank
Decryption for JCB

clientReferenceInformation.code
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.type
paymentInformation.fluidData.descriptor
Set this field to
RklEPUNPTU1PTi5BUFBMRS5JTkFQUC5QQVlNRU5U
.
paymentInformaton.fluidData.value
Set this field to the Base64-encoded value obtained from the
paymentData
property of the
PKPaymentToken
object.
paymentInformation.tokenizedCard.transactionType
Set this field to
1
.
paymentInformation.tokenizedCard.requestorId
Set this field to your token requestor id.
Required for
VDC National Australia Bank Ltd
.
processingInformation.paymentSolution
Set this field to
001
.

Optional Fields for Authorizing a Payment for Apple Pay Transactions

You can include these optional fields in a request for an authorization:
paymentInformation.tokenizedCard.assuranceMethod
Set this field to the tokenization confidence level specified by the method used to verify the account or authenticate the cardholder. The value is assigned by the token service provider.

REST Example:
National Australia Bank
Decryption and JCB

Endpoint:
  • Production:
    POST
    https://nabgateway-api.nab.com.au
    /pts/v2/payments
  • Test:
    POST
    https://nabgateway-api-test.nab.com.au
    /pts/v2/payments
Request
{ "clientReferenceInformation": { "code": "1234567890" }, "processingInformation": { "paymentSolution": "001" }, "paymentInformation": { "fluidData": { "value"="eyJkYXRhW5FINWZqVjfkak1NdVNSaE96dWF2ZGVyb2c9PSJ9", "descriptor": "RklEPUNPTU1PTi5BUFBMRS5JTkFQUC5QQVlNRU5U", "encoding": "Base64", }, "tokenizedCard": { "type": "007", "transactionType": "1", } }, "orderInformation": { "amountDetails": { "totalAmount": "100.00", "currency": "USD" }, "billTo": { "firstName": "Maya", "lastName": "Lee", "address1": "123 Main St", "locality": "SomeCity", "administrativeArea": "CA", "postalCode": "94404", "country": "US", "email": "[email protected]" } } }
Response to a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6234236182176225003004" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/captures" } }, "clientReferenceInformation": { "code": "1234567890" }, "id": "6234236182176225003004", "orderInformation": { "amountDetails": { "authorizedAmount": "100.00", "currency": "USD" } }, "paymentInformation": { "tokenizedCard": { "expirationYear": "2031", "prefix": "128945", "expirationMonth": "12", "suffix": "2398", "type": "007" }, "card": { "type": "007" } }, "pointOfSaleInformation": { "terminalId": "111111" }, "processingInformation": { "paymentSolution": "001" }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "X", "codeRaw": "I1" } }, "reconciliationId": "75729760OPN67ZFV", "status": "AUTHORIZED", "submitTimeUtc": "2021-06-11T15:00:18Z" }

Authorizations Using
National Australia Bank
Decryption for mada

This section provides the information you need in order to process an authorization using
National Australia Bank
decryption for mada debit cards and mada prepaid cards issued in the Kingdom of Saudi Arabia. Apple Pay transactions on these cards are supported on the mada Pay mobile app and for
VDC National Australia Bank Ltd
only.

Required Fields for Authorizing a Payment Using
National Australia Bank
Decryption for mada

clientReferenceInformation.code
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.cardType
Set this field to
060
.
paymentInformation.card.type
paymentInformation.fluidData.descriptor
Set this field to
RklEPUNPTU1PTi5BUFBMRS5JTkFQUC5QQVlNRU5U
.
paymentInformaton.fluidData.value
Set this field to the Base64-encoded value obtained from the
paymentData
property of the
PKPaymentToken
object.
paymentInformation.tokenizedCard.transactionType
Set this field to
1
.
processingInformation.paymentSolution
Set this field to
001
.

REST Example:
National Australia Bank
Decryption for mada

Endpoint:
  • Production:
    POST
    https://nabgateway-api.nab.com.au
    /pts/v2/payments
  • Test:
    POST
    https://nabgateway-api-test.nab.com.au
    /pts/v2/payments
Request
{ "clientReferenceInformation": { "code": "1234567890" }, "processingInformation": { "paymentSolution": "001" }, "paymentInformation": { "card": { "cardType": "060" }, "fluidData": { "value"="eyJkYXRhW5FINWZqVjfkak1NdVNSaE96dWF2ZGVyb2c9PSJ9", "descriptor": "RklEPUNPTU1PTi5BUFBMRS5JTkFQUC5QQVlNRU5U", "encoding": "Base64", }, "tokenizedCard": { "type": "002", "transactionType": "1", "requestorId": "987654321plokijuhygtfrdeswa" } }, "orderInformation": { "amountDetails": { "totalAmount": "100.00", "currency": "USD" }, "billTo": { "firstName": "Maya", "lastName": "Lee", "address1": "123 Main St", "locality": "SomeCity", "administrativeArea": "CA", "postalCode": "94404", "country": "US", "email": "[email protected]" } } }
Response to a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6234236182176225003004" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/captures" } }, "clientReferenceInformation": { "code": "1234567890" }, "id": "6234236182176225003004", "orderInformation": { "amountDetails": { "authorizedAmount": "100.00", "currency": "USD" } }, "paymentInformation": { "tokenizedCard": { "expirationYear": "2031", "prefix": "411111", "expirationMonth": "12", "suffix": "1111", "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "terminalId": "111111" }, "processingInformation": { "paymentSolution": "001" }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "X", "codeRaw": "I1" } }, "reconciliationId": "75729760OPN67ZFV", "status": "AUTHORIZED", "submitTimeUtc": "2021-06-11T15:00:18Z" }

Authorizations Using
National Australia Bank
Decryption for Mastercard

This section provides the information you need in order to process an authorization using
National Australia Bank
decryption for Mastercard.

Required Fields for Authorizing a Payment Using
National Australia Bank
Decryption for Mastercard

clientReferenceInformation.code
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.type
paymentInformation.fluidData.descriptor
Set this field to
RklEPUNPTU1PTi5BUFBMRS5JTkFQUC5QQVlNRU5U
.
paymentInformaton.fluidData.value
Set this field to the Base64-encoded value obtained from the
paymentData
property of the
PKPaymentToken
object.
paymentInformation.tokenizedCard.transactionType
Set this field to
1
.
paymentInformation.tokenizedCard.requestorId
Set this field to your token requestor id.
Required for
VDC National Australia Bank Ltd
.
processingInformation.paymentSolution
Set this field to
001
.

Example:
National Australia Bank
Decryption and Mastercard

Endpoint:
  • Production:
    POST
    https://nabgateway-api.nab.com.au
    /pts/v2/payments
  • Test:
    POST
    https://nabgateway-api-test.nab.com.au
    /pts/v2/payments
Request
{ "clientReferenceInformation": { "code": "1234567890" }, "processingInformation": { "paymentSolution": "001" }, "paymentInformation": { "fluidData": { "value"="eyJkYXRhW5FINWZqVjfkak1NdVNSaE96dWF2ZGVyb2c9PSJ9", "descriptor": "RklEPUNPTU1PTi5BUFBMRS5JTkFQUC5QQVlNRU5U", "encoding": "Base64", }, "tokenizedCard": { "type": "002", "transactionType": "1" } }, "orderInformation": { "amountDetails": { "totalAmount": "100.00", "currency": "USD" }, "billTo": { "firstName": "Maya", "lastName": "Lee", "address1": "123 Main St", "locality": "SomeCity", "administrativeArea": "CA", "postalCode": "94404", "country": "US", "email": "[email protected]" } } }
Response to a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6234236182176225003004" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/captures" } }, "clientReferenceInformation": { "code": "1234567890" }, "id": "6234236182176225003004", "orderInformation": { "amountDetails": { "authorizedAmount": "100.00", "currency": "USD" } }, "paymentInformation": { "tokenizedCard": { "expirationYear": "2031", "prefix": "128945", "expirationMonth": "12", "suffix": "2398", "type": "002" }, "card": { "type": "002" } }, "pointOfSaleInformation": { "terminalId": "111111" }, "processingInformation": { "paymentSolution": "001" }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "X", "codeRaw": "I1" } }, "reconciliationId": "75729760OPN67ZFV", "status": "AUTHORIZED", "submitTimeUtc": "2021-06-11T15:00:18Z" }

Authorizations Using
National Australia Bank
Decryption for Visa

This section provides the information you need in order to process an authorization using
National Australia Bank
decryption for Visa.

Required Fields for Authorizing a Payment Using
National Australia Bank
Decryption for Visa

clientReferenceInformation.code
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.type
paymentInformation.fluidData.descriptor
Set this field to
RklEPUNPTU1PTi5BUFBMRS5JTkFQUC5QQVlNRU5U
.
paymentInformaton.fluidData.value
Set this field to the Base64-encoded value obtained from the
paymentData
property of the
PKPaymentToken
object.
paymentInformation.tokenizedCard.transactionType
Set this field to
1
.
paymentInformation.tokenizedCard.requestorId
Set this field to your token requestor id.
Required for
VDC National Australia Bank Ltd
.
processingInformation.paymentSolution
Set this field to
001
.

REST Example:
National Australia Bank
Decryption for Visa

Endpoint:
  • Production:
    POST
    https://nabgateway-api.nab.com.au
    /pts/v2/payments
  • Test:
    POST
    https://nabgateway-api-test.nab.com.au
    /pts/v2/payments
Request
{ "clientReferenceInformation": { "code": "1234567890" }, "processingInformation": { "paymentSolution": "001" }, "paymentInformation": { "fluidData": { "value"="eyJkYXRhW5FINWZqVjfkak1NdVNSaE96dWF2ZGVyb2c9PSJ9", "descriptor": "RklEPUNPTU1PTi5BUFBMRS5JTkFQUC5QQVlNRU5U", "encoding": "Base64", }, "tokenizedCard": { "type": "001", "transactionType": "1"
, "requestorId": "987654321plokijuhygtfrdeswa"
} }, "orderInformation": { "amountDetails": { "totalAmount": "100.00", "currency": "USD" }, "billTo": { "firstName": "Maya", "lastName": "Lee", "address1": "123 Main St", "locality": "SomeCity", "administrativeArea": "CA", "postalCode": "94404", "country": "US", "email": "[email protected]" } } }
Response to a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6234236182176225003004" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/captures" } }, "clientReferenceInformation": { "code": "1234567890" }, "id": "6234236182176225003004", "orderInformation": { "amountDetails": { "authorizedAmount": "100.00", "currency": "USD" } }, "paymentInformation": { "tokenizedCard": { "expirationYear": "2031", "prefix": "411111", "expirationMonth": "12", "suffix": "1111", "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "terminalId": "111111" }, "processingInformation": { "paymentSolution": "001" }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "X", "codeRaw": "I1" } }, "reconciliationId": "75729760OPN67ZFV", "status": "AUTHORIZED", "submitTimeUtc": "2021-06-11T15:00:18Z" }

Authorizations Using Merchant Decryption for JCB

This section provides the information you need in order to process an authorization using merchant decryption for JCB.

Required Fields for Authorizing a Payment Using Merchant Decryption for JCB

clientReferenceInformation.code
consumerAuthenticationInformation.cavv
Set this field to the network token cryptogram.
consumerAuthenticationInformation.ecommerceIndicator
Set this field to the ECI value contained in the Apple Pay response payload.
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.tokenizedCard.cryptogram
Set this field to the network token cryptogram.
paymentInformation.tokenizedCard.expirationMonth
Set this field to the value from the payment network token expiration month.
paymentInformation.tokenizedCard.expirationYear
Set this field to the value from the payment network token expiration year.
paymentInformation.tokenizedCard.number
Set this field to the payment network token value.
paymentInformation.tokenizedCard.transactionType
Set this field to
1
.
processingInformation.paymentSolution
Set this field to
001
.

REST Example: Merchant Decryption and JCB

Endpoint:
  • Production:
    POST
    https://nabgateway-api.nab.com.au
    /pts/v2/payments
  • Test:
    POST
    https://nabgateway-api-test.nab.com.au
    /pts/v2/payments
Request
{ "clientReferenceInformation": { "code": "1234567890" }, "processingInformation": { "paymentSolution": "001" }, "paymentInformation": { "tokenizedCard": { "number": "128945xxxxxx2398", "expirationMonth": "12", "expirationYear": "2031", "cryptogram": "AceY+igABPs3jdwNaDg3MAACAAA=", "transactionType": "1" "type": "003" } }, "orderInformation": { "amountDetails": { "totalAmount": "100.00", "currency": "USD" }, "billTo": { "firstName": "Maya", "lastName": "Lee", "address1": "123 Main St", "locality": "SomeCity", "administrativeArea": "CA", "postalCode": "94404", "country": "US", "email": "[email protected]" } }, "consumerAuthenticationInformation": { "cavv": "AceY+igABPs3jdwNaDg3MAACAAA=" } }
Response to a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6234236182176225003004" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/captures" } }, "clientReferenceInformation": { "code": "1234567890" }, "id": "6234236182176225003004", "orderInformation": { "amountDetails": { "authorizedAmount": "100.00", "currency": "USD" } }, "paymentInformation": { "tokenizedCard": { "expirationYear": "2031", "prefix": "128945", "expirationMonth": "12", "suffix": "2398", "type": "003" }, "card": { "type": "003" } }, "pointOfSaleInformation": { "terminalId": "111111" }, "processingInformation": { "paymentSolution": "001" }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "X", "codeRaw": "I1" } }, "reconciliationId": "75729760OPN67ZFV", "status": "AUTHORIZED", "submitTimeUtc": "2021-06-11T15:00:18Z" }

Authorizations Using Merchant Decryption for mada

This section provides the information you need in order to process an authorization using merchant decryption for mada debit cards and mada prepaid cards issued in the Kingdom of Saudi Arabia. Apple Pay transactions on these cards are supported on the mada Pay mobile app and for
VDC National Australia Bank Ltd
only.

Required Fields for Authorizing a Payment Using Merchant Decryption for mada

clientReferenceInformation.code
consumerAuthenticationInformation.cavv
Set this field to the network token cryptogram.
consumerAuthenticationInformation.ecommerceIndicator
This value should reflect the ECI value returned in the Apple Pay response payload.
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.cardType
Set this field to
060
.
paymentInformation.tokenizedCard.cryptogram
Set this field to the network token cryptogram.
paymentInformation.tokenizedCard.expirationMonth
Set this field to the value from the payment network token expiration month.
paymentInformation.tokenizedCard.expirationYear
Set this field to the value from the payment network token expiration year.
paymentInformation.tokenizedCard.number
Set this field to the payment network token value.
paymentInformation.tokenizedCard.requestorId
Set this field to your token requestor id.
Required for
VDC National Australia Bank Ltd
.
paymentInformation.tokenizedCard.transactionType
Set this field to
1
.
processingInformation.paymentSolution
Set this field to
001
.

REST Example: Merchant Decryption and mada

Endpoint:
  • Production:
    POST
    https://nabgateway-api.nab.com.au
    /pts/v2/payments
  • Test:
    POST
    https://nabgateway-api-test.nab.com.au
    /pts/v2/payments
Request
{ "clientReferenceInformation": { "code": "1234567890" }, "processingInformation": { "paymentSolution": "001", "commerceIndicator": "internet" }, "paymentInformation": { "card": { "cardType": "060" }, "tokenizedCard": { "number": "4111111111111111", "expirationMonth": "12", "expirationYear": "2031", "cryptogram": "AceY+igABPs3jdwNaDg3MAACAAA=", "transactionType": "1" "type": "060", "requestorId": "987654321plokijuhygtfrdeswa" } }, "orderInformation": { "amountDetails": { "totalAmount": "100.00", "currency": "USD" }, "billTo": { "firstName": "Maya", "lastName": "Lee", "address1": "123 Main St", "locality": "SomeCity", "administrativeArea": "CA", "postalCode": "94404", "country": "US", "email": "[email protected]" } }, "consumerAuthenticationInformation": { "cavv": "AceY+igABPs3jdwNaDg3MAACAAA=" } }
Response to a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6234236182176225003004" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/captures" } }, "clientReferenceInformation": { "code": "1234567890" }, "id": "6234236182176225003004", "orderInformation": { "amountDetails": { "authorizedAmount": "100.00", "currency": "USD" } }, "paymentInformation": { "tokenizedCard": { "expirationYear": "2031", "prefix": "411111", "expirationMonth": "12", "requestorId": "987654321plokijuhygtfrdeswa", "suffix": "1111", "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "terminalId": "111111" }, "processingInformation": { "paymentSolution": "001" }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "X", "codeRaw": "I1" } }, "reconciliationId": "75729760OPN67ZFV", "status": "AUTHORIZED", "submitTimeUtc": "2021-06-11T15:00:18Z" }

Authorizations Using Merchant Decryption for Mastercard

This section provides the information you need in order to process an authorization using merchant decryption for Mastercard.

Required Fields for Authorizing a Payment Using Merchant Decryption for Mastercard

clientReferenceInformation.code
consumerAuthenticationInformation.ecommerceIndicator
Set this field to
internet
.
consumerAuthenticationInformation.ucafAuthenticationData
Set this field to the network token cryptogram.
consumerAuthenticationInformation.ucafCollectionIndicator
Set this field to
2
.
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.tokenizedCard.cryptogram
Set this field to the network token cryptogram.
paymentInformation.tokenizedCard.expirationMonth
Set this field to the value from the payment network token expiration month.
paymentInformation.tokenizedCard.expirationYear
Set this field to the value from the payment network token expiration year.
paymentInformation.tokenizedCard.number
Set this field to the payment network token value.
paymentInformation.tokenizedCard.requestorId
Set this field to your token requestor id.
Required for
VDC National Australia Bank Ltd
.
paymentInformation.tokenizedCard.transactionType
Set this field to
1
.
processingInformation.paymentSolution
Set this field to
001
.

REST Example: Merchant Decryption and Mastercard

Endpoint:
  • Production:
    POST
    https://nabgateway-api.nab.com.au
    /pts/v2/payments
  • Test:
    POST
    https://nabgateway-api-test.nab.com.au
    /pts/v2/payments
Request
{ "clientReferenceInformation": { "code": "1234567890" }, "processingInformation": { "paymentSolution": "001", "commerceIndicator": "spa" }, "paymentInformation": { "tokenizedCard": { "number": "5432543254325432", "expirationMonth": "12", "expirationYear": "2031", "cryptogram": "ABCDEFabcdefABCDEFabcdef0987654321234567",
"requestorId": "987654321plokijuhygtfrdeswa",
"transactionType": "1", "type": "002" } }, "orderInformation": { "amountDetails": { "totalAmount": "100.00", "currency": "USD" }, "billTo": { "firstName": "Maya", "lastName": "Lee", "address1": "123 Main St", "locality": "SomeCity", "administrativeArea": "CA", "postalCode": "94404", "country": "US", "email": "[email protected]" } }, "consumerAuthenticationInformation": { "ucafAuthenticationData": "ABCDEFabcdefABCDEFabcdef0987654321234567", "ucafCollectionIndicator": "2" } }
Response to a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6234236182176225003004" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/captures" } }, "clientReferenceInformation": { "code": "1234567890" }, "id": "6234236182176225003004", "orderInformation": { "amountDetails": { "authorizedAmount": "100.00", "currency": "USD" } }, "paymentInformation": { "tokenizedCard": { "expirationYear": "2031", "prefix": "543254", "expirationMonth": "12", "suffix": "5432", "type": "002" }, "card": { "type": "002" } }, "pointOfSaleInformation": { "terminalId": "111111" }, "processingInformation": { "paymentSolution": "001" }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "X", "codeRaw": "I1" } }, "reconciliationId": "75729760OPN67ZFV", "status": "AUTHORIZED", "submitTimeUtc": "2021-06-11T15:00:18Z" }

Authorizations Using Merchant Decryption for Visa

This section provides the information you need in order to process an authorization using merchant decryption for Visa.

Required Fields for Authorizing a Payment Using Merchant Decryption for Visa

clientReferenceInformation.code
consumerAuthenticationInformation.cavv
Set this field to the network token cryptogram.
consumerAuthenticationInformation.ecommerceIndicator
Set this field to the ECI value contained in the Apple Pay response payload.
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.tokenizedCard.cryptogram
Set this field to the network token cryptogram.
paymentInformation.tokenizedCard.requestorID
Required only for
VDC National Australia Bank Ltd
.
paymentInformation.tokenizedCard.expirationMonth
Set this field to the value from the payment network token expiration month.
paymentInformation.tokenizedCard.expirationYear
Set this field to the value from the payment network token expiration year.
paymentInformation.tokenizedCard.number
Set this field to the payment network token value.
paymentInformation.tokenizedCard.requestorId
Set this field to your token requestor id.
Required for
VDC National Australia Bank Ltd
.
paymentInformation.tokenizedCard.transactionType
Set this field to
1
.
processingInformation.paymentSolution
Set this field to
001
.

REST Example: Merchant Decryption and Visa

Endpoint:
  • Production:
    POST
    https://nabgateway-api.nab.com.au
    /pts/v2/payments
  • Test:
    POST
    https://nabgateway-api-test.nab.com.au
    /pts/v2/payments
Request
{ "clientReferenceInformation": { "code": "1234567890" }, "processingInformation": { "paymentSolution": "001", "commerceIndicator": "internet" }, "paymentInformation": { "tokenizedCard": { "number": "4111111111111111", "expirationMonth": "12", "expirationYear": "2031", "cryptogram": "AceY+igABPs3jdwNaDg3MAACAAA=", "transactionType": "1" "type": "001"
, "requestorId": "987654321plokijuhygtfrdeswa"
} }, "orderInformation": { "amountDetails": { "totalAmount": "100.00", "currency": "USD" }, "billTo": { "firstName": "Maya", "lastName": "Lee", "address1": "123 Main St", "locality": "SomeCity", "administrativeArea": "CA", "postalCode": "94404", "country": "US", "email": "[email protected]" } }, "consumerAuthenticationInformation": { "cavv": "AceY+igABPs3jdwNaDg3MAACAAA=" } }
Response to a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6234236182176225003004" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6234236182176225003004/captures" } }, "clientReferenceInformation": { "code": "1234567890" }, "id": "6234236182176225003004", "orderInformation": { "amountDetails": { "authorizedAmount": "100.00", "currency": "USD" } }, "paymentInformation": { "tokenizedCard": { "expirationYear": "2031", "prefix": "411111", "expirationMonth": "12",
requestorId": "987654321plokijuhygtfrdeswa",
"suffix": "1111", "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "terminalId": "111111" }, "processingInformation": { "paymentSolution": "001" }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "X", "codeRaw": "I1" } }, "reconciliationId": "75729760OPN67ZFV", "status": "AUTHORIZED", "submitTimeUtc": "2021-06-11T15:00:18Z" }

Authorization Reversals

This section provides the information you need in order to process an authorization reversal.
Reversing an authorization releases the hold on the customer’s payment card funds that the issuing bank placed when processing the authorization.

Endpoint

Production:
POST
https://nabgateway-api.nab.com.au
/pts/v2/payments/{id}/reversals
Test:
POST
https://nabgateway-api-test.nab.com.au
/pts/v2/payments/{id}/reversals
The
{id}
is the transaction ID returned in the authorization response.

Required Fields for Processing an Authorization Reversal

clientReferenceInformation.code
clientReferenceInformation.partner.thirdPartyCertificationNumber
National Australia Bank
provides the value for this field.
id
Set the
id
URL parameter to the transaction ID that was included in the authorization response message.
orderInformation.amountDetails.currency
reversalInformation.amountDetails.totalAmount
The amount of the reversal must be the same as the authorization amount that was included in the authorization response message. Do not use the amount that was requested in the authorization request message.

REST Example: Processing an Authorization Reversal

Endpoint

Production:
POST
https://nabgateway-api.nab.com.au
/pts/v2/payments/{id}/reversals
Test:
POST
https://nabgateway-api-test.nab.com.au
/pts/v2/payments/{id}/reversals
For this example, the
{id}
portion of the URL is set to the transaction ID included in the authorization you want to void:
6869458685866438003955
Request
{ "clientReferenceInformation": { "code": "test123", "partner": { "thirdPartyCertificationNumber": "testTPCN" } } "orderInformation" : { "amountDetails" : { "currency" : "USD" } }, "reversalInformation" : { "amountDetails" : { "totalAmount" : "100.00" } } }
Response to a Successful Request
{ "_links" : { "self" : { "method" : "GET", "href" : "/pts/v2/reversals/6869460219566537303955" } }, "clientReferenceInformation" : { "code" : "RTS-Auth-Reversal" }, "id" : "6869460219566537303955", "orderInformation" : { "amountDetails" : { "currency" : "USD" } }, "processorInformation" : { "responseCode" : "200" }, "reconciliationId" : "82kBK3qDNtls", "reversalAmountDetails" : { "reversedAmount" : "100.00", "currency" : "USD" }, "status" : "REVERSED", "submitTimeUtc" : "2023-06-16T20:07:02Z" }

Captures

This section provides the information you need in order to capture an authorized transaction.

Endpoint

Production:
POST
https://nabgateway-api.nab.com.au
/pts/v2/payments/
{id}
/captures
Test:
POST
https://nabgateway-api-test.nab.com.au
/pts/v2/payments/
{id}
/captures
The
{id}
is the transaction ID returned in the authorization response.

REST Example: Capturing an Authorization

Endpoint:
  • Production:
    POST
    https://nabgateway-api.nab.com.au
    /pts/v2/payments/
    {id}
    /captures
  • Test:
    POST
    https://nabgateway-api-test.nab.com.au
    /pts/v2/payments/
    {id}
    /captures
Request
{ "clientReferenceInformation": { "code": "ABC123", "partner": { "thirdPartyCertificationNumber": "123456789012" } }, "orderInformation": { "amountDetails": { "totalAmount": "100.00", "currency": "EUR" } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/captures/6662994431376681303954/voids" }, "self": { "method": "GET", "href": "/pts/v2/captures/6662994431376681303954" } }, "clientReferenceInformation": { "code": "1666299443215" }, "id": "6662994431376681303954", "orderInformation": { "amountDetails": { "totalAmount": "100.00", "currency": "EUR" } }, "reconciliationId": "66535942B9CGT52U", "status": "PENDING", "submitTimeUtc": "2022-10-20T20:57:23Z" }

Required Fields for Capturing an Authorization

clientReferenceInformation.code
Field value maps from the original authorization, sale, or credit transaction.
clientReferenceInformation.partner.thirdPartyCertificationNumber
National Australia Bank
provides the value for this field.
orderInformation.amountDetails.currency
orderInformation.amountDetails.totalAmount

Sale

This section provides the information you need in order to process a sale transaction.
A sale transaction combines an authorization and a capture into a single transaction.

Endpoint

Production:
POST
https://nabgateway-api.nab.com.au
/pts/v2/payments
Test:
POST
https://nabgateway-api-test.nab.com.au
/pts/v2/payments

REST Example: Processing a Sale

Endpoint:
  • Production:
    POST
    https://nabgateway-api.nab.com.au
    /pts/v2/payments
  • Test:
    POST
    https://nabgateway-api-test.nab.com.au
    /pts/v2/payments
Response to a Successful Request
{ "_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" : "2022-03-28T20:46:47Z" }

Required Fields for Processing a Sale

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
paymentInformation.card.securityCode
paymentInformation.card.type
processingInformation.capture
Set to
true
.

Authorize an Apple Pay Payment with
VDC NAB
Decryption

The topics in this section shows you how to authorize an Apple Pay payment transaction with the
VDC NAB
decryption
implementation of Apple Pay.
IMPORTANT
In the example, the payment being authorized was made using a
Visa card
, and the processor is
VDC National Australia Bank Ltd
.
National Australia Bank
supports the
VDC National Australia Bank Ltd
processor.
For general information about basic authorizations, see the "Standard Payments Processing" section of the .

Basic Steps: Authorizing a Payment with
VDC NAB
Decryption

Follow these steps to request an Apple Pay payment authorization with
VDC NAB
decryption:
  1. Create the request message with the required
    REST
    API fields.
  2. Send the message to one of these endpoints:
    • Production:
      POST
      https://nabgateway-api.nab.com.au
      /pts/v2/payments
    • Test:
      POST
      https://nabgateway-api-test.nab.com.au
      /pts/v2/payments
  3. Verify the response messages to make sure that the request was successful.

    ADDITIONAL INFORMATION

    A 200-level HTTP response code indicates success. See the .

Fields Required to Authorize a Payment with
VDC NAB
Decryption

As a best practice, include these
REST API
fields in your request for an authorization transaction with the
VDC NAB
decryption implementation of Apple Pay.
Depending on your processor, your geographic location, and whether the relaxed address verification system (RAVS) is enabled for your account, some of these fields might not be required. It is your responsibility to determine whether an API field can be omitted from the transaction you are requesting.
For information about tbe relaxed requirements for address data and expiration dates in payment transactions, see the
.
clientReferenceInformation.code
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.fluidData.descriptor
Format of the encrypted payment data.
Set the value to
RklEPUNPTU1PTi5BUFBMRS5JTkFQUC5QQVlNRU5U
for Apple Pay.
paymentInformation.fluidData.encoding
Encoding method used to encrypt the payment data.
Set the value to
Base64
for Apple Pay.
paymentInformation.fluidData.value
Set the value to the encrypted payment data value returned by the Full Wallet request.
processingInformation.paymentSolution
Set the value to
001
to identify Apple Pay as the digital payment solution.

REST Example: Authorize a Payment with
VDC NAB
Decryption

Authorize an Apple Pay Payment with Merchant Decryption

The topics in this section shows you how to authorize an Apple Pay payment transaction with the
merchant decryption
implementation of Apple Pay.
IMPORTANT
In the example, the payment being authorized was made using a
Visa card
, and the processor is
VDC National Australia Bank Ltd
.
National Australia Bank
supports the
VDC National Australia Bank Ltd
processor.
For general information about basic authorizations, see the "Standard Payments Processing" section of the .

Basic Steps: Authorizing a Payment with Merchant Decryption

  1. Follow these steps to request an Apple Pay payment authorization with merchant decryption:
  2. Create the request message with the required
    REST
    API fields.
  3. Send the message to one of these endpoints:
    • Production:
      POST
      https://nabgateway-api.nab.com.au
      /pts/v2/payments
    • Test:
      POST
      https://nabgateway-api-test.nab.com.au
      /pts/v2/payments
  4. Verify the response messages to make sure that the request was successful.

    ADDITIONAL INFORMATION

    A 200-level HTTP response code indicates success. See the .

Fields Required to Authorize a Payment with Merchant Decryption

As a best practice, include these
REST API
fields in your request for an authorization transaction with the
VDC NAB
decryption implementation of Apple Pay.
Depending on your processor, your geographic location, and whether the relaxed address verification system (RAVS) is enabled for your account, some of these fields might not be required. It is your responsibility to determine whether an API field can be omitted from the transaction you are requesting.
For information about tbe relaxed requirements for address data and expiration dates in payment transactions, see the
.
clientReferenceInformation.code
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.tokenizedCard.cryptogram
Token authentication verification value cryptogram.
The value for this field must be a 28-character, Base64-encoded string (the encoding method for Apple Pay transactions).
paymentInformation.tokenizedCard.expirationMonth
Set the value to month in which the token expires. Format:
MM
Possible values:
01
through
12
.
paymentInformation.tokenizedCard.expirationYear
Set the value to the year in which the token expires. Format:
yyyy
.
paymentInformation.tokenizedCard.number
Set the value to customer's payment network token value that contains the customer's credit card number.
For
VDC National Australia Bank Ltd
, set this field to the value that indicates the type of transaction that provided the payment network token data. Possible values:
  • 1
    : In-app transaction.
  • 2
    : Near-field communication (NFC) transaction. The customer’s mobile device provided the token data for a contactless EMV transaction.
  • 3
    : A transaction using stored customer credentials on
    VDC National Australia Bank Ltd
    , whether for merchant-initiated transactions (MITs) or customer-initiated transactions (CITs).
IMPORTANT
This value does not specify the token service provider. It specifies the entity that provided you with information about the token.
paymentInformation.tokenizedCard.type
Three-digit value that indicates the card type. Possible values:
  • 001
    : Visa
  • 002
    : Mastercard
  • 003
    : American Express
  • 004
    : Discover
  • 005
    : Diners Club
  • 007
    : JCB
  • 062
    : China UnionPay
processingInformation.commerceIndicator
Type of transaction. Some payment card companies use this information when determining discount rates. Possible values:
  • aesk
    : American Express SafeKey authentication.
  • dipb
    : Discover card type.
  • internet
    : Default value for authorizations. E-commerce order placed from a website.
  • js
    : JCB J/Secure authentication.
  • spa
    : Mastercard Identity Check authentication.
  • vbv
    : Visa Secure authentication
processingInformation.paymentSolution
Set the value to
001
to identify Apple Pay as the digital payment solution.

REST Example: Authorize a Payment with Merchant Decryption

Request
{ "clientReferenceInformation": { "code": "TC_1231223" }, "processingInformation": { "commerceIndicator": "internet", "paymentSolution": "001" }, "paymentInformation": { "tokenizedCard": { "number": "4111111111111111", "expirationMonth": "12", "expirationYear": "2031", "cryptogram": "AceY+igABPs3jdwNaDg3MAACAAA=", "transactionType": "1", "type": "001" } }, "orderInformation": { "amountDetails": { "totalAmount": "10", "currency": "AUD" }, "billTo": { "firstName": "John", "lastName": "Doe", "address1": "901 Metro Center Blvd", "locality": "Foster City", "administrativeArea": "CA", "postalCode": "94404", "country": "US", "email": "[email protected]" } } }
Response to a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/7359621903916966603954/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/7359621903916966603954" }, "capture": { "method": "POST", "href": "/pts/v2/payments/7359621903916966603954/captures" } }, "clientReferenceInformation": { "code": "TC_1231223" }, "id": "7359621903916966603954", "orderInformation": { "amountDetails": { "authorizedAmount": "10.00", "currency": "AUD" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "tokenizedCard": { "expirationYear": "2031", "prefix": "411111", "expirationMonth": "12", "suffix": "1111", "type": "001" }, "card": { "type": "001" } }, "processingInformation": { "paymentSolution": "001" }, "processorInformation": { "systemTraceAuditNumber": "918032", "approvalCode": "831000", "merchantAdvice": { "code": "01", "codeRaw": "M001" }, "responseDetails": "ABC", "networkTransactionId": "016153570198200", "retrievalReferenceNumber": "500303918032", "consumerAuthenticationResponse": { "code": "2", "codeRaw": "2" }, "transactionId": "016153570198200", "responseCode": "00", "avs": { "code": "Y", "codeRaw": "Y" } }, "reconciliationId": "7359621903916966603954", "status": "AUTHORIZED", "submitTimeUtc": "2025-01-04T03:43:10Z" }

Process an Apple Pay Sale with
VDC NAB
Decryption

The topics in this section shows you how to process an Apple Pay sale with the
VDC NAB
decryption
implementation of Apple Pay.
A sale bundles an authorization and capture in a single transaction. Request the authorization and capture at the same time. The authorization and capture amounts must be the same.
The
REST
API message for a sale request is the same as the message for an authorization request, except that the sale request message must set the
processingInformation.capture
field to
true
.
IMPORTANT
In the example, the sale transaction is made using a
Visa card
, and the processor is
VDC National Australia Bank Ltd
.
National Australia Bank
supports the
VDC National Australia Bank Ltd
processor.
For general information about sale transactions, see the "Standard Payments Processing" section of the .

Basic Steps: Processing a Sale with
VDC NAB
Decryption

  1. Follow these steps to process an Apple Pay sale transaction with
    VDC NAB
    decryption:
  2. Create the request message with the required
    REST
    API fields.
  3. Send the message to one of these endpoints:
    • Production:
      POST
      https://nabgateway-api.nab.com.au
      /pts/v2/payments
    • Test:
      POST
      https://nabgateway-api-test.nab.com.au
      /pts/v2/payments
  4. Verify the response messages to make sure that the request was successful.

    ADDITIONAL INFORMATION

    A 200-level HTTP response code indicates success. See the .

Fields Required to Process a Sale with
VDC NAB
Decryption

As a best practice, include these
REST API
fields in your request for a combined authorization and capture (sale) transaction with the
VDC NAB
decryption implementation of Apple Pay.
Depending on your processor, your geographic location, and whether the relaxed address verification system (RAVS) is enabled for your account, some of these fields might not be required. It is your responsibility to determine whether an API field can be omitted from the transaction you are requesting.
For information about tbe relaxed requirements for address data and expiration dates in payment transactions, see the
.
clientReferenceInformation.code
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.fluidData.descriptor
Format of the encrypted payment data.
Set the value to
RklEPUNPTU1PTi5BUFBMRS5JTkFQUC5QQVlNRU5U
for Apple Pay.
paymentInformation.fluidData.encoding
Encoding method used to encrypt the payment data.
Set the value to
Base64
for Apple Pay.
paymentInformation.fluidData.value
Set the value to the encrypted payment data value returned by the Full Wallet request.
processingInformation.capture
Set the value to
true
for a sale transaction (to include a capture with the authorization).
processingInformation.paymentSolution
Set the value to
001
to identify Apple Pay as the digital payment solution.

REST Example: Process a Sale with
VDC NAB
Decryption

{ "clientReferenceInformation": { "code": "TC_1231223" }, "processingInformation": { "paymentSolution": "001", "capture": true }, "orderInformation": { "amountDetails": { "totalAmount": "10", "currency": "AUD" }, "billTo": { "firstName": "John", "lastName": "Doe", "address1": "901 Metro Center Blvd", "locality": "Foster City", "administrativeArea": "CA", "postalCode": "94404", "country": "US", "email": "[email protected]" } }, "paymentInformation": { "fluidData": { "value": "eyJkYXRhIjoiXC9NK2VQQ0JlMmtod1pMQkFzRWhneHFqYXF2MmtZNDJSNnd1VDdnT3JlelBwRE9hR2dmc1AzZUNHZUplSjFSc3JpSERGSnJIK0FJVHp6RFdjVXNHUlNuSER3QlBcL2JHakU0dUhYcTFDOXFjWDBLWmYzaTFZNkV2b1wvaXExOFhkcG5obTI1U2kwSGpkWUJGRmVBUmZlVENpMEtDSGtRN04wZTAyeElRbm84Qmt1TVwvSUQ5bHdoNXBFVnVYM08ybjc4bHVyU0tlRmpXVHMyWG9Pc1pmWXBpbFQ4ZFFtK2RaYmh6VHgyZ2hMXC9FcFBReUVvdW5QTFZjTlwvaTR0blFnakxWRWJiNUFDNHJ4ZjBwK2M0VGtYSzcycGZGY05NSnlxd0RlQWZ2cHB6cnFQZVdoaWlpdzUwTmljT3duR29tcXA0bWU2anV4S2N5ZFh3cGpJR3BhQlBuXC9NY3o2d2ZDSFAzMWY1NHdkRmZ4bEZadjl5XC85aGw5YlY1d08yN2R5bFwvYUVxN2FYbU5JZHBQNTFsOXlSQlUzNDNYcjR3XC9MSXN2ZmZTTE91WDlsRU5QUGtocE1LUXo4VWpYNG0xXC9xazdcL256aGFSekFaZGh6VGZsNkZ3PT0iLCJ2ZXJzaW9uIjoiRUNfdjEiLCJoZWFkZXIiOnsiYXBwbGljYXRpb25EYXRhIjoiNDE3MDcwNkM2OTYzNjE3NDY5NkY2RTQ0NjE3NDYxIiwidHJhbnNhY3Rpb25JZCI6IjU0NzI2MTZFNzM2MTYzNzQ2OTZGNkU0OTQ0IiwiZXBoZW1lcmFsUHVibGljS2V5IjoiTUlJQlN6Q0NBUU1HQnlxR1NNNDlBZ0V3Z2ZjQ0FRRXdMQVlIS29aSXpqMEJBUUloQVBcL1wvXC9cLzhBQUFBQkFBQUFBQUFBQUFBQUFBQUFcL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL01Gc0VJUFwvXC9cL1wvOEFBQUFCQUFBQUFBQUFBQUFBQUFBQVwvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cLzhCQ0JheGpYWXFqcVQ1N1BydlZWMm1JYThaUjBHc014VHNQWTd6ancrSjlKZ1N3TVZBTVNkTmdpRzV3U1RhbVo0NFJPZEpyZUJuMzZRQkVFRWF4ZlI4dUVzUWtmNHZPYmxZNlJBOG5jRGZZRXQ2ek9nOUtFNVJkaVl3cFpQNDBMaVwvaHBcL200N242MHA4RDU0V0s4NHpWMnN4WHM3THRrQm9ONzlSOVFJaEFQXC9cL1wvXC84QUFBQUFcL1wvXC9cL1wvXC9cL1wvXC9cLys4NXZxdHB4ZWVoUE81eXNMOFl5VlJBZ0VCQTBJQUJPSnZpNkxGa0JpUTJINDR6K05VK0I3N1hZV2p4UHJQaXRDMFRWZytJYnNGeXIrNjFsemFkQjFrU25hUHpFTmVMMEVrbzhWTExzVjRhU1hTalwvZXlJRmc9IiwicHVibGljS2V5SGFzaCI6IlwvNkxQT3BoS0tydWFvdjBET3VOTDk1YXFCcFVcLzArNElXNXFhV3FxME5qRT0ifSwic2lnbmF0dXJlIjoiTUlJRFFnWUpLb1pJaHZjTkFRY0NvSUlETXpDQ0F5OENBUUV4Q3pBSkJnVXJEZ01DR2dVQU1Bc0dDU3FHU0liM0RRRUhBYUNDQWlzd2dnSW5NSUlCbEtBREFnRUNBaEJjbCtQZjMrVTRwazEzblZEOW53UVFNQWtHQlNzT0F3SWRCUUF3SnpFbE1DTUdBMVVFQXg0Y0FHTUFhQUJ0QUdFQWFRQkFBSFlBYVFCekFHRUFMZ0JqQUc4QWJUQWVGdzB4TkRBeE1ERXdOakF3TURCYUZ3MHlOREF4TURFd05qQXdNREJhTUNjeEpUQWpCZ05WQkFNZUhBQmpBR2dBYlFCaEFHa0FRQUIyQUdrQWN3QmhBQzRBWXdCdkFHMHdnWjh3RFFZSktvWklodmNOQVFFQkJRQURnWTBBTUlHSkFvR0JBTkM4K2tndGdtdldGMU96amdETnJqVEVCUnVvXC81TUt2bE0xNDZwQWY3R3g0MWJsRTl3NGZJWEpBRDdGZk83UUtqSVhZTnQzOXJMeXk3eER3YlwvNUlrWk02MFRaMmlJMXBqNTVVYzhmZDRmek9wazNmdFphUUdYTkxZcHRHMWQ5VjdJUzgyT3VwOU1NbzFCUFZyWFRQSE5jc005OUVQVW5QcWRiZUdjODdtMHJBZ01CQUFHalhEQmFNRmdHQTFVZEFRUlJNRStBRUhaV1ByV3RKZDdZWjQzMWhDZzdZRlNoS1RBbk1TVXdJd1lEVlFRREhod0FZd0JvQUcwQVlRQnBBRUFBZGdCcEFITUFZUUF1QUdNQWJ3QnRnaEJjbCtQZjMrVTRwazEzblZEOW53UVFNQWtHQlNzT0F3SWRCUUFEZ1lFQWJVS1lDa3VJS1M5UVEybUZjTVlSRUltMmwrWGc4XC9KWHYrR0JWUUprT0tvc2NZNGlOREZBXC9iUWxvZ2Y5TExVODRUSHdOUm5zdlYzUHJ2N1JUWTgxZ3EwZHRDOHpZY0FhQWtDSElJM3lxTW5KNEFPdTZFT1c5a0prMjMyZ1NFN1dsQ3RIYmZMU0tmdVNnUVg4S1hRWXVaTGsyUnI2M044QXBYc1h3QkwzY0oweGdlQXdnZDBDQVFFd096QW5NU1V3SXdZRFZRUURIaHdBWXdCb0FHMEFZUUJwQUVBQWRnQnBBSE1BWVFBdUFHTUFid0J0QWhCY2wrUGYzK1U0cGsxM25WRDlud1FRTUFrR0JTc09Bd0lhQlFBd0RRWUpLb1pJaHZjTkFRRUJCUUFFZ1lDZ2RvN2lrTzdERTNCXC9pY0lycmRjc1ZIanJyQmNPdXNndXhlcGs1QW41ZEExV01rajBlVjRsMVM0RnR5NktwdlR0T0xcL3VSdDhuTHZpVnR0TVVSZHBYTjNWXC9NVmZnVkxlXC9YUm5cLzRzbUJnMVgweE5OTXlTZXBQalVxV1ZkWFg1K0RWYnp2U0ZKSVJGdmt1MHJPaGg3REZmODVpbXNkaGRZRUhCaUg0TzdpK1E9PSJ9", "descriptor": "RklEPUNPTU1PTi5BUFBMRS5JTkFQUC5QQVlNRU5U", "encoding": "Base64" } } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/payments/7359641336126184303955/voids" }, "self": { "method": "GET", "href": "/pts/v2/payments/7359641336126184303955" } }, "clientReferenceInformation": { "code": "TC_1231223" }, "consumerAuthenticationInformation": { "token": "Axj//wSTjveKcificy1TABsQ3ZtGThq1Zp78eHSPSAp78eHSPTpAr6E4uGTSTL0YriJFQwJycd7xTkT8TmWqYAAAtQlD" }, "id": "7359641336126184303955", "issuerInformation": { "responseRaw": "0110322000000E1000020000000000000010000104041534840127353442435634463759474B373833313030303030000159008000223134573031363135303730333830323039344730363400103232415050524F56414C00065649435243200034544B54523031313132313231323132313231544C3030323636504E30303431313131" }, "orderInformation": { "amountDetails": { "totalAmount": "10.00", "authorizedAmount": "10.00", "currency": "AUD" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "tokenizedCard": { "expirationYear": "2025", "requestorId": "12121212121", "prefix": "411111", "assuranceLevel": "66", "expirationMonth": "07", "suffix": "1111", "type": "001" }, "card": { "suffix": "1111", "type": "001" } }, "pointOfSaleInformation": { "terminalId": "02495701" }, "processingInformation": { "paymentSolution": "001" }, "processorInformation": { "merchantNumber": "000372839590885", "approvalCode": "831000", "networkTransactionId": "016150703802094", "transactionId": "016150703802094", "responseCode": "00", "avs": { "code": "Y", "codeRaw": "Y" } }, "reconciliationId": "73428553", "riskInformation": { "earlyVelocity": { "counts": [ { "count": "1", "informationCode": "MVEL-R1" } ] } }, "status": "AUTHORIZED", "submitTimeUtc": "2025-01-04T04:15:34Z" }

Process an Apple Pay Sale with Merchant Decryption

The topics in this section shows you how to process an Apple Pay sale with the
merchant decryption
implementation of Apple Pay.
A sale bundles an authorization and capture in a single transaction. Request the authorization and capture at the same time. The authorization and capture amounts must be the same.
The
REST
API message for a sale request is the same as the message for an authorization request, except that the sale request message must set the
processingInformation.capture
field to
true
.
IMPORTANT
In the example, the sale transaction is made using a
Visa card
, and the processor is
VDC National Australia Bank Ltd
.
National Australia Bank
supports the
VDC National Australia Bank Ltd
processor.
For general information about sale transactions, see the "Standard Payments Processing" section of the .

Basic Steps: Processing a Sale with Merchant Decryption

  1. Follow these steps to process an Apple Pay sale transaction with merchant decryption:
  2. Create the request message with the required
    REST
    API fields.
  3. Send the message to one of these endpoints:
    • Production:
      POST
      https://nabgateway-api.nab.com.au
      /pts/v2/payments
    • Test:
      POST
      https://nabgateway-api-test.nab.com.au
      /pts/v2/payments
  4. Verify the response messages to make sure that the request was successful.

    ADDITIONAL INFORMATION

    A 200-level HTTP response code indicates success. See the .

Fields Required to Process a Sale with Merchant Decryption

As a best practice, include these
REST API
fields in your request for a combined authorization and capture (sale) transaction with the
VDC NAB
decryption implementation of Apple Pay.
Depending on your processor, your geographic location, and whether the relaxed address verification system (RAVS) is enabled for your account, some of these fields might not be required. It is your responsibility to determine whether an API field can be omitted from the transaction you are requesting.
For information about tbe relaxed requirements for address data and expiration dates in payment transactions, see the
.
clientReferenceInformation.code
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.tokenizedCard.cryptogram
Token authentication verification value cryptogram.
The value for this field must be a 28-character, Base64-encoded string (the encoding method for Apple Pay transactions).
paymentInformation.tokenizedCard.expirationMonth
Set the value to month in which the token expires. Format:
MM
Possible values:
01
through
12
.
paymentInformation.tokenizedCard.expirationYear
Set the value to the year in which the token expires. Format:
yyyy
.
paymentInformation.tokenizedCard.number
Set the value to customer's payment network token value that contains the customer's credit card number.
For
VDC National Australia Bank Ltd
, set this field to the value that indicates the type of transaction that provided the payment network token data. Possible values:
  • 1
    : In-app transaction.
  • 2
    : Near-field communication (NFC) transaction. The customer’s mobile device provided the token data for a contactless EMV transaction.
  • 3
    : A transaction using stored customer credentials on
    VDC National Australia Bank Ltd
    , whether for merchant-initiated transactions (MITs) or customer-initiated transactions (CITs).
IMPORTANT
This value does not specify the token service provider. It specifies the entity that provided you with information about the token.
paymentInformation.tokenizedCard.type
Three-digit value that indicates the card type. Possible values:
  • 001
    : Visa
  • 002
    : Mastercard
  • 003
    : American Express
  • 004
    : Discover
  • 005
    : Diners Club
  • 007
    : JCB
  • 062
    : China UnionPay
processingInformation.capture
Set the value to
true
to include a capture with the authorization.
processingInformation.commerceIndicator
Type of transaction. Some payment card companies use this information when determining discount rates. Possible values:
  • aesk
    : American Express SafeKey authentication.
  • dipb
    : Discover card type.
  • internet
    : Default value for authorizations. E-commerce order placed from a website.
  • js
    : JCB J/Secure authentication.
  • spa
    : Mastercard Identity Check authentication.
  • vbv
    : Visa Secure authentication
processingInformation.paymentSolution
Set the value to
001
to identify Apple Pay as the digital payment solution.

REST Example: Process a Sale with Merchant Decryption

Request
{ "clientReferenceInformation": { "code": "TC_1231223" }, "processingInformation": { "commerceIndicator": "internet", "paymentSolution": "001", "capture": true }, "paymentInformation": { "tokenizedCard": { "number": "4111111111111111", "expirationMonth": "12", "expirationYear": "2031", "cryptogram": "AceY+igABPs3jdwNaDg3MAACAAA=", "transactionType": "1", "type": "001" } }, "orderInformation": { "amountDetails": { "totalAmount": "10", "currency": "AUD" }, "billTo": { "firstName": "John", "lastName": "Doe", "address1": "901 Metro Center Blvd", "locality": "Foster City", "administrativeArea": "CA", "postalCode": "94404", "country": "US", "email": "[email protected]" } } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/payments/7359627932726161403954/voids" }, "self": { "method": "GET", "href": "/pts/v2/payments/7359627932726161403954" } }, "clientReferenceInformation": { "code": "TC_1231223" }, "id": "7359627932726161403954", "orderInformation": { "amountDetails": { "totalAmount": "10.00", "authorizedAmount": "10.00", "currency": "AUD" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "tokenizedCard": { "expirationYear": "2031", "prefix": "411111", "expirationMonth": "12", "suffix": "1111", "type": "001" }, "card": { "type": "001" } }, "processingInformation": { "paymentSolution": "001" }, "processorInformation": { "systemTraceAuditNumber": "417802", "approvalCode": "831000", "merchantAdvice": { "code": "01", "codeRaw": "M001" }, "responseDetails": "ABC", "networkTransactionId": "016153570198200", "retrievalReferenceNumber": "500303417802", "consumerAuthenticationResponse": { "code": "2", "codeRaw": "2" }, "transactionId": "016153570198200", "responseCode": "00", "avs": { "code": "Y", "codeRaw": "Y" } }, "reconciliationId": "7359627932726161403954", "status": "AUTHORIZED", "submitTimeUtc": "2025-01-04T03:53:13Z" }

Reverse an Apple Pay Payment Authorization

The topics in this section shows you how to reverse an Apple Pay payment authorization.
IMPORTANT
In the example, the authorization being reversed is for a payment made using a
Visa card
, and the processor is
VDC National Australia Bank Ltd
.
National Australia Bank
supports the
VDC National Australia Bank Ltd
processor.
For general information about authorization reversals, see the "Standard Payments Processing" section of the .

Basic Steps: Reversing a Payment Authorization

  1. Follow these steps to reverse an Apple Pay payment authorization:
  2. Create the request message with the required
    REST
    API fields.
  3. Send the request to one of these endpoints:
    • Production:
      POST
      https://nabgateway-api.nab.com.au
      /pts/v2/payments/{id}/reversals
    • Test:
      POST
      https://nabgateway-api-test.nab.com.au
      /pts/v2/payments/{id}/reversals

    ADDITIONAL INFORMATION

    Replace the
    {id}
    portion of the URL with the transaction ID of the payment that you want to reverse. The transaction ID is returned in the
    id
    field of the response to the authorization request. Example value: 7359642011156554503954
  4. Verify the response messages to make sure that the request was successful.

    ADDITIONAL INFORMATION

    A 200-level HTTP response code indicates success. See the .

Fields Required to Reverse a Payment Authorization

As a best practice, include these
REST API
fields in your request to reverse the authorization of an Apple Pay transaction.
Depending on your processor, your geographic location, and whether the relaxed address verification system (RAVS) is enabled for your account, some of these fields might not be required. It is your responsibility to determine whether an API field can be omitted from the transaction you are requesting.
For information about tbe relaxed requirements for address data and expiration dates in payment transactions, see the
.
clientReferenceInformation.code
Set this field to the value returned in the response to the original authorization.
orderInformation.amountDetails.currency
processingInformation.paymentSolution
Set the value to
001
to identify Apple Pay as the digital payment solution.
reversalInformation.amountDetails.totalAmount

REST Example: Reverse a Payment Authorization

Request
{ "clientReferenceInformation": { "code": "TC_1231223" }, "processingInformation": { "paymentSolution": "001" }, "orderInformation": { "amountDetails": { "currency": "AUD" } }, "reversalInformation": { "amountDetails": { "totalAmount": "10" } } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/captures/6662994431376681303954/voids" }, "self": { "method": "GET", } }, "clientReferenceInformation": { "code": "TC_1231223" }, "id": "6662994431376681303954", "orderInformation": { "amountDetails": { "totalAmount": "10.00", "currency": "AUD" } }, "reconciliationId": "66535942B9CGT52U", "status": "PENDING", "submitTimeUtc": "2025-01-04T23:56:13Z" }

Capture an Apple Pay Authorization

The topics in this section shows you how to capture an authorized Apple Pay payment transaction.
IMPORTANT
In the example, the payment being captured was made using a
Visa card
, and the transaction is processed with the
VDC National Australia Bank Ltd
.
National Australia Bank
supports the
VDC National Australia Bank Ltd
processor.
For general information about capture transactions, see the "Standard Payments Processing" section of the .

Basic Steps: Capturing an Authorization

  1. Follow these steps to capture an authorized Apple Pay payment transaction:
  2. Create the request message with the required
    REST
    API fields.
  3. Send the request to one of these endpoints:
    • Production:
      POST
      https://nabgateway-api.nab.com.au
      /pts/v2/payments/{id}/captures
    • Test:
      POST
      https://nabgateway-api-test.nab.com.au
      /pts/v2/payments/{id}/captures

    ADDITIONAL INFORMATION

    Replace the
    {id}
    portion of the URL with the transaction ID of the payment that you want to capture. The transaction ID is returned in the
    id
    field of the response to the authorization request. Example value: 7359642011156554503954
  4. Verify the response messages to make sure that the request was successful.

    ADDITIONAL INFORMATION

    A 200-level HTTP response code indicates success. See the .

Fields Required to Capture an Authorization

As a best practice, include these
REST API
fields in your request to capture an authorized Apple Pay payment transaction.
Depending on your processor, your geographic location, and whether the relaxed address verification system (RAVS) is enabled for your account, some of these fields might not be required. It is your responsibility to determine whether an API field can be omitted from the transaction you are requesting.
For information about tbe relaxed requirements for address data and expiration dates in payment transactions, see the
.
clientReferenceInformation.code
Set this field to the value returned in the response to the original authorization.
orderInformation.amountDetails.currency
orderInformation.amountDetails.totalAmount
processingInformation.paymentSolution
Set the value to
001
to identify Apple Pay as the digital payment solution.

REST Example: Capturing an Authorization

Request
{ "clientReferenceInformation": { "code": "TC_1231223" }, "processingInformation": { "paymentSolution": "001" }, "orderInformation": { "amountDetails": { "totalAmount": "10", "currency": "AUD" } } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/captures/6662994431376681303954/voids" }, "self": { "method": "GET", } }, "clientReferenceInformation": { "code": "TC_1231223" }, "id": "6662994431376681303954", "orderInformation": { "amountDetails": { "totalAmount": "10.00", "currency": "AUD" } }, "reconciliationId": "66535942B9CGT52U", "status": "PENDING", "submitTimeUtc": "2024-11-21T04:17:20Z" }