Payments with Instrument Identifier Tokens
This page describes payment operations using instrument identifier tokens. You can authorize payments with an existing instrument identifier token, create an instrument identifier while processing a payment, and issue credits.
Create Instrument Identifier with Validated Payment Details
You can create an instrument identifier while simultaneously validating the payment details using a single API request. This approach allows you to ensure that the payment information is valid before storing it as a token.
Endpoint
POST /pts/v2/payments
POST /pts/v2/payments
{ "card": { "number": "4111111111111111", "expirationMonth": "12", "expirationYear": "2025", "securityCode": "123" }, "billTo": { "address1": "123 Main St", "locality": "San Francisco", "postalCode": "94105", "country": "US" }}{ "id": "7010000000016241111", "object": "instrumentIdentifier", "state": "ACTIVE", "card": { "number": "411111XXXXXX1111", "expirationMonth": "12", "expirationYear": "2025" }, "processingInformation": { "authorizationOptions": { "initiator": "MERCHANT" } }, "validationStatus": "SUCCESS", "metadata": { "creator": "testrest" }}| Field | Type | Description |
|---|---|---|
card.number | string | Primary account number. |
card.expirationMonth | string | Card expiration month in two-digit format. For example, 12. |
card.expirationYear | string | Card expiration year in four-digit format. For example, 2025. |
Optional Fields
| Field | Type | Description |
|---|---|---|
card.securityCode | string | Card security code (CVV). |
billTo.address1 | string | The first line of the billing street address. |
billTo.locality | string | City in the billing address. |
billTo.postalCode | string | ZIP or postal code in the billing address. |
billTo.country | string | Country of the billing address. Use the two-character ISO Standard Country Code. |
Authorize a Payment with an Instrument Identifier
You can authorize a payment using an instrument identifier token instead of sending full card details. The authorization request uses the stored instrument identifier to process the transaction.
Endpoint
POST /pts/v2/payments
POST /pts/v2/payments
{ "processingInformation": { "instrumentIdentifier": { "id": "7010000000016241111" } }, "orderInformation": { "amountDetails": { "totalAmount": "100.00", "currency": "USD" } }}{ "id": "7100000000000000001", "submitTimeUtc": "2026-07-16T19:00:15Z", "status": "AUTHORIZED", "processingInformation": { "instrumentIdentifier": { "id": "7010000000016241111" } }, "orderInformation": { "amountDetails": { "authorizedAmount": "100.00", "currency": "USD" } }, "riskInformation": { "score": "0" }}| Field | Type | Description |
|---|---|---|
processingInformation.instrumentIdentifier.id | string | The instrument identifier token ID. |
orderInformation.amountDetails.totalAmount | string | The transaction amount. |
Make a Credit with an Instrument Identifier
You can issue a credit to an instrument identifier using a POST request to the credit endpoint.
Endpoint
POST /pts/v2/credits
POST /pts/v2/credits
{ "processingInformation": { "instrumentIdentifier": { "id": "7010000000016241111" } }, "orderInformation": { "amountDetails": { "totalAmount": "50.00", "currency": "USD" } }}{ "id": "7200000000000000001", "submitTimeUtc": "2026-07-16T19:00:15Z", "status": "COMPLETED", "processingInformation": { "instrumentIdentifier": { "id": "7010000000016241111" } }, "orderInformation": { "amountDetails": { "creditAmount": "50.00", "currency": "USD" } }}| Field | Type | Description |
|---|---|---|
processingInformation.instrumentIdentifier.id | string | The instrument identifier token ID. |
orderInformation.amountDetails.totalAmount | string | The credit amount. |
Thanks for your feedback!
Last published: September 29, 2026