On This Page
Card Present Connect | Retail Integration Guide
This section describes how to use this guide and where to find further information.
Audience and Purpose
This guide is written for merchants who want to process card-present retail payments
through
Cybersource
, and provides information about the REST API
guide for Visa Platform Connect
. For information about additional
requirements and options for card-present transactions, see the Payments Developer
guide in the Technical Documentation
Portal.Conventions
The following special statement is used in this document:
IMPORTANT
An
Important
statement contains information essential to
successfully completing a task or learning a concept.Customer Support
For support information about any service, visit the Support Center:
Recent Revisions to This Document
25.09.01
This update contains only editorial changes and no technical updates.
25.06.01
- Added support for Discover cash advance in Authorization for Cash Advance with Credit Card.
25.02
- Renamed "Card Present Payment Processing" to Retail Payment Services Using EMV and Card Data.
- Added new EMV and card data information for payment services in Retail EMV and Card Data.
- Renamed "Card-Present Mobile Point-of-Sale Payment Processing" to Mobile Point-of-Sale Payment Services.
- Updated fields and examples in Authorization for Cash Advance with Credit Card.
- Added new international transaction feature. See Dynamic Currency Conversion Payment Services.
25.01
- Reorganized these sections, making only editorial changes and no technical updates:
VISA Platform Connect: Specifications and Conditions for
Resellers/Partners
The following are specifications and conditions that apply to a Reseller/Partner enabling
its merchants through
Cybersource for
. Failure to meet any of the specifications and conditions below is
subject to the liability provisions and indemnification obligations under
Reseller/Partner’s contract with Visa/Cybersource.Visa Platform Connect
(“VPC”)
processing- Before boarding merchants for payment processing on a VPC acquirer’s connection, Reseller/Partner and the VPC acquirer must have a contract or other legal agreement that permits Reseller/Partner to enable its merchants to process payments with the acquirer through the dedicated VPC connection and/or traditional connection with such VPC acquirer.
- Reseller/Partner is responsible for boarding and enabling its merchants in accordance with the terms of the contract or other legal agreement with the relevant VPC acquirer.
- Reseller/Partner acknowledges and agrees that all considerations and fees associated with chargebacks, interchange downgrades, settlement issues, funding delays, and other processing related activities are strictly between Reseller and the relevant VPC acquirer.
- Reseller/Partner acknowledges and agrees that the relevant VPC acquirer is responsible for payment processing issues, including but not limited to, transaction declines by network/issuer, decline rates, and interchange qualification, as may be agreed to or outlined in the contract or other legal agreement between Reseller/Partner and such VPC acquirer.
DISCLAIMER: NEITHER VISA NOR CYBERSOURCE WILL BE RESPONSIBLE OR LIABLE FOR ANY ERRORS OR
OMISSIONS BY THE
Visa Platform Connect
ACQUIRER IN PROCESSING TRANSACTIONS. NEITHER VISA
NOR CYBERSOURCE WILL BE RESPONSIBLE OR LIABLE FOR RESELLER/PARTNER BOARDING MERCHANTS OR
ENABLING MERCHANT PROCESSING IN VIOLATION OF THE TERMS AND CONDITIONS IMPOSED BY THE
RELEVANT Visa Platform Connect
ACQUIRER. Introduction to Card Present Connect | Retail
Card Present Connect | Retail is part of a unified commerce solution for payment
technology providers. It supports card-present transactions at the point of sale (POS)
and on mobile POS devices, and enables you to integrate with multiple processors and
acquirers.
The platform uses end-to-end encryption to enable secure and innovative payment
solutions. Retail integration and value-added services are available through a single
integration on the Card Present Connect payment management platform.
An added benefit of Card Present Connect | Retail is that you can
streamline Visa Platform Connect certification, which helps you verify secure and
compliant payments.
Enabling the Card Present Connect Platform
Before you can use the Card Present Connect platform, you must enable the feature.
Follow these steps to enable the Card Present Connect platform:
- Set up aCybersourcemerchant account. To get started, contact your sales engineer, alliance partner, or technical account manager.
- Integrate theCybersourceAPIs for use on the Card Present Connect platform.
- Integrate your terminal’s key management encryption and decryption with the Card Present Connect platform.
- Complete message-level validation (MLV) and Level 3 (L3) device certification. To get started, contact your sales engineer, alliance partner, or technical account manager.
Card-Present Entry Modes
A card-present transaction occurs when a customer presents their payment card at a
physical retail location to complete a purchase. These transactions are processed using
point-of-sale (POS) terminals, mobile POS (mPOS) devices, or unattended payment
terminals.
These are the entry modes for card-present transactions:
- EMV (chip-based)
- Having contact or contactless (tap) interaction with the terminal.
- Magnetic stripe
- Swiping the card in the terminal.
- Hand-keyed
- Manually entering card details when EMV or magnetic stripe data is unavailable.
Card-present transactions are typically more secure than card-not-present transactions
because the cardholder and payment card are present. However, these transactions still
requires standard risk control measures. For more information, see Card-Present Risk Control
Requirements.
EMV Entry Modes
A payment card that has an embedded chip is called an EMV card, which is named after the
three companies that developed the technology standard: Europay, Mastercard, and Visa.
The cardholder data that is stored on the embedded chip is used to make transactions
more secure and reduce fraud risks.
The EMV card data is obtained through the payment terminal by using one of these entry modes:
- Contact
- The customer inserts a payment card with an embedded chip into the payment terminal. You can choose to verify the customer's identity by requiring PIN entry on the terminal.
- Contactless
- The customer taps either a contactless-enabled card or payment-enabled mobile or wearable device on or near a contactless payment terminal. Enabled cards, phones, watches, and other devices use the same contactless technology.
Magnetic Stripe Entry Mode
Payment cards typically store customer data on a magnetic stripe embedded in the back of
the card. For this entry mode, a customer swipes their card on a payment terminal to
pass this data to the merchant's point-of-sale system. Swiping the payment card is
typically used for non-EMV cards, such as pre-paid cards, or as an alternative payment
method when a contact or contactless EMV payment fails.
Hand-Keyed Entry Mode
When you are unable to complete a transaction using EMV or magnetic stripe entry modes,
you can use the hand-keyed entry mode to manually enter card information into the POS
terminal and complete the transaction.
Card-Present Transaction Risk Control Requirements
Card-present
transactions are less risky than card-not-present transactions because the customer is
present. This reduced risk results in lower transaction fees for card-present
transactions. Although the risks are lower, risk controls are still required for
card-present transactions.
The acquirer is responsible for monitoring transaction risk and for managing fraud and
disputes in keeping with payment network rules, including Global Acquirer Risk
Standards. Monitoring and management activities also must comply with these Visa risk
compliance programs:
- Visa Fraud Monitoring Program
- Visa Dispute Monitoring Program
To comply with risk control requirements, the acquirer must use one of these options:
- EnableCybersourcetransaction and fraud monitoring tools.
- Ensure that its payment technology providers (PTPs) implement transaction and fraud monitoring tools.
- Deploy its own transaction and fraud monitoring tools.
Each option provides fraud and risk controls for direct merchant relationships and
payment technology providers with no transaction or fraud monitoring tools.
For more information, see Fraud and Risk Management
Solutions.
Retail Payment Services Using EMV and Card Data
This section describes how to process card-present retail payments using EMV and card
data. The payment card must be present for these retail transactions.
These card-present retail payment services are supported:
- Authorizations:
- Contact EMV and online PIN. An EMV authorization is based on the EMV chip embedded in the cardholder's payment card.
- Contact EMV and offline PIN
- Contactless EMV and online PIN
- Magnetic stripe swipe. This type of authorization is based on the magnetic stripe on the back of the cardholder's payment card.
- Hand-keyed data. This type of authorization is based on you manually entering the card information into the payment terminal.
- Cash advance with credit card
- Capture
- Capture for contact EMV authorization
- Credit
- Authorization reversal
- Void
- Timeout void
- Mobile point-of-sale (mPOS) authorizations and sales
- PIN debit services
For more information about payment services and processing, see these resources:
- Github repositories: Cybersource
Retail EMV and Card Data
You can request these payment services for retail with EMV and card data:
- Authorization: standard and incremental
- Capture
- Credit
This table shows which EMV tags are:
- M: mandatory
- P: prohibited
- O: optional
- C: conditional (Send the tag when it is present in card and terminal.)
Data Element | EMV Tag | Mastercard | Visa |
---|---|---|---|
Transaction Date | 9A | M | M |
Transaction Type | 9C | M | M |
Transaction Currency Code | 5F2A | M | M |
Terminal Country Code | 9F1A | M | M |
Amount Authorized | 9F02 | M | M |
Amount Other | 9F03 | M | M |
Application PAN Sequence Number | 5F34 | C | O |
Application Transaction Counter (ATC) | 9F36 | M | M |
Application Interchange Profile (AIP) | 82 | M | M |
Dedicated File (DF) Name | 84 | M | M |
Terminal Verification Results (TVR) | 95 | M | M |
Issuer Application Data | 9F10 | M | M |
Application Cryptogram | 9F26 | M | M |
Cryptogram Information Data (CID) | 9F27 | M | O |
Terminal Capabilities | 9F33 | M | M |
Cardholder Verification Method (CVM) Results | 9F34 | M | O |
Unpredictable Number (UN) | 9F37 | M | M |
Form Factor Indicator | 9F6E | O (Authorization) P (Refund) | C |
Authorization with Contact EMV and Online PIN
For an EMV chip contact authorization, the customer inserts the card directly into a point-of-sale (POS) terminal. For an online PIN authorization, the customer enters a PIN to verify their identity, and the issuer verifies the PIN.
Online PIN transactions are supported by these card types:
- Visa
- Mastercard
- American Express
- Discover
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for Processing an Authorization with Contact EMV and Online PIN
- Cybersourceprovides the value for this field.
- Set the value tocontactfor an EMV payment.
- Set the value to4.
- Set the value toretail.
Country-Specific Required Fields for Processing an Authorization with Contact EMV or
Contactless PIN
Argentina
- Required when the time zone is not set in your account.
REST Example: Processing an Authorization with Contact EMV and Online PIN
Request
{ "clientReferenceInformation": { "code": "test123", "transactionId": "uniqueValue1", "partner": { "thirdPartyCertificationNumber": "testTPCN" } }, "processingInformation": { "commerceIndicator": "retail", } }, "paymentInformation": { "card": { "type": "001" } }, "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "currency": "USD" } }, "pointOfSaleInformation": { "entryMode": "contact", "terminalCapability": 4, "terminalPinCapability": 6, "emv": { "tags": "5F3401019F3303E0F8C8950580800480009F370465B81A3A9F100706011203A0A0009F2608E9D097D1901E8AB99F36020002820218009C01009F1A0208409A032307259F02060000000007005F2A0208409F0306000000000000DF78083831393931303236DF791B322D30323436362D312D31432D5246492D303331332D342E332E62", "cardSequenceNumber": "01" }, "trackData": ";4761xxxxxxxxxxxx=251220111478549?", "pinBlockEncodingFormat":0, "encryptedPin": "F509429A3C3FD201", "encryptedKeySerialNumber": "FFFF1B1D140000200001" }, "merchantInformation": { "transactionLocalDateTime": "20230724085022" } }
Response to a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6938891699856080004953/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6938891699856080004953" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6938891699856080004953/captures" } }, "clientReferenceInformation": { "code": "test123", "transactionId": "uniqueValue1" }, "id": "6938891699856080004953", "orderInformation": { "amountDetails": { "authorizedAmount": "9900.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "accountFeatures": { "category": "A", "group": "0" }, "tokenizedCard": { "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "emv": { "tags": "9F36020015910AB58D60185BEF0247303072179F180430303031860E04DA9F580903B1BAEDFD1438BA48" } }, "processorInformation": { "systemTraceAuditNumber": "188535", "approvalCode": "831000", "networkTransactionId": "016153570198200", "retrievalReferenceNumber": "324704188535", "transactionId": "016153570198200", "responseCode": "00", "avs": { "code": "2" } }, "reconciliationId": "6938891699856080004953", "status": "AUTHORIZED", "submitTimeUtc": "2023-09-05T04:46:10Z" }
Authorization with Contact EMV and Offline PIN
During a contact EMV authorization, the customer inserts the card into the terminal,
which causes the EMV chip to be in contact with the terminal. When processing an offline
PIN transaction, the EMV chip verifies the customer PIN.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for Processing an Authorization with Contact EMV and Offline PIN
- Cybersourceprovides the value for this field.
- Set the value tocontact.
- Set the value to4. Set the value to0if the terminal does not support PINs.
- Set the value toretail.
REST Example: Processing an Authorization with Contact EMV and Offline PIN
Request
{ "clientReferenceInformation": { "code": "test123", "transactionId": "uniqueValue2", "partner": { "thirdPartyCertificationNumber": "testTPCN" } }, "processingInformation": { "commerceIndicator": "retail", "authorizationOptions": { "partialAuthIndicator": "true" } }, "paymentInformation": { "card": { "type": "001" } }, "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "currency": "USD" } }, "pointOfSaleInformation": { "entryMode": "contact", "terminalCapability": 4, "terminalPinCapability": 6, "emv": { "tags": "5F3401019F3303E0F8C8950580800480009F370465B81A3A9F100706011203A0A0009F2608E9D097D1901E8AB99F36020002820218009C01009F1A0208409A032307259F02060000000007005F2A0208409F0306000000000000DF78083831393931303236DF791B322D30323436362D312D31432D5246492D303331332D342E332E62", "cardSequenceNumber": "01" }, "trackData": ";4761xxxxxxxxxxxx=251220111478549?" }, "merchantInformation": { "transactionLocalDateTime": "20230724085022" } }
Response to a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6938894575296498704951/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6938894575296498704951" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6938894575296498704951/captures" } }, "clientReferenceInformation": { "code": "test123", "transactionId": "uniqueValue2" }, "id": "6938894575296498704951", "orderInformation": { "amountDetails": { "authorizedAmount": "9900.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "accountFeatures": { "category": "A", "group": "0" }, "tokenizedCard": { "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "emv": { "tags": "9F36020015910AB58D60185BEF0247303072179F180430303031860E04DA9F580903B1BAEDFD1438BA48" } }, "processorInformation": { "systemTraceAuditNumber": "188589", "approvalCode": "831000", "networkTransactionId": "016153570198200", "retrievalReferenceNumber": "324704188589", "transactionId": "016153570198200", "responseCode": "00", "avs": { "code": "2" } }, "reconciliationId": "6938894575296498704951", "status": "AUTHORIZED", "submitTimeUtc": "2023-09-05T04:50:58Z" }
Authorization with Contactless EMV and Online PIN
For an EMV contactless payment, the customer taps the card on the terminal. The terminal and chip use near-field communication (NFC) to communicate with each other. For an online PIN transaction, the customer uses a PIN to verify their identity and the issuer verifies the PIN.
Online PIN transactions are supported by these card types:
- Visa
- Mastercard
- American Express
- Discover
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for Processing an Authorization with Contactless EMV and Online PIN
- Cybersourceprovides the value for this field.
- Set the value tocontactlessfor an EMV payment.
- Set the value to5.
- Set the value toretail.
REST Example: Processing an Authorization with Contactless EMV and Online PIN
Request
{ "clientReferenceInformation": { "code": "test123", "transactionId": "uniqueValue3", "partner": { "thirdPartyCertificationNumber": "testTPCN" } }, "processingInformation": { "commerceIndicator": "retail", "authorizationOptions": { "partialAuthIndicator": "true" } }, "paymentInformation": { "card": { "type": "001" } }, "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "currency": "USD" } }, "pointOfSaleInformation": { "entryMode": "contactless", "terminalCapability": 4, "terminalPinCapability": 6, "emv": { "tags": "5F3401019F3303E0F8C8950580800480009F370465B81A3A9F100706011203A0A0009F2608E9D097D1901E8AB99F36020002820218009C01009F1A0208409A032307259F02060000000007005F2A0208409F0306000000000000DF78083831393931303236DF791B322D30323436362D312D31432D5246492D303331332D342E332E62", "cardSequenceNumber": "01" }, "trackData": ";4761xxxxxxxxxxxx=251220111478549?", "pinBlockEncodingFormat":0, "encryptedPin": "F509429A3C3FD201", "encryptedKeySerialNumber": "FFFF1B1D140000200001" }, "merchantInformation": { "transactionLocalDateTime": "20230724085022" } }
Response to a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6938904668436727104951/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6938904668436727104951" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6938904668436727104951/captures" } }, "clientReferenceInformation": { "code": "test123", "transactionId": "uniqueValue3" }, "id": "6938904668436727104951", "orderInformation": { "amountDetails": { "authorizedAmount": "9900.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "accountFeatures": { "category": "A", "group": "0" }, "tokenizedCard": { "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "emv": { "tags": "9F36020015910AB58D60185BEF0247303072179F180430303031860E04DA9F580903B1BAEDFD1438BA48" } }, "processorInformation": { "systemTraceAuditNumber": "188851", "approvalCode": "831000", "networkTransactionId": "016153570198200", "retrievalReferenceNumber": "324705188851", "transactionId": "016153570198200", "responseCode": "00", "avs": { "code": "2" } }, "reconciliationId": "6938904668436727104951", "status": "AUTHORIZED", "submitTimeUtc": "2023-09-05T05:07:47Z" }
Authorization with Magnetic Stripe Swipe
Although EMV chips on payment cards have become common, sometimes the EMV chip cannot be
used to validate the cardholder. In these instances, you can choose to validate the
cardholder by using the magnetic stripe on back of the payment card.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for Processing an Authorization with Swiped Track Data
- Cybersourceprovides the value for this field.
- Set the value toswiped.
- Set the value toretail.
REST Example: Processing an Authorization with Swiped
Track Data
Request
{ "clientReferenceInformation": { "code": "ABC123", "partner": { "thirdPartyCertificationNumber": "123456789012" } }, "processingInformation": { "commerceIndicator": "retail" } }, "pointOfSaleInformation": { "trackData": ";4111xxxxxxxxxxxx=231220112345678?", "entryMode": "swiped", "terminalCapability": "4" }, "paymentInformation": { "card": { "type": "001" } }, "orderInformation": { "amountDetails": { "totalAmount": "9601.00", "currency": "USD" } }, }
Response to a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6869553167546562203955/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6869553167546562203955" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6869553167546562203955/captures" } }, "clientReferenceInformation": { "code": "ABC123" }, "id": "6869553167546562203955", "orderInformation": { "amountDetails": { "authorizedAmount": "9601.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "tokenizedCard": { "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "terminalId": "111111" }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "1" } }, "reconciliationId": "63427009RIT9HBR9", "status": "AUTHORIZED", "submitTimeUtc": "2023-06-16T22:41:57Z" }
Authorizations with Hand-Keyed Data
Under certain circumstances, you might choose to manually enter (hand key) a customer's
data to obtain an authorization.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for Processing an Authorization with Hand-Keyed Data
IMPORTANT
When relaxed requirements for address data and the expiration date are being used, not all fields
in this list are required. It is your responsibility to determine whether your
account is enabled to use this feature and which fields are required. For details
about relaxed requirements, see Relaxed Requirements for Address Data and Expiration Date in Payment Transactions.
- Cybersourceprovides the value for this field.
- Set the value totrue.
- Set the value tokeyed.
- Set the value to1,2,3,4, or5.
- Set the value toretail.
REST Example: Processing an Authorization with Hand Keyed
Data
Request
{ "clientReferenceInformation": { "code": "123456", "transactionId": "12233445679", "partner": { "thirdPartyCertificationNumber": "123456789012" }}, "processingInformation": { "commerceIndicator": "retail","authorizationOptions": { "ignoreAvsResult": "true", "ignoreCvResult": "true" }}, "pointOfSaleInformation": { "entryMode": "keyed", "terminalCapability": "4", "terminalPinCapability": "6" }, "paymentInformation": { "card": { "number": "4111111111111111", "securityCode": "123", "expirationMonth": "12", "expirationYear": "2031", "type": "001" } }, "orderInformation": { "amountDetails": { "totalAmount": "9604.00", "currency": "USD" }, "billTo": { "postalCode": "94538" } } "merchantInformation": { "transactionLocalDateTime": "20230724085022" } }
Response to a Successful Request
A successful response returns
status=AUTHORIZED
.{ "_links": { "void": { "method": "POST", "href": "/pts/v2/payments/6080032225246314603005/voids" }, "self": { "method": "GET", "href": "/pts/v2/payments/6080032225246314603005" } }, "clientReferenceInformation": { "code": "123456" }, "id": "6080032225246314603005", "orderInformation": { "amountDetails": { "totalAmount": "9604.00", "authorizedAmount": "9604.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "accountFeatures": { "category": "A", "group": "0" }, "tokenizedCard": { "type": "001" } }, "processorInformation": { "systemTraceAuditNumber": "173156", "approvalCode": "831000", "cardVerification": { "resultCodeRaw": "M", "resultCode": "M" }, "networkTransactionId": "016153570198200", "transactionId": "016153570198200", "responseCode": "00", "avs": { "code": "Z", "codeRaw": "Z" } }, "reconciliationId": "6080032225246314603005", "status": "AUTHORIZED", "submitTimeUtc": "2020-12-15T03:33:42Z" }
Authorization for Cash Advance with Credit Card
Using the cash advance feature, a cardholder can withdraw cash against their credit card
account limit at their bank. The cardholder presents their credit card and
identification to bank staff or uses the bank's card terminal to complete this
transaction.
IMPORTANT
The cash advance with credit card at ATM option is not supported
currently.
These card types support cash advance with credit card transactions in the U.S:
- Discover. The minimum transaction amount is 10.00 USD.
- Mastercard
- Visa
Fields Specific to This Use Case
- Set the value totrue.
- Set the value to6010. This field is not required if merchant category code6010is configured in the merchant account. If sent, this field overrides the value in the merchant account.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for Authorization for Cash Advance with Credit Card
- Cybersourceprovides the value for this field.
- Set the value to6010. This field is not required when merchant category code6010is configured in the merchant account. If sent, this field overrides the value in the merchant account.
- Set the value totrue.
- Set the value toretail.
REST Example: Authorization for Cash Advance with Credit
Card
Request
{ "clientReferenceInformation": { "code": "Cash Advance", "transactionId": "uniqueValue1", "partner": { "thirdPartyCertificationNumber": "testTPCN" } }, "processingInformation": { "authorizationOptions": { "cashAdvanceIndicator": "true" }, "commerceIndicator": "retail" }, "paymentInformation": { "card": { "type": "001" } }, "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "currency": "USD" } }, "pointOfSaleInformation": { "entryMode": "contact", "terminalCapability": 4, "terminalPinCapability": 6, "emv": { "tags": "5F3401019F3303E0F8C8950580800480009F370465B81A3A9F100706011203A0A0009F2608E9D097D1901E8AB99F36020002820218009C01009F1A0208409A032307259F02060000000007005F2A0208409F0306000000000000DF78083831393931303236DF791B322D30323436362D312D31432D5246492D303331332D342E332E62", "cardSequenceNumber": "01" }, "trackData": ";4761xxxxxxxxxxxx=251220111478549?", "pinBlockEncodingFormat":0, "encryptedPin": "F509429A3C3FD201", "encryptedKeySerialNumber": "FFFF1B1D140000200001" }, "merchantInformation": { "transactionLocalDateTime": "20230724085022" } }
Response to a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6938891699856080004953/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6938891699856080004953" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6938891699856080004953/captures" } }, "clientReferenceInformation": { "code": "test123", "transactionId": "uniqueValue1" }, "id": "6938891699856080004953", "orderInformation": { "amountDetails": { "authorizedAmount": "9900.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "accountFeatures": { "category": "A", "group": "0" }, "tokenizedCard": { "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "emv": { "tags": "9F36020015910AB58D60185BEF0247303072179F180430303031860E04DA9F580903B1BAEDFD1438BA48" } }, "processorInformation": { "systemTraceAuditNumber": "188535", "approvalCode": "831000", "networkTransactionId": "016153570198200", "retrievalReferenceNumber": "324704188535", "transactionId": "016153570198200", "responseCode": "00", "avs": { "code": "2" } }, "reconciliationId": "6938891699856080004953", "status": "AUTHORIZED", "submitTimeUtc": "2023-09-05T04:46:10Z" }
Authorization Reversal
This section provides the information about 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.
For a debit card or prepaid card in which only a partial amount was approved, the amount of
the reversal must be the amount that was authorized, not the amount that was requested.
Supported Card Types
All supported card types can process reversals.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/payments/{id}
/reversalsTest:
POST
https://apitest.cybersource.com
/pts/v2/payments/{id}
/reversalsThe is the transaction ID returned in the
authorization response.
{id}
Required Fields for Processing an Authorization Reversal
- Cybersourceprovides the value for this field.
- 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
Request
{ "clientReferenceInformation": { "code": "test123" } "reversalInformation" : { "amountDetails" : { "totalAmount" : "100.00", "currency" : "USD" } } }
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.
Supported Card Types
All supported card types can process captures.
.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/payments/{id}
/capturesTest:
POST
https://apitest.cybersource.com
/pts/v2/payments/{id}
/capturesThe is the transaction ID
returned in the authorization response.
{id}
Required Fields for Capturing an Authorization
Use these required fields for capturing an authorization.
- This field value maps from the original authorization, sale, or credit transaction.
REST Example: Capturing an Authorization
Request
{ "clientReferenceInformation": { "code": "ABC123" }, "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" }
Capture for Contact EMV Authorization
To capture a contact EMV authorization, you must include additional information in your
capture request. Include these EMV tags from the data on the EMV chip:
- 95: Terminal verification results
- 9F10: Issuer application data
- 9F26: Application cryptogram
For information about capturing a contactless EMV authorization, see Capture.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/payments/{id}
/capturesTest:
POST
https://apitest.cybersource.com
/pts/v2/payments/{id}
/capturesThe is the transaction ID
returned in the authorization response.
{id}
Required Fields for Capturing a Contact EMV Authorization
- Field value maps from the original authorization, sale, or credit transaction.
- Cybersourceprovides the value for this field.
- Include this data:
- 95: Terminal verification results
- 9F10: Issuer application data
- 9F26: Application cryptogram
REST Example: Capturing a Contact EMV Authorization
Request
{ "clientReferenceInformation": { "code": "123456", "partner": { "thirdPartyCertificationNumber": "123456789012" } }, "orderInformation": { "amountDetails": { "totalAmount": "100.00", "currency": "USD" } }, "pointOfSaleInformation": { "emv": { "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F260 81E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005 F2A0208409F0306000000000000" } } }
Response for a Successful Request
{ "_links" : { "void" : { "method" : "POST", "href" : "/pts/v2/captures/6512628085536163703211/voids" }, "self" : { "method" : "GET", "href" : "/pts/v2/captures/6512628085536163703211" } }, "clientReferenceInformation" : { "code" : "1651262808531" }, "id" : "6512628085536163703211", "orderInformation" : { "amountDetails" : { "totalAmount" : "100.00", "currency" : "USD" } }, "reconciliationId" : "6512627267816161803211", "status" : "PENDING", "submitTimeUtc" : "2022-04-29T20:06:49Z" }
Stand-Alone Credit
This section describes how to process a stand-alone credit. A stand-alone credit is used to
process a credit with no reference to a previous transaction. The amount for a stand-alone
credit is not limited because there is no reference to an original transaction amount. The
customer is required to present their payment card for this type of credit.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/credits/Test:
POST
https://apitest.cybersource.com
/pts/v2/credits/Required Fields for Processing a Stand-Alone Credit
REST Example: Stand-Alone Credit
Request
{ "clientReferenceInformation": { "code": "test123", "transactionId": "11223344", "partner": { "thirdPartyCertificationNumber": "testTPCN" } }, "processingInformation": { "commerceIndicator": "retail" }, "paymentInformation": { "card": { "type": "001" } }, "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "currency": "USD" } }, "pointOfSaleInformation": { "terminalId": "87654321", "entryMode": "contactless", "terminalCapability": "4", "terminalPinCapability": "0", "emv": { "tags": "5F2A02084082025800950542800480009A032907259C01209F02060000009900009F10070601120 3A000009F1A0208409F1E08364B3335303633379F26084F674AF82F5566BD9F330360F0E89F36022 3019F370479E0A7B59F2701809F34030203005F340101", "cardSequenceNumber": "01" }, "trackData": ";4761739001010119=29122011758928889?" }, "merchantInformation": { "transactionLocalDateTime": "20230724085022" } }
Response for a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/credits/6663069906146706403954/voids" }, "self": { "method": "GET", "href": "/pts/v2/credits/6663069906146706403954" } }, "clientReferenceInformation": { "code": "1666306990717" }, "creditAmountDetails": { "currency": "eur", "creditAmount": "100.00" }, "id": "6663069906146706403954", "orderInformation": { "amountDetails": { "currency": "eur" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "tokenizedCard": { "type": "001" }, "card": { "type": "001" } }, "processorInformation": { "approvalCode": "888888", "responseCode": "100" }, "reconciliationId": "66490108K9CLFJPN", "status": "PENDING", "submitTimeUtc": "2022-10-20T23:03:10Z" }
Void for a Capture or Credit
This section describes how to void a capture or credit that was submitted but not yet
processed by the processor.
Endpoints
Void a Capture
Production:
POST
https://api.cybersource.com
/pts/v2/captures/{id}
/voidsTest:
POST
https://apitest.cybersource.com
/pts/v2/captures/{id}
/voidsVoid a Credit
Production:
POST
https://api.cybersource.com
/pts/v2/credits/{id}
/voidsTest:
POST
https://apitest.cybersource.com
/pts/v2/credits/{id}
/voidsThe is the transaction ID returned during the
capture or credit response.
{id}
Required Fields for Voiding a Capture or Credit
- Including this field is recommended, but not required.
REST Example: Voiding a Capture or Credit
Request
{ "clientReferenceInformation": { "code": "test123" } }
Response to a Successful Request
{ "_links": { "self": { "method": "GET", "href": "/pts/v2/voids/6541933390746728203005" } }, "clientReferenceInformation": { "code": "1654193339056" }, "id": "6541933390746728203005", "orderInformation": { "amountDetails": { "currency": "USD" } }, "status": "VOIDED", "submitTimeUtc": "2022-06-02T18:08:59Z", "voidAmountDetails": { "currency": "usd", "voidAmount": "100.00" } }
Timeout Void for a Capture, Sale, Refund, or Credit
Refund
, or Credit
When you do not receive a response message after sending a capture, sale,
refund
, or credit
request,
this feature enables you to void the transaction that you requested.Include the
clientReferenceInformation.transactionId
field in the original request for a
capture, sale, refund
, or credit
. The value of the merchant transaction ID must be unique for 60
days.When the original transaction fails, the response message for the void request includes
these fields:
- voidAmountDetails.originalTransactionAmount
- processorInformation.responseCode
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/voids/Test:
POST
https://apitest.cybersource.com
/pts/v2/voids/Required Fields for Processing a Timeout Void for a Capture, Sale, Refund, or Credit
Refund
, or Credit
Use the value from this field to request a timeout void :
- Identifier that links the void request to the original request.
REST Example: Processing a Timeout Void for a Capture, Sale, Refund, or Credit
Refund
, or Credit
Request
{ "clientReferenceInformation": { "transactionId": "987654321" } }
Response to a Successful Request
{ "_links": { "self": { "method": "GET", "href": "/pts/v2/voids/6541933390746728203005" } }, "clientReferenceInformation": { "code": "1654193339056" }, "id": "6541933390746728203005", "orderInformation": { "amountDetails": { "currency": "USD" } }, "status": "VOIDED", "submitTimeUtc": "2023-06-02T18:08:59Z", "voidAmountDetails": { "currency": "usd", "voidAmount": "100.00" } }
Introduction to PIN Debit Processing
Customers commonly use debit cards, also called
ATM cards
or check cards
,
in card-present situations. Your agreement with the debit networks determines whether
the customer must provide a personal identification number (PIN). Cybersource
supports PIN debit transactions on Visa Platform Connect
.
PIN debit transactions are supported only in the U.S.Debit cards are branded with debit network logos, such as STAR, NYCE, Accel, and Pulse,
and often with Visa or Mastercard logos. The logos indicate that the cards are accepted
wherever Visa or Mastercard are accepted and are processed through a debit or credit
card network.
IMPORTANT
Issuer regulations require that you present the customer with the
choice to use their debit card as a debit or credit card.
The customer chooses whether to process the card as a debit card or a credit card. In
either case, the money is taken out of the customer's bank account, and the transaction
is included on the customer's bank account statement. The customer does not receive a
credit card bill as they would with a regular credit card.
PIN Debit Integration
Follow these steps to integrate PIN debit processing:
- ContactCybersourceor your acquirer to determine whether you are eligible to process PIN debit transactions. As part of this process, the debit networks might require you to complete applications.
- Determine whetherCybersourceor your acquirer requires any additional banking information from you.
- Determine whether you must comply with any special debit network requirements when processing PIN debit transactions. For example, some networks require that you verify the customer's identity before processing the payment.
- Contact customer support so that yourCybersourceaccount can be configured for PIN debit transactions.
PIN Debit Transactions
PIN debit transactions begin when the customer presents a PIN debit card at the payment
terminal.
Figure:
PIN Debit Transaction Flow
- The customer swipes the card through a magnetic card reader, inserts the card into the EMV terminal (contact), or taps the card against an EMV scanner (contactless) on the terminal.
- The customer chooses to process the card as a debit card or a credit card.IMPORTANTIssuer regulations require that you present the customer with the choice to use their debit card as a debit or credit card.
- If the customer chooses the debit card option, you request the PIN debit purchase service. The transaction is routed through the debit card networks.PIN debit transactions arefull-financial transactions; they are single message transactions that include an authorization and capture. As such, you do not need to request a separate capture as you would with a credit card transaction.If the PIN debit purchase service fails, you can attempt to process the card as a credit card.
- If the customer chooses the credit card option, or if the card cannot be used for a PIN debit purchase, process the transaction as a credit card sale, requesting the authorization and capture services together. The transaction is routed through the credit card networks.Refer to thePayments Developer Guide for the REST API | Visa Platform Connectfor information about using credit card services to process debit card transactions.
- If you need to refund a PIN debit purchase, use the PIN debit credit service.
- To reverse a PIN debit purchase or PIN debit credit, use the PIN debit reversal service.IMPORTANTTo request a PIN debit reversal, you must submit the request within one hour of the request that you are reversing.
PIN Debit Network Routing
Listing your preferred network routing codes in your
Business Center
merchant
account is an optional setting. To ensure that transactions are routed to networks in
your priority order, Cybersource
recommends including the
processingInformation.networkRoutingOrder
field in PIN debit
requests. Set this field to the priority order of the routing networks for the
transaction. When you include this field it overrides your merchant account setting.
When you do not include this field in your request, Cybersource
uses the
list of network codes in your merchant account.For Electronic Benefit Transfer (EBT) transactions, set the
processingInformation.networkRoutingOrder
field to
K
. If you do not include this field in EBT requests, your merchant account
must be configured with K
in the first priority order for network
routing.PIN Debit Processing Versus Credit Card Processing
You can process Visa or Mastercard branded debit cards through the credit card network by
using the credit card authorization and capture services, which is the same way that you
process credit card transactions.
PIN debit transactions and credit card transactions are processed differently from each
other:
- For a PIN debit transaction, request only the authorization service. You are not required to request a capture because the authorization service authorizes the transaction and moves the money.
- For a credit card transaction, you receive an authorization code indicating an approval. For a PIN debit transaction, you do not necessarily receive an authorization code. Some processors provide an authorization code, but the code is not required in order for you to receive your money. For a PIN debit transaction, you cannot verbally obtain an authorization code from the processor or bank.
PIN Debit Reconciliation
PIN debit purchase and credit data is added to the TC33A capture file for reconciliation
purposes only. Use it to verify this information:
- Merchant ID (MID)
- Total amount
- Approved: yes or no
- Action code
Track Data
PIN debit processing uses track 2 data in purchase and credit requests. When you include
track data in a request using the
pointOfSaleInformation.trackData
field, the sentinels
are required. In this example, the track 2 data follows the semicolon (;). The most important parts of
the track data are the card number, card expiration year, and card expiration month. In
this example, the card number is 4111111111111111, the expiration year is 26, and the
expiration month is 12. The end sentinel (?) follows the final character of data
recorded on the track.
Track Data Example
;4111111111111111=26121019761186800000?
Terminal IDs
By default, your merchant account is configured to validate a default terminal ID (TID).
If you want to override the default TID and send TIDs in the
pointOfSaleInformation.terminalId
request field in PIN Debit
requests, contact customer support to configure your account to disable TID validation. Electronic Benefit Transfer
Public assistance programs use Electronic Benefit Transfer (EBT) payment cards to issue
benefits. In the United States, common EBT benefits categories are food and cash.
This feature enables you to submit purchase, credit, and reversal requests on EBT cards
and vouchers. For EBT transactions, only swiped and manually keyed entry are supported. Contactless EMV transactions are not supported.
IMPORTANT
Federal law mandates that you cannot deny an EBT transaction because of technical
problems such as a non-working terminal or a non-working PIN pad.
When a technical
problem prevents you from initiating an EBT transaction, follow these steps:
- Complete an EBT voucher transaction, which is similar to a verbal authorization.
- Telephone the issuer to receive the approval information verbally.
- Capture all of the approval information on one of the paper vouchers that you received with the EBT network device.
- When the EBT system is back online, enter the voucher information into the EBT device to complete the transaction.
PIN Debit Optional Features
This section describes the optional features that are available for PIN Debit
processing.
Cash Back
This feature enables a customer in a card-present situation to add a cash-back amount to
the total transaction amount when using a debit card. The customer receives that amount
in cash along with the purchase. For example, a customer purchasing products totaling
18.99 might ask for 20.00 cash back. They would pay a total of 38.99 (18.99 + 20.00)
with their debit card and receive 20.00 in cash along with their products.
IMPORTANT
Cash back is not supported on partial authorizations.
To use this feature, include the
orderInformation.amountDetails.cashbackAmount
field in a PIN
debit purchase request.When the cash-back amount is 0.00, do not include the
orderInformation.amountDetails.cashbackAmount
field.For more information, see PIN Debit Purchase with Contactless EMV and Cash Back.
Merchant Descriptors
This feature enables you to submit merchant descriptor values that are displayed on a
cardholder's statement.
IMPORTANT
Before using merchant descriptors in your requests, check with your
bank to learn whether you must pre-register your merchant descriptor information with
them.
Cybersource
always provides merchant descriptor information to the
acquirer for all of your PIN debit purchase and PIN debit credit transactions. When you
do not include a particular merchant descriptor in your PIN debit purchase or PIN debit
credit request, Cybersource
uses the corresponding value from your
merchant account.For more information, see PIN Debit Purchase with Swiped Track Data and Merchant Descriptors.
Merchant Descriptor Fields
You can include these merchant descriptor fields in a PIN debit purchase or PIN debit credit:
- merchantInformation.merchantDescriptor.administrativeArea
- If you include this field in a request, you must also includemerchantInformation.merchantDescriptor.country.
- merchantInformation.merchantDescriptor.alternateName
- merchantInformation.merchantDescriptor.country
- If you include this field in a request, you must also includemerchantInformation.merchantDescriptor.administrativeArea.
- merchantInformation.merchantDescriptor.locality
- merchantInformation.merchantDescriptor.name
- merchantInformation.merchantDescriptor.postalCode
Merchant-Inititated Reversals
When you do not receive a response message after sending a PIN debit purchase or credit
request, your request might have timed out. This feature enables you to reverse a
timed-out transaction within 2 hours of the original request.
When using the merchant-initiated reversals feature, include the
clientReferenceInformation.transactionId
field in your original
request for a PIN debit purchase. The value of the transaction ID must be unique for 60
days. It links your reversal request to your original request.Partial Authorizations
For PIN debit cards, the issuing bank can approve a partial amount if the balance on the
card is less than the requested authorization amount.
Support for your processor and card type does not guarantee a partial authorization. The
issuing bank decides whether or not to approve a partial amount. When the balance on a
debit card or prepaid card is less than the requested authorization amount, the issuing
bank can approve a partial amount. When this happens, you can accept multiple forms of
payment for the order starting with some or all of the approved amount, followed by one
or more different payment methods.
You must opt in to be able to receive and capture partial authorizations. Choose one of
these options:
- CallCybersourcecustomer support to have your merchant account enabled for partial authorizations. When you do this, all of your authorization requests are enabled for partial authorizations.
- Set theprocessingInformation.authorizationOptions.partialAuthIndicatorfield totruein a PIN debit purchase request. When you do this, only that specific transaction is enabled for partial authorization.
When your account is enabled for partial authorizations, you can disable partial authorization for a specific transaction by setting the
processingInformation.authorizationOptions.partialAuthIndicator
field to false
in the PIN debit purchase request.For more information, see PIN Debit Partial Authorization with Swiped Track Data.
Payment Network Tokens
Payment network tokens are supported as card-present contactless transactions.
Surcharge Fees
This feature enables you to charge the customer a surcharge fee for a PIN debit purchase
or credit transaction.
IMPORTANT
Surcharge fees are not allowed on debit or prepaid cards in the
U.S.
Include the surcharge amount in the total transaction amount, and set the
orderInformation.amountDetails.surcharge.amount
field to the
surcharge amount. This information is passed to the issuer and acquirer for tracking.
The issuer can provide information about the surcharge amount to the customer.When there is no surcharge fee, do not include the
orderInformation.amountDetails.surcharge.amount
field in the
request.For more information, see PIN Debit Purchase with Contactless EMV and a Surcharge Fee.
PIN Debit Services
This section describes how to process PIN debit transactions that use these services:
- Contactless EMV purchases
- Swiped purchases
- Cash back
- Credits
- Electronic Benefits Transfer (EBT) transactions:
- EBT cash benefit account purchases
- EBT Supplemental Nutrition Assistance Program (SNAP) account purchases
- EBT voucher purchases
- EBT purchases with cash back
- EBT credits
- EBT reversals
- Merchant-initiated reversals
- Partial authorizations
PIN Debit Purchase with Contactless EMV
This section describes how to process a PIN debit purchase with contactless EMV when the
customer taps the card on the terminal.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for a PIN Debit Purchase with Contactless EMV
- Cybersourceprovides the value for this field.
- Set this field toUA.
- Leave this field blank.
- Set this field toCARD.
- Set this field toDEBIT.
- Required only when the card has a sequence number configured on the EMV chip.
- Set this field tocontactless.
- Set this field toretail.
REST Example: PIN Debit Purchase with Contactless EMV
Request
{ "clientReferenceInformation": { "code": "ABC123", "partner": { "thirdPartyCertificationNumber": "PTP1234" } }, "processingInformation": { "commerceIndicator": "retail", "networkRoutingOrder": "GUFV" }, "paymentInformation": { "paymentType": { "name": "CARD", "subTypeName": "DEBIT" }, "card": { "useAs": "", "sourceAccountType": "UA" } }, "orderInformation": { "amountDetails": { "totalAmount": "24.00", "currency": "USD" } }, "pointOfSaleInformation": { "entryMode": "contactless", "terminalCapability": 4, "emv": { "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F26081E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005F2A0208409F0306000000000000", "cardSequenceNumber": "01" }, "trackData": ";4111111111111111=33121019761186800000?" } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/payments/6883842752296552503964/voids" }, "self": { "method": "GET", "href": "/pts/v2/payments/6883842752296552503964" } }, "clientReferenceInformation": { "code": "ABC123" }, "id": "6883842752296552503964", "orderInformation": { "amountDetails": { "authorizedAmount": "24.00", "currency": "usd" } }, "processingInformation": { "reconciliationId": "6883842752296552503964" }, "processorInformation": { "systemTraceAuditNumber": "109328", "routing": { "network": "0000" }, "approvalCode": "831000", "retrievalReferenceNumber": "123456109328", "transactionId": "000000000000000", "responseCode": "00" }, "reconciliationId": "6883842752296552503964", "status": "AUTHORIZED", "submitTimeUtc": "2023-07-03T11:37:55Z" }
PIN Debit Purchase with Contact EMV
This section describes how to process a PIN debit purchase with contact EMV when the
customer inserts the card into the terminal.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for a PIN Debit Purchase with Contact EMV
- Cybersourceprovides the value for this field.
- Set this field toUA.
- Leave this field blank.
- Set this field toCARD.
- Set this field toDEBIT.
- Required only when the card has a sequence number configured on the EMV chip.
- Set this field tocontactless.
- Set this field to1.
- Set this field toretail.
REST Example: PIN Debit Purchase with Contact EMV
Request
{ "clientReferenceInformation": { "code": "ABC123", "partner": { "thirdPartyCertificationNumber": "PTP1234" } }, "processingInformation": { "commerceIndicator": "retail", "networkRoutingOrder": "VMHF" }, "paymentInformation": { "paymentType": { "name": "CARD", "subTypeName": "DEBIT" }, "card": { "useAs": "", "sourceAccountType": "UA" } }, "orderInformation": { "amountDetails": { "totalAmount": "202.00", "currency": "USD" } }, "pointOfSaleInformation": { "terminalId": "12345678", "entryMode": "contact", "terminalCapability": 4, "emv": { "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F26081E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005F2A0208409F0306000000000000", "cardSequenceNumber": "01" }, "trackData": ";4111111111111111=33121019761186800000?", "pinBlockEncodingFormat": "0",, "encryptedPin": "5D5FA5E5B448F33B", "encryptedKeySerialNumber": "FFFF1B1D140000200001" } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/payments/7012752230096541604951/voids" }, "self": { "method": "GET", "href": "/pts/v2/payments/7012752230096541604951" } }, "clientReferenceInformation": { "code": "ABC123" }, "id": "7012752230096541604951", "orderInformation": { "amountDetails": { "authorizedAmount": "202.00", "currency": "usd" } }, "processingInformation": { "reconciliationId": "7012752230096541604951" }, "processorInformation": { "systemTraceAuditNumber": "141924", "routing": { "network": "0000" }, "approvalCode": "831000", "retrievalReferenceNumber": "123456141924", "transactionId": "000000000000000", "responseCode": "00" }, "reconciliationId": "7012752230096541604951", "status": "AUTHORIZED", "submitTimeUtc": "2023-11-29T16:27:03Z" } { "_links": { "void": { "method": "POST", "href": "/pts/v2/payments/6883842752296552503964/voids" }, "self": { "method": "GET", "href": "/pts/v2/payments/6883842752296552503964" } }, "clientReferenceInformation": { "code": "ABC123" }, "id": "6883842752296552503964", "orderInformation": { "amountDetails": { "authorizedAmount": "24.00", "currency": "usd" } }, "processingInformation": { "reconciliationId": "6883842752296552503964" }, "processorInformation": { "systemTraceAuditNumber": "109328", "routing": { "network": "0000" }, "approvalCode": "831000", "retrievalReferenceNumber": "123456109328", "transactionId": "000000000000000", "responseCode": "00" }, "reconciliationId": "6883842752296552503964", "status": "AUTHORIZED", "submitTimeUtc": "2023-07-03T11:37:55Z" }
PIN Debit Purchase with Contactless EMV and Cash Back
This section describes how to process a PIN debit purchase with contactless EMV and cash
back.
Field Specific to This Use Case
This API field is specific to this use case:
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for a PIN Debit Purchase with Contactless EMV and Cash Back
- Cybersourceprovides the value for this field.
- Set this field toUA.
- Leave this field blank.
- Set this field toCARD.
- Set this field toDEBIT.
- Required only when the card has a sequence number configured on the EMV chip.
- Set this field tocontactless.
- Set this field toretail.
REST Example: PIN Debit Purchase with Contactless EMV and Cash Back
Request
{ "clientReferenceInformation": { "code": "ABC123", "partner": { "thirdPartyCertificationNumber": "PTP1234" } }, "processingInformation": { "commerceIndicator": "retail", "networkRoutingOrder": "GUFV" }, "paymentInformation": { "paymentType": { "name": "CARD", "subTypeName": "DEBIT" }, "card": { "useAs": "", "sourceAccountType": "UA" } }, "orderInformation": { "amountDetails": { "totalAmount": "204.00", "currency": "USD", "cashbackAmount": "45.00" } }, "pointOfSaleInformation": { "entryMode": "contactless", "terminalCapability": 4, "emv": { "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F26081E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005F2A0208409F0306000000000000", "cardSequenceNumber": "01" }, "trackData": ";4111111111111111=33121019761186800000?" } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/payments/6883842752296552503955/voids" }, "self": { "method": "GET", "href": "/pts/v2/payments/6883842752296552503955" } }, "clientReferenceInformation": { "code": "ABC123" }, "id": "6883842752296552503955", "orderInformation": { "amountDetails": { "authorizedAmount": "204.00", "currency": "usd" } }, "processingInformation": { "reconciliationId": "6883842752296552503955" }, "processorInformation": { "systemTraceAuditNumber": "109328", "routing": { "network": "0000" }, "approvalCode": "831000", "retrievalReferenceNumber": "123456109328", "transactionId": "000000000000000", "responseCode": "00" }, "reconciliationId": "6883842752296552503955", "status": "AUTHORIZED", "submitTimeUtc": "2023-07-03T11:37:55Z" }
PIN Debit Purchase with Swiped Track Data and Merchant Descriptors
This section describes how to process a PIN debit purchase with swiped track data and
merchant descriptors.
Fields Specific to This Use Case
These optional API request fields are specific to this use case:
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for a PIN Debit Purchase with Swiped Track Data and Merchant
Descriptors
- Cybersourceprovides the value for this field.
- Set this field toUA.
- Leave this field blank.
- Set this field toCARD.
- Set this field toDEBIT.
- Set this field toswiped.
- Set this field to1.
- Set this field toretail.
REST Example: PIN Debit Purchase with Swiped Track Data and Merchant Descriptors
Request
{ "clientReferenceInformation": { "code": "ABC1234", "partner": { "thirdPartyCertificationNumber": "PTP1234" } }, "processingInformation": { "commerceIndicator": "retail", "networkRoutingOrder": "GUFV" }, "paymentInformation": { "paymentType": { "name": "CARD", "subTypeName": "DEBIT" }, "card": { "useAs": "", "sourceAccountType": "UA" } }, "orderInformation": { "amountDetails": { "totalAmount": "202.00", "currency": "USD" } }, "merchantInformation": { "merchantDescriptor": { "name": "John Smith", "alternateName": "ABC Limited", "locality": "Austin", "country": "United States", "administrativeArea": "AL" } }, "pointOfSaleInformation": { "entryMode": "swiped", "terminalCapability": 4, "trackData": "%B4111111111111111^JONES/JONES ^3312101976110000868000000?;4111111111111111=33121019761186800000?", "pinBlockEncodingFormat": 1, "encryptedPin": "52F20658C04DB351", "encryptedKeySerialNumber": "FFFF1B1D140000000005" } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/payments/6883842752296552503995/voids" }, "self": { "method": "GET", "href": "/pts/v2/payments/6883842752296552503995" } }, "clientReferenceInformation": { "code": "ABC123" }, "id": "6883842752296552503995", "orderInformation": { "amountDetails": { "authorizedAmount": "24.00", "currency": "usd" } }, "processingInformation": { "reconciliationId": "6883842752296552503995" }, "processorInformation": { "systemTraceAuditNumber": "109328", "routing": { "network": "0000" }, "approvalCode": "831000", "retrievalReferenceNumber": "123456109328", "transactionId": "000000000000000", "responseCode": "00" }, "reconciliationId": "6883842752296552503995", "status": "AUTHORIZED", "submitTimeUtc": "2023-07-03T11:37:55Z" }
PIN Debit Partial Authorization with Swiped Track Data
This section describes how to process a PIN debit partial authorization with swiped track
data.
Fields Specific to This Use Case
This API request field is specific to this use case:
- Set this field totrue.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for a Swiped PIN Debit Partial Authorization
- Cybersourceprovides the value for this field.
- Set this field toUA.
- Leave this field blank.
- Set this field toCARD.
- Set this field toDEBIT.
- Set this field toswiped.
- Set this field to1.
- Set this field totrue.
- Set this field toretail.
REST Example: PIN Debit Partial Authorization with Swiped Track Data
Request
{ "clientReferenceInformation": { "code": "ABC1234", "partner": { "thirdPartyCertificationNumber": "PTP1234" } }, "processingInformation": { "commerceIndicator": "retail", "networkRoutingOrder": "GUFV", "authorizationOptions": { "partialAuthIndicator": "true" } }, "paymentInformation": { "paymentType": { "name": "CARD", "subTypeName": "DEBIT" }, "card": { "useAs": "", "sourceAccountType": "UA" } }, "orderInformation": { "amountDetails": { "totalAmount": "202.00", "currency": "USD" } }, "merchantInformation": { "merchantDescriptor": { "name": "John Smith", "alternateName": "ABC Limited", "locality": "Austin", "country": "United States", "administrativeArea": "AL" } }, "pointOfSaleInformation": { "entryMode": "swiped", "terminalCapability": "4", "trackData": "%B4111111111111111^JONES/JONES ^3312101976110000868000000?;4111111111111111=33121019761186800000?", "pinBlockEncodingFormat": 1, "encryptedPin": "52F20658C04DB351", "encryptedKeySerialNumber": "FFFF1B1D140000000005" } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/payments/6886788570426450204953/voids" }, "self": { "method": "GET", "href": "/pts/v2/payments/6886788570426450204953" } }, "clientReferenceInformation": { "code": "Pin Debit Purchase Using Swiped Track Data" }, "id": "6886788570426450204953", "orderInformation": { "amountDetails": { "authorizedAmount": "150.00", "currency": "usd" } }, "processingInformation": { "reconciliationId": "6886788570426450204953" }, "processorInformation": { "systemTraceAuditNumber": "111888", "routing": { "network": "0000" }, "approvalCode": "831000", "retrievalReferenceNumber": "123456111888", "transactionId": "000000000000000", "responseCode": "10" }, "reconciliationId": "6886788570426450204953", "status": "AUTHORIZED", "submitTimeUtc": "2023-07-06T21:27:37Z" }
PIN Debit Purchase with Contactless EMV and a Surcharge Fee
This section describes how to process a EMV PIN debit purchase with contactless EMV and a
surcharge fee.
Field Specific to This Use Case
This API request field is specific to this use case:
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for a PIN Debit Purchase with Contactless EMV and a Surcharge Fee
- Cybersourceprovides the value for this field.
- Set this field toUA.
- Leave this field blank.
- Set this field toCARD.
- Set this field toDEBIT.
- Required only when the card has a sequence number configured on the EMV chip.
- Set this field tocontactless.
- Set this field toretail.
REST Example: PIN Debit Purchase with Contactless EMV and a Surcharge Fee
Request
{ "clientReferenceInformation": { "code": "ABC123", "partner": { "thirdPartyCertificationNumber": "PTP1234" } }, "processingInformation": { "commerceIndicator": "retail", "networkRoutingOrder": "GUFV" }, }, "paymentInformation": { "paymentType": { "name": "CARD", "subTypeName": "DEBIT" }, "card": { "useAs": "", "sourceAccountType": "UA" } }, "orderInformation": { "amountDetails": { "totalAmount": "24.00", "currency": "USD", "surcharge": { "amount": "-20.00" } } }, "pointOfSaleInformation": { "entryMode": "contactless", "terminalCapability": 4, "emv": { "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F26081E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005F2A0208409F0306000000000000", "cardSequenceNumber": "01" }, "trackData": ";4111111111111111=33121019761186800000?" } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/payments/6883842752296552503964/voids" }, "self": { "method": "GET", "href": "/pts/v2/payments/6883842752296552503964" } }, "clientReferenceInformation": { "code": "ABC123" }, "id": "6883842752296552503964", "orderInformation": { "amountDetails": { "authorizedAmount": "24.00", "currency": "usd" } }, "processingInformation": { "reconciliationId": "6883842752296552503964" }, "processorInformation": { "systemTraceAuditNumber": "109328", "routing": { "network": "0000" }, "approvalCode": "831000", "retrievalReferenceNumber": "123456109328", "transactionId": "000000000000000", "responseCode": "00" }, "reconciliationId": "6883842752296552503964", "status": "AUTHORIZED", "submitTimeUtc": "2023-07-03T11:37:55Z" }
PIN Debit Balance Inquiry with Contactless EMV
This section describes how to process a PIN debit balance inquiry with contactless EMV.
Fields Specific to This Use Case
This API request field and value is specific to this use case:
- processingInformation.authorizationOptions.balanceInquiry
- Set this field totrue.
These API response fields are returned in this use case:
- paymentInformation.accountFeatures.accountType
- paymentInformation.accountFeatures.balanceAmount
- paymentInformation.accountFeatures.balanceAmountType
- paymentInformation.accountFeatures.balanceSign
- paymentInformation.accountFeatures.currency
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for a PIN Debit Balance Inquiry with Contactless EMV
- Set this field to0.00.
- Set this field toUA.
- Leave this field blank.
- Set this field toCARD.
- Set this field toDEBIT.
- Required only when the card has a sequence number configured on the EMV chip.
- Set this field tocontactless.
- Set this field totrue.
- Set this field toretail.
REST Example: PIN Debit Balance Inquiry with Contactless EMV
Request
{ "clientReferenceInformation": { "code": "ABC123", "partner": { "thirdPartyCertificationNumber": "PTP1234" } }, "processingInformation": { "commerceIndicator": "retail", "authorizationOptions": { "balanceInquiry": "true" } }, "paymentInformation": { "paymentType": { "name": "CARD", "subTypeName": "DEBIT" }, "card": { "useAs": "", "sourceAccountType": "UA" } }, "merchantInformation": { "transactionLocalDateTime": "20200323103021" }, "orderInformation": { "amountDetails": { "totalAmount": "0.00", "currency": "USD" } }, "pointOfSaleInformation": { "entryMode": "contactless", "terminalCapability": 4, "emv": { "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F26081E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005F2A0208409F0306000000000000", "cardSequenceNumber": "01" }, "trackData": ";4111111111111111=33121019761186800000?" } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/payments/6898513109826580904004/voids" }, "self": { "method": "GET", "href": "/pts/v2/payments/6898513109826580904004" } }, "clientReferenceInformation": { "code": "ABC123" }, "id": "6898513109826580904004", "orderInformation": { "amountDetails": { "authorizedAmount": "0.00", "currency": "usd" } }, "paymentInformation": { "accountFeatures": { "balances": [ { "amountType": "02", "amount": "+20.00", "accountType": "00", "currency": "usd" } ] } } }, "processingInformation": { "reconciliationId": "6898513109826580904004" }, "processorInformation": { "systemTraceAuditNumber": "191877", "routing": { "network": "0000" }, "approvalCode": "831000", "retrievalReferenceNumber": "123456191877", "transactionId": "016153570198200", "responseCode": "00" }, "reconciliationId": "6898513109826580904004", "status": "AUTHORIZED", "submitTimeUtc": "2023-07-20T11:08:31Z" }
PIN Debit Balance Inquiry with Swiped Track Data
This section describes how to process a PIN debit balance inquiry with swiped track data.
Fields Specific to This Use Case
This API request field and value is specific to this use case:
- processingInformation.authorizationOptions.balanceInquiry
- Set this field totrue.
These API response fields are returned in this use case:
- paymentInformation.accountFeatures.accountType
- paymentInformation.accountFeatures.balanceAmount
- paymentInformation.accountFeatures.balanceAmountType
- paymentInformation.accountFeatures.balanceSign
- paymentInformation.accountFeatures.currency
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for a PIN Debit Balance Inquiry with Swiped Track Data
- Set this field to0.00.
- Set this field toUA.
- Leave this field blank.
- Set this field toCARD.
- Set this field toDEBIT.
- Set this field toswiped.
- Set this field to1.
- Set this field totrue.
- Set this field toretail.
REST Example: PIN Debit Balance Inquiry with Swiped Track Data
Request
{ "clientReferenceInformation": { "code": "ABC123", "partner": { "thirdPartyCertificationNumber": "PTP1234" } }, "processingInformation": { "commerceIndicator": "retail", "authorizationOptions": { "balanceInquiry": "true" } }, "merchantInformation": { "transactionLocalDateTime": "20200323103021" }, "orderInformation": { "amountDetails": { "totalAmount": "0.00", "currency": "USD" } }, "paymentInformation": { "paymentType": { "name": "CARD", "subTypeName": "DEBIT" }, "card": { "useAs": "", "sourceAccountType": "UA" } }, "pointOfSaleInformation": { "entryMode": "swiped", "terminalCapability": 4, "pinBlockEncodingFormat": 1, "encryptedPin": "52F20658C04DB351", "encryptedKeySerialNumber": "FFFF1B1D140000000005", "trackData": "%B4111111111111111^JONES/JONES ^3112101976110000868000000?;4111111111111111=33121019761186800000?" } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/payments/6879489725216492803092/voids" }, "self": { "method": "GET", "href": "/pts/v2/payments/6879489725216492803092" } }, "clientReferenceInformation": { "code": "987654321" }, "id": "6879489725216492803092", "orderInformation": { "amountDetails": { "authorizedAmount": "0.00", "currency": "usd" } }, "paymentInformation": { "accountFeatures": { "balances": [ { "amountType": "02", "amount": "+20.00", "accountType": "00", "currency": "usd" } ] } } }, "processingInformation": { "reconciliationId": "6879489725216492803092" }, "processorInformation": { "systemTraceAuditNumber": "837760", "routing": { "network": "0000" }, "approvalCode": "831000", "retrievalReferenceNumber": "123456837760", "transactionId": "016153570198200", "responseCode": "00" }, "reconciliationId": "6879489725216492803092", "status": "AUTHORIZED", "submitTimeUtc": "2023-06-28T10:42:52Z" }
PIN Debit Credit with Swiped Track Data
This section describes how to process a PIN debit credit with swiped track data.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/credits/Test:
POST
https://apitest.cybersource.com
/pts/v2/credits/Required Fields for a PIN Debit Credit with Swiped Track Data
- Cybersourceprovides the value for this field.
- Set this field toUA.
- Leave this field blank.
- Set this field toCARD.
- Set this field toDEBIT.
- Set this field toswiped.
- Set this field toretail.
REST Example: PIN Debit Credit with Swiped Track Data
Request
{ "clientReferenceInformation": { "code": "Pin Debit Credit Swiped Track Data", "partner": { "thirdPartyCertificationNumber": "PTP1234" } }, "processingInformation": { "commerceIndicator": "retail", "networkRoutingOrder": "GUFV" }, "paymentInformation": { "paymentType": { "name": "CARD", "subTypeName": "DEBIT" }, "card": { "useAs": "", "sourceAccountType": "UA" } }, "orderInformation": { "amountDetails": { "totalAmount": "202.00", "currency": "USD" } }, "pointOfSaleInformation": { "entryMode": "swiped", "terminalCapability": 4, "trackData": "%B4111111111111111^JONES/JONES ^3312101976110000868000000?;4111111111111111=33121019761186800000?" } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/credits/6886766930876811204951/voids" }, "self": { "method": "GET", "href": "/pts/v2/credits/6886766930876811204951" } }, "clientReferenceInformation": { "code": "ABC1234" }, "creditAmountDetails": { "currency": "usd", "creditAmount": "202.00" }, "id": "6886766930876811204951", "orderInformation": { "amountDetails": { "currency": "usd" } }, "processingInformation": { "reconciliationId": "6886766930876811204951" }, "processorInformation": { "systemTraceAuditNumber": "120775", "routing": { "network": "0000" }, "approvalCode": "831000", "retrievalReferenceNumber": "123456120775", "transactionId": "000000000000000", "responseCode": "00" }, "reconciliationId": "6886766930876811204951", "status": "AUTHORIZED", "submitTimeUtc": "2023-06-22T15:50:58Z" }
PIN Debit Credit with Contactless EMV
This section describes how to process a PIN debit credit with contactless EMV.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/credits/Test:
POST
https://apitest.cybersource.com
/pts/v2/credits/Required Fields for a PIN Debit Credit with Contactless EMV
- Cybersourceprovides the value for this field.
- Set this field toUA.
- Leave this field blank.
- Set this field toCARD.
- Set this field toDEBIT.
- Required only when the card has a sequence number configured on the EMV chip.
- Set this field tocontactless.
- Set this field toretail.
REST Example: PIN Debit Credit with Contactless EMV
Request
{ "clientReferenceInformation": { "code": "ABC1234", "partner": { "thirdPartyCertificationNumber": "PTP1234" } }, "processingInformation": { "commerceIndicator": "retail", "networkRoutingOrder": "GUFV" }, "paymentInformation": { "paymentType": { "name": "CARD", "subTypeName": "DEBIT" }, "card": { "useAs": "", "sourceAccountType": "UA" } }, "orderInformation": { "amountDetails": { "totalAmount": "202.00", "currency": "USD" } }, "pointOfSaleInformation": { "entryMode": "contactless", "terminalCapability": 4, "emv": { "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F26081E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005F2A0208409F0306000000000000", "cardSequenceNumber": "01" }, "trackData": "%B4111111111111111^JONES/JONES ^3312101976110000868000000?;4111111111111111=33121019761186800000?" } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/credits/6886766930876811204951/voids" }, "self": { "method": "GET", "href": "/pts/v2/credits/6886766930876811204951" } }, "clientReferenceInformation": { "code": "ABC1234" }, "creditAmountDetails": { "currency": "usd", "creditAmount": "202.00" }, "id": "6886766930876811204951", "orderInformation": { "amountDetails": { "currency": "usd" } }, "processingInformation": { "reconciliationId": "6886766930876811204951" }, "processorInformation": { "systemTraceAuditNumber": "120775", "routing": { "network": "0000" }, "approvalCode": "831000", "retrievalReferenceNumber": "123456120775", "transactionId": "000000000000000", "responseCode": "00" }, "reconciliationId": "6886766930876811204951", "status": "AUTHORIZED", "submitTimeUtc": "2023-06-22T15:50:58Z" }
Reverse a PIN Debit Purchase or Credit
This section describes how to request a merchant-initiated reversal for a PIN debit purchase
or credit when you do not receive a response message for your original transaction request.
Send the merchant-initiated reversal request to the voids endpoint.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/payments/{id}
/voidsTest:
POST
https://apitest.cybersource.com
/pts/v2/payments/{id}
/voidsThe is the transaction ID returned in the
purchase response.
{id}
Required Fields to Reverse a PIN Debit Purchase or Credit
- Cybersourceprovides the value for this field.
- Set this field toUA.
- Leave this field blank.
- Set this field toCARD.
- Set this field toDEBIT.
REST Example: Reverse a PIN Debit Purchase or Credit
Request
{ "clientReferenceInformation": { "code": "ABC1234", "transactionId": "2759375893", "partner": { "thirdPartyCertificationNumber": "PTP1234" } }, "orderInformation": { "amountDetails": { "totalAmount": "202.00", "currency": "USD" } }, "paymentInformation": { "paymentType": { "name": "CARD", "subTypeName": "DEBIT" }, "card": { "useAs": "", "sourceAccountType": "UA" } } }
Response to a Successful Request
{ "_links": { "self": { "method": "GET", "href": "/pts/v2/payments/6869126948216005803117" } }, "clientReferenceInformation": { "code": "ABC1234", "transactionId": "2759375893" }, "id": "6869126948216005803117", "orderInformation": { "amountDetails": { "currency": "usd" } }, "processorInformation": { "retrievalReferenceNumber": "123456827618", "responseCode": "00" }, "reconciliationId": "6869126890096005703117", "status": "REVERSED", "submitTimeUtc": "2023-06-16T10:51:35Z", "voidAmountDetails": { "currency": "usd", "voidAmount": "202.00" } }
PIN Debit EBT Purchase with a SNAP Voucher
This section describes how to process a PIN debit EBT purchase with a SNAP voucher.
Fields Specific to This Use Case
These API request fields and values are specific to this use case:
- Set this field toFOOD.
- Set this field totrue.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for a PIN Debit EBT Purchase with a SNAP Voucher
- Cybersourceprovides the value for this field.
- Set this field toUA.
- Leave this field blank.
- Set this field toCARD.
- Set this field toDEBIT.
- Set this field tokeyed.
- Set this field toretail.
- Set this field toFOOD.
- Set this field totrue.
REST Example: PIN Debit EBT Purchase with a SNAP Voucher
Request
{ "clientReferenceInformation": { "code": "ABCD123", "partner": { "thirdPartyCertificationNumber": "PTP1234" } }, "processingInformation": { "commerceIndicator": "retail", "purchaseOptions": { "isElectronicBenefitsTransfer": "true" }, "electronicBenefitsTransfer": { "category": "FOOD", "voucherSerialNumber": "123451234512345" }, "networkRoutingOrder": "K" }, }, "paymentInformation": { "card": { "number": "4012xxxxxxxxxxxx", "expirationMonth": "12", "expirationYear": "25", "useAs": "", "sourceAccountType": "UA" }, "paymentType": { "name": "CARD", "subTypeName": "DEBIT" } }, "orderInformation": { "amountDetails": { "totalAmount": "103.00", "currency": "USD" } }, "pointOfSaleInformation": { "entryMode": "keyed", "terminalCapability": "4", "trackData": "%B4111111111111111^JONES/JONES ^3112101976110000868000000?;4111111111111111=33121019761186800000?" } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/payments/6898886939816860704951/voids" }, "self": { "method": "GET", "href": "/pts/v2/payments/6898886939816860704951" } }, "clientReferenceInformation": { "code": "ABCD123" }, "id": "6898886939816860704951", "orderInformation": { "amountDetails": { "authorizedAmount": "103.00", "currency": "usd" } }, "processingInformation": { "reconciliationId": "6898886939816860704951" }, "processorInformation": { "systemTraceAuditNumber": "110391", "routing": { "network": "0029" }, "approvalCode": "831000", "retrievalReferenceNumber": "123456199278", "transactionId": "000000000000000", "responseCode": "00" }, "reconciliationId": "6898886939816860704951", "status": "AUTHORIZED", "submitTimeUtc": "2023-07-03T12:02:34Z" }
PIN Debit EBT Purchase with SNAP Account Swiped Track Data
This section describes how to process a PIN debit EBT purchase with a SNAP account swiped
track data.
Fields Specific to This Use Case
These API request fields and values are specific to this use case:
- processingInformation.electronicBenefitsTransfer.category
- Set this field toFOOD.
- processingInformation.purchaseOptions.isElectronicBenefitsTransfer
- Set this field totrue.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for a PIN Debit EBT Purchase with SNAP Account Swiped Track
Data
- Cybersourceprovides the value for this field.
- Set this field toUA.
- Leave this field blank.
- Set this field toCARD.
- Set this field toDEBIT.
- Set this field toswiped.
- Set this field to1.
- Set this field toretail.
- Set this field toFOOD.
- Set this field totrue.
REST Example: PIN Debit EBT Purchase with SNAP Account Swiped Track Data
Request
{ "clientReferenceInformation": { "code": "ABC123", "partner": { "thirdPartyCertificationNumber": "PTP1234" } }, "processingInformation": { "commerceIndicator": "retail", "purchaseOptions": { "isElectronicBenefitsTransfer": true }, "electronicBenefitsTransfer": { "category": "FOOD" }, "networkRoutingOrder": "K" }, "paymentInformation": { "paymentType": { "name": "CARD", "subTypeName": "DEBIT" }, "card": { "useAs": "", "sourceAccountType": "UA" } }, "orderInformation": { "amountDetails": { "totalAmount": "101.00", "currency": "USD" } }, "pointOfSaleInformation": { "entryMode": "swiped", "terminalCapability": 4, "trackData": "%B4111111111111111^JONES/JONES ^3112101976110000868000000?;4111111111111111=33121019761186800000?", "pinBlockEncodingFormat": 1, "encryptedPin": "52F20658C04DB351", "encryptedKeySerialNumber": "FFFF1B1D140000000005" } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/payments/6883856591656519703954/voids" }, "self": { "method": "GET", "href": "/pts/v2/payments/6883856591656519703954" } }, "clientReferenceInformation": { "code": "ABC123" }, "id": "6883856591656519703954", "orderInformation": { "amountDetails": { "authorizedAmount": "101.00", "currency": "usd" } }, "processingInformation": { "reconciliationId": "6883856591656519703954" }, "processorInformation": { "systemTraceAuditNumber": "113647", "routing": { "network": "0029" }, "approvalCode": "831000", "retrievalReferenceNumber": "123456113647", "transactionId": "000000000000000", "responseCode": "00" }, "reconciliationId": "6883856591656519703954", "status": "AUTHORIZED", "submitTimeUtc": "2023-07-03T12:00:59Z" }
PIN Debit EBT Purchase with SNAP Account Swiped Track Data and Balance Inquiry
This section describes how to process a PIN debit EBT purchase with SNAP account swiped
track data and balance inquiry.
Fields Specific to This Use Case
These API request fields and values are specific to this use case:
- processingInformation.authorizationOptions.balanceInquiry
- Set this field totrue.
- processingInformation.electronicBenefitsTransfer.category
- Set this field toFOOD.
- processingInformation.purchaseOptions.isElectronicBenefitsTransfer
- Set this field totrue.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for a PIN Debit EBT Purchase with SNAP Account Swiped Track Data and
Balance Inquiry
- Set this field to0.00.
- Set this field toUA.
- Leave this field blank.
- Set this field toCARD.
- Set this field toDEBIT.
- Set this field toswiped.
- Set this field to1.
- Set this field totrue.
- Set this field toretail.
- Set this field toFOOD.
- Set this field totrue.
REST Example: PIN Debit EBT Purchase with SNAP Account Swiped Track Data and Balance
Inquiry
Request
{ "clientReferenceInformation": { "code": "ABC123", "partner": { "thirdPartyCertificationNumber": "PTP1234" } }, "processingInformation": { "commerceIndicator": "retail", "purchaseOptions": { "isElectronicBenefitsTransfer": true }, "electronicBenefitsTransfer": { "category": "FOOD" }, "networkRoutingOrder": "K" }, "authorizationOptions": { "balanceInquiry": "true" }, "paymentInformation": { "paymentType": { "name": "CARD", "subTypeName": "DEBIT" }, "card": { "useAs": "", "sourceAccountType": "UA" } }, "orderInformation": { "amountDetails": { "totalAmount": "60.00", "currency": "USD" } }, "pointOfSaleInformation": { "entryMode": "swiped", "terminalCapability": 4, "trackData": "%B4111111111111111^JONES/JONES ^3112101976110000868000000?;4111111111111111=33121019761186800000?", "pinBlockEncodingFormat": 1, "encryptedPin": "52F20658C04DB351", "encryptedKeySerialNumber": "FFFF1B1D140000000005" } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/payments/6899394241866346704953/voids" }, "self": { "method": "GET", "href": "/pts/v2/payments/6899394241866346704953" } }, "clientReferenceInformation": { "code": "ABC123" }, "id": "6899394241866346704953", "orderInformation": { "amountDetails": { "authorizedAmount": "60.00", "currency": "usd" } }, "paymentInformation": { "tokenizedCard": { "requestorId": "41111111111", "assuranceLevel": "AB" }, "accountFeatures": { "accountStatus": "R", "balances": [ { "amountType": "03", "amount": "+30.00", "accountType": "98", "currency": "usd" }, { "amountType": "03", "amount": "+50.00", "accountType": "98", "currency": "usd" } ] }, "card": { "suffix": "1234" } }, "processingInformation": { "reconciliationId": "6899394241866346704953" }, "processorInformation": { "systemTraceAuditNumber": "108522", "routing": { "network": "0002" }, "approvalCode": "831000", "retrievalReferenceNumber": "123456108522", "transactionId": "016153570198200", "responseCode": "00" }, "reconciliationId": "6899394241866346704953", "status": "AUTHORIZED", "submitTimeUtc": "2023-07-21T12:00:59Z" }
PIN Debit EBT Purchase with a Cash Benefits Account Swiped Track Data and Cash
Back
This section describes how to process a PIN debit EBT purchase with a cash benefits
account swiped track data and cash back.
Fields Specific to This Use Case
These API request fields and values are specific to this use case:
- processingInformation.electronicBenefitsTransfer.category
- Set this field toCASH.
- processingInformation.purchaseOptions.isElectronicBenefitsTransfer
- Set this field totrue.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for a PIN Debit EBT Purchase with a Cash Benefits Account Swiped Track
Data and Cash Back
- Cybersourceprovides the value for this field.
- Set this field toUA.
- Leave this field blank.
- Set this field toCARD.
- Set this field toDEBIT.
- Set this field toswiped.
- Set this field to1.
- Set this field toretail.
- Set this field toCASH.
- Set this field totrue.
REST Example: PIN Debit EBT Purchase with a Cash Benefits Account Swiped Track Data and Cash Back
Request
{ "clientReferenceInformation": { "code": "ABC1234", "partner": { "thirdPartyCertificationNumber": "PTP1234" } }, "processingInformation": { "commerceIndicator": "retail", "purchaseOptions": { "isElectronicBenefitsTransfer": true }, "electronicBenefitsTransfer": { "category": "CASH" }, "networkRoutingOrder": "K" }, "paymentInformation": { "card": { "type": "001", "useAs": "", "sourceAccountType": "UA" }, "paymentType": { "name": "CARD", "subTypeName": "DEBIT" } }, "orderInformation": { "amountDetails": { "totalAmount": "702.00", "currency": "USD", "cashbackAmount": "45.00" } }, "pointOfSaleInformation": { "entryMode": "swiped", "terminalCapability": 4, "trackData": "%B4111111111111111^JONES/JONES ^3112101976110000868000000?;4111111111111111=33121019761186800000?", "pinBlockEncodingFormat": 1, "encryptedPin": "52F20658C04DB351", "encryptedKeySerialNumber": "FFFF1B1D140000000005" } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/payments/6898891873156928404951/voids" }, "self": { "method": "GET", "href": "/pts/v2/payments/6898891873156928404951" } }, "clientReferenceInformation": { "code": "ABC1234" }, "id": "6898891873156928404951", "orderInformation": { "amountDetails": { "authorizedAmount": "702.00", "currency": "usd" } }, "processingInformation": { "reconciliationId": "6898891873156928404951" }, "processorInformation": { "systemTraceAuditNumber": "188477", "routing": { "network": "0029" }, "approvalCode": "831000", "retrievalReferenceNumber": "123456188477", "transactionId": "000000000000000", "responseCode": "00" }, "reconciliationId": "6898891873156928404951", "status": "AUTHORIZED", "submitTimeUtc": "2023-07-03T12:05:01Z" }
Credit a PIN Debit EBT Purchase with SNAP Account
This section describes how to credit a PIN debit EBT purchase with a SNAP account.
Fields Specific to This Use Case
These API request fields and values are specific to this use case:
- processingInformation.electronicBenefitsTransfer.category
- Set this field toFOOD.
- processingInformation.purchaseOptions.isElectronicBenefitsTransfer
- Set this field totrue.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/credits/Test:
POST
https://apitest.cybersource.com
/pts/v2/credits/Required Fields to Credit a PIN Debit EBT Purchase with SNAP Account
- Cybersourceprovides the value for this field.
- Set this field toUA.
- Leave this field blank.
- Set this field toCARD.
- Set this field toDEBIT.
- Set this field toswiped.
- Set this field to1.
- Set this field toretail.
- Set this field toFOOD.
- Set this field totrue.
REST Example: Credit a PIN Debit EBT Purchase with SNAP Account
Request
{ "clientReferenceInformation": { "code": "ABC1234", "partner": { "thirdPartyCertificationNumber": "PTP1234" } }, "processingInformation": { "commerceIndicator": "retail", "networkRoutingOrder": "K", "purchaseOptions": { "isElectronicBenefitsTransfer": true }, "electronicBenefitsTransfer": { "category": "FOOD" } }, "paymentInformation": { "card": { "type": "001" }, "paymentType": { "name": "CARD", "subTypeName": "DEBIT" } }, "orderInformation": { "amountDetails": { "totalAmount": "204.00", "currency": "USD" }, "card": { "useAs": "", "sourceAccountType": "UA" } }, "merchantInformation": { "categoryCode": "5411" }, "pointOfSaleInformation": { "entryMode": "swiped", "terminalCapability": 4, "trackData": "%B4111111111111111^JONES/JONES ^3312101976110000868000000?;4111111111111111=33121019761186800000?", "pinBlockEncodingFormat": 1, "encryptedPin": "52F20658C04DB351", "encryptedKeySerialNumber": "FFFF1B1D140000000005" } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/credits/6898900347906058304951/voids" }, "self": { "method": "GET", "href": "/pts/v2/credits/6898900347906058304951" } }, "clientReferenceInformation": { "code": "Merchandise Return / Credit Voucher from SNAP" }, "creditAmountDetails": { "currency": "usd", "creditAmount": "204.00" }, "id": "6898900347906058304951", "orderInformation": { "amountDetails": { "currency": "usd" } }, "processingInformation": { "reconciliationId": "6898900347906058304951" }, "processorInformation": { "systemTraceAuditNumber": "188586", "routing": { "network": "0029" }, "approvalCode": "831000", "retrievalReferenceNumber": "123456188586", "transactionId": "000000000000000", "responseCode": "00" }, "reconciliationId": "6898900347906058304951", "status": "AUTHORIZED", "submitTimeUtc": "2023-07-20T21:53:55Z" }
Reverse a PIN Debit EBT Purchase
This section describes how to reverse a PIN debit EBT purchase.
You can reverse these types of transactions:
- Purchase from a cash benefits account
- Purchase from a SNAP account
- Purchase manually entered from a SNAP account
- Electronic voucher purchase from a SNAP account
Send the reversal request to the voids endpoint.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/payments/{id}
/voidsTest:
POST
https://apitest.cybersource.com
/pts/v2/payments/{id}
/voidsThe is the transaction ID returned in the
purchase response.
{id}
Required Fields to Reverse a PIN Debit EBT Purchase
- Cybersourceprovides the value for this field.
- Set this field toUA.
- Leave this field blank.
- Set this field toCARD.
- Set this field toDEBIT.
REST Example: Reverse a PIN Debit EBT Purchase
Request
{ "clientReferenceInformation": { "code": "ABC1234", "partner": { "thirdPartyCertificationNumber": "PTP1234" } }, "paymentInformation": { "paymentType": { "name": "CARD", "subTypeName": "DEBIT" }, "card": { "useAs": "", "sourceAccountType": "UA" } }, "orderInformation": { "amountDetails": { "totalAmount": "101.00", "currency": "USD" } } }
Response to a Successful Request
{ "_links": { "self": { "method": "GET", "href": "/pts/v2/payments/6898911623526032004953" } }, "clientReferenceInformation": { "code": "ABC1234" }, "id": "6898911623526032004953", "orderInformation": { "amountDetails": { "currency": "usd" } }, "processorInformation": { "retrievalReferenceNumber": "123456188670", "responseCode": "00" }, "reconciliationId": "6898907727276183604951", "status": "REVERSED", "submitTimeUtc": "2023-07-20T22:12:42Z", "voidAmountDetails": { "currency": "usd", "voidAmount": "101.00" } }
Mobile Point-of-Sale Payment Services
Using software-based, mobile point-of-sale (mPOS) solutions enables you to accept
card-present contactless transactions on your mobile device, with or without PIN entry.
When processing mPOS transactions, the API request must include mPOS indicators. These
indicators enable acquirers and issuers to differentiate between software- and
hardware-based mPOS solutions.
Supported Mobile Point-of-Sale Solutions
Card Present Connect supports these mPOS solutions for authorization and sale
transactions:
- mPOS payments using an embedded reader and software PIN entry
- This solution is used to process mobile point-of-sale (mPOS) transactions using an embedded reader with software PIN entry. The customer taps a contactless card or payment-enabled smartphone, smart watch, or other wearable device over a contactless-enabled reader and then enters their PIN on the embedded reader to verify their identity.
- Also known asTap To Phone with PIN.
- mPOS using an embedded reader and software with no PIN entry
- This solution is used to process mobile point-of-sale (mPOS) transactions using an embedded reader and software with no PIN entry. The customer taps a contactless card or payment-enabled smartphone, smart watch, or other wearable device over a contactless-enabled reader. No PIN entry is required because each transaction is accompanied by a unique token (one-time code), similar to contact EMV transactions.
- Also known asTap To Phone with no PIN.
- mPOS payments using an external, contact-only reader with no PIN entry
- This solution is used to process mobile point-of-sale (mPOS) transactions using an external, contact-only reader with no PIN entry. These are some of the features of this payment method:
- Dongle or other specialized card-reader hardware
- EMV chip-compatible
- No PIN entry required
- Previously known aschip-capable mPOSorchip-only mPOS.
- mPOS payments using an external reader and hardware PIN entry
- This solution is used to process mobile point-of-sale (mPOS) transactions using an external reader with hardware PIN entry. These are some of the features of this payment method:
- Dongle or other specialized card-reader hardware
- External hardware PIN pad
- PIN entry required to verify customer identity
- Previously known ashybrid mPOSorchip-only mPOS.
- mPOS payments using an external reader and software PIN entry
- This solution is used to process mobile point-of-sale (mPOS) transactions using an external reader with software PIN entry. These are some of the features of this payment method:
- Dongle or other specialized card-reader hardware
- PIN pad on device screen
- PIN entry required to verify customer identity
- Also known asSPoC.
Authorization with an mPOS Using an Embedded Reader and Software PIN Entry
This section describes how to process a mobile point-of-sale (mPOS) authorization using an
embedded reader with software PIN entry. This type of transaction is also known as a Tap
to Phone with PIN transaction.
Fields Specific To This Use Case
These API fields and values are specific to this use case:
- Set this field toPCI-SPoC.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for Processing an Authorization with an mPOS Using an Embedded Reader and
Software PIN Entry
- Cybersourceprovides the value for this field.
- Set this field tocontactless.
- Set this field toPCI-SPoC.
- Set this field toretail.
Mastercard-Specific Field
- Set this field to1.
REST Example: Processing an Authorization with an mPOS Using an Embedded Reader and
Software PIN Entry for Mastercard
Request
{ "clientReferenceInformation" : { "code" : "123456", "transactionId": "12233445677", "partner": { "thirdPartyCertificationNumber":"123456789012" } }, "processingInformation": { "commerceIndicator": "retail" } }, "pointOfSaleInformation": { "trackData": "%B4111111111111111^TEST/CYBS ^2512201019761100 00868000000?;", "catLevel": "6", "isDedicatedHardwareTerminal": "1", "terminalPinCapability": "4", "pinEntrySolution": "PCI-SPoC", "emv": { "cardSequenceNumber": "01", "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F260 81E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005 F2A0208409F0306000000000000" }, "entryMode": "contactless", "terminalCapability": "4" }, "paymentInformation": { "card": { "type": "002" } }, "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "currency": "USD" } } }
Response for a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6873925966666764004953" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/captures" } }, "clientReferenceInformation": { "code": "123456" }, "id": "6873925966666764004953", "orderInformation": { "amountDetails": { "authorizedAmount": "9900.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "002" } }, "paymentInformation": { "tokenizedCard": { "type": "002" }, "card": { "type": "002" } }, "pointOfSaleInformation": { "terminalId": "111111", "emv": { "tags": "9F02060000000009009C01009A030608025F2A0209789F1A0208409F260856BF2 99472BDB0C782025C009F360245679F370412135414950540800080009F1E04001122339F1020060 11A03900000112233445566778899AABBCCDD0390000011223344556677889F5301039F410301223 39F03060001020304058407A00000000410109F2701809F34035E03009F090243219F3501059F330 3E0B8C89110001122334455667788010203040506079F5B1000112233445566778801020304050607" } }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "1" } }, "reconciliationId": "718515862J420LJ2", "status": "AUTHORIZED", "submitTimeUtc": "2023-06-22T00:09:56Z" }
REST Example: Processing an Authorization with an mPOS Using an Embedded Reader and
Software PIN Entry for Visa
Request
{ "clientReferenceInformation" : { "code" : "123456", "transactionId": "12233445677", "partner": { "thirdPartyCertificationNumber":"123456789012" } }, "processingInformation": { "commerceIndicator": "retail" } }, "pointOfSaleInformation": { "trackData": "%B4111111111111111^TEST/CYBS ^2512201019761100 00868000000?;", "catLevel": "6", "terminalPinCapability": "4", "pinEntrySolution": "PCI-SPoC", "emv": { "cardSequenceNumber": "01", "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F260 81E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005 F2A0208409F0306000000000000" }, "entryMode": "contactless", "terminalCapability": "4" }, "paymentInformation": { "card": { "type": "001" } }, "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "currency": "USD" } } }
Response for a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6873925966666764004953" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/captures" } }, "clientReferenceInformation": { "code": "123456" }, "id": "6873925966666764004953", "orderInformation": { "amountDetails": { "authorizedAmount": "9900.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "tokenizedCard": { "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "terminalId": "111111", "emv": { "tags": "9F02060000000009009C01009A030608025F2A0209789F1A0208409F260856BF2 99472BDB0C782025C009F360245679F370412135414950540800080009F1E04001122339F1020060 11A03900000112233445566778899AABBCCDD0390000011223344556677889F5301039F410301223 39F03060001020304058407A00000000410109F2701809F34035E03009F090243219F3501059F330 3E0B8C89110001122334455667788010203040506079F5B1000112233445566778801020304050607" } }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "1" } }, "reconciliationId": "718515862J420LJ2", "status": "AUTHORIZED", "submitTimeUtc": "2023-06-22T00:09:56Z" }
Authorization with an mPOS Using an Embedded Reader and Software with No PIN
Entry
This section describes how to process a mobile point-of-sale (mPOS) authorization using
an embedded reader and software with no PIN entry. This type of transaction is also
known as a Tap to Phone with no PIN transaction.
Fields Specific to This Use Case
These API fields and values are specific to this use case:
- Set this field toPCI-SPoC.
- Set this field to0.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for Processing an Authorization with an mPOS Using an Embedded Reader and
Software with No PIN Entry
- Cybersourceprovides the value for this field.
- Set this field tocontactless.
- Set this field toPCI-SPoC.
- Set this field to4.
- Set this field to0.
- Set this field toretail.
Mastercard-Specific Field
- Set this field to1.
REST Example: Processing an Authorization with an mPOS Using an Embedded Reader and
Software with No PIN Entry for Mastercard
Request
{ "clientReferenceInformation" : { "code" : "123456", "transactionId": "12233445677", "partner": { "thirdPartyCertificationNumber":"123456789012" } }, "processingInformation": { "commerceIndicator": "retail" } }, "pointOfSaleInformation": { "trackData": "%B4111111111111111^TEST/CYBS ^2512201019761100 00868000000?;", "catLevel": "6", "isDedicatedHardwareTerminal": "1", "terminalPinCapability": "0", "pinEntrySolution": "PCI-SPoC", "emv": { "cardSequenceNumber": "01", "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F260 81E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005 F2A0208409F0306000000000000" }, "entryMode": "contactless", "terminalCapability": "4" }, "paymentInformation": { "card": { "type": "002" } }, "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "currency": "USD" } } }
Response for a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6873925966666764004953" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/captures" } }, "clientReferenceInformation": { "code": "123456" }, "id": "6873925966666764004953", "orderInformation": { "amountDetails": { "authorizedAmount": "9900.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "002" } }, "paymentInformation": { "tokenizedCard": { "type": "002" }, "card": { "type": "002" } }, "pointOfSaleInformation": { "terminalId": "111111", "emv": { "tags": "9F02060000000009009C01009A030608025F2A0209789F1A0208409F260856BF2 99472BDB0C782025C009F360245679F370412135414950540800080009F1E04001122339F1020060 11A03900000112233445566778899AABBCCDD0390000011223344556677889F5301039F410301223 39F03060001020304058407A00000000410109F2701809F34035E03009F090243219F3501059F330 3E0B8C89110001122334455667788010203040506079F5B1000112233445566778801020304050607" } }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "1" } }, "reconciliationId": "718515862J420LJ2", "status": "AUTHORIZED", "submitTimeUtc": "2023-06-22T00:09:56Z" }
REST Example: Processing an Authorization with an mPOS Using an Embedded Reader and
Software with No PIN Entry for Visa
Request
{ "clientReferenceInformation" : { "code" : "123456", "transactionId": "12233445677", "partner": { "thirdPartyCertificationNumber":"123456789012" } }, "processingInformation": { "commerceIndicator": "retail" } }, "pointOfSaleInformation": { "trackData": "%B4111111111111111^TEST/CYBS ^2512201019761100 00868000000?;", "catLevel": "6", "terminalPinCapability": "0", "pinEntrySolution": "PCI-SPoC", "emv": { "cardSequenceNumber": "01", "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F260 81E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005 F2A0208409F0306000000000000" }, "entryMode": "contactless", "terminalCapability": "4" }, "paymentInformation": { "card": { "type": "001" } }, "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "currency": "USD" } } }
Response for a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6873925966666764004953" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/captures" } }, "clientReferenceInformation": { "code": "123456" }, "id": "6873925966666764004953", "orderInformation": { "amountDetails": { "authorizedAmount": "9900.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "tokenizedCard": { "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "terminalId": "111111", "emv": { "tags": "9F02060000000009009C01009A030608025F2A0209789F1A0208409F260856BF2 99472BDB0C782025C009F360245679F370412135414950540800080009F1E04001122339F1020060 11A03900000112233445566778899AABBCCDD0390000011223344556677889F5301039F410301223 39F03060001020304058407A00000000410109F2701809F34035E03009F090243219F3501059F330 3E0B8C89110001122334455667788010203040506079F5B1000112233445566778801020304050607" } }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "1" } }, "reconciliationId": "718515862J420LJ2", "status": "AUTHORIZED", "submitTimeUtc": "2023-06-22T00:09:56Z" }
Authorization with an mPOS Using an External, Contact-Only Reader with No PIN
Entry
This section describes how to process a mobile point-of-sale (mPOS) authorization using
an external, contact-only reader with no PIN entry. This type of transaction was
previously known as a chip-capable mPOS or chip-only mPOS transaction.
Fields Specific To This Use Case
These API fields and values are specific to this use case:
- Set this field toPCI-PTS.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for Processing an Authorization with an mPOS Using an External,
Contact-Only Reader with No PIN Entry
- Cybersourceprovides the value for this field.
- Set this field tocontact.
- Set this field toPCI-PTS.
- Set this field to4.
- Set this field to0.
- Set this field toretail.
Mastercard-Specific Field
- Set this field to0.
REST Example: Processing an Authorization with an mPOS Using an External, Contact-Only
Reader with No PIN Entry for Mastercard
Request
{ "clientReferenceInformation" : { "code" : "123456", "transactionId": "12233445677", "partner": { "thirdPartyCertificationNumber":"123456789012" } }, "processingInformation": { "commerceIndicator": "retail" } }, "pointOfSaleInformation": { "trackData": "%B4111111111111111^TEST/CYBS ^2512201019761100 00868000000?;", "catLevel": "6", "isDedicatedHardwareTerminal": "0", "terminalPinCapability": "0", "pinEntrySolution": "PCI-PTS", "emv": { "cardSequenceNumber": "01", "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F260 81E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005 F2A0208409F0306000000000000" }, "entryMode": "contact", "terminalCapability": "4" }, "paymentInformation": { "card": { "type": "002" } }, "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "currency": "USD" } } }
Response for a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6873925966666764004953" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/captures" } }, "clientReferenceInformation": { "code": "123456" }, "id": "6873925966666764004953", "orderInformation": { "amountDetails": { "authorizedAmount": "9900.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "002" } }, "paymentInformation": { "tokenizedCard": { "type": "002" }, "card": { "type": "002" } }, "pointOfSaleInformation": { "terminalId": "111111", "emv": { "tags": "9F02060000000009009C01009A030608025F2A0209789F1A0208409F260856BF2 99472BDB0C782025C009F360245679F370412135414950540800080009F1E04001122339F1020060 11A03900000112233445566778899AABBCCDD0390000011223344556677889F5301039F410301223 39F03060001020304058407A00000000410109F2701809F34035E03009F090243219F3501059F330 3E0B8C89110001122334455667788010203040506079F5B1000112233445566778801020304050607" } }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "1" } }, "reconciliationId": "718515862J420LJ2", "status": "AUTHORIZED", "submitTimeUtc": "2023-06-22T00:09:56Z" }
REST Example: Processing an Authorization with an mPOS Using an External, Contact-Only
Reader with No PIN Entry for Visa
Request
{ "clientReferenceInformation" : { "code" : "123456", "transactionId": "12233445677", "partner": { "thirdPartyCertificationNumber":"123456789012" } }, "processingInformation": { "commerceIndicator": "retail" } }, "pointOfSaleInformation": { "trackData": "%B4111111111111111^TEST/CYBS ^2512201019761100 00868000000?;", "catLevel": "6", "terminalPinCapability": "0", "pinEntrySolution": "PCI-PTS", "emv": { "cardSequenceNumber": "01", "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F260 81E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005 F2A0208409F0306000000000000" }, "entryMode": "contact", "terminalCapability": "4" }, "paymentInformation": { "card": { "type": "001" } }, "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "currency": "USD" } } }
Response for a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6873925966666764004953" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/captures" } }, "clientReferenceInformation": { "code": "123456" }, "id": "6873925966666764004953", "orderInformation": { "amountDetails": { "authorizedAmount": "9900.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "tokenizedCard": { "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "terminalId": "111111", "emv": { "tags": "9F02060000000009009C01009A030608025F2A0209789F1A0208409F260856BF2 99472BDB0C782025C009F360245679F370412135414950540800080009F1E04001122339F1020060 11A03900000112233445566778899AABBCCDD0390000011223344556677889F5301039F410301223 39F03060001020304058407A00000000410109F2701809F34035E03009F090243219F3501059F330 3E0B8C89110001122334455667788010203040506079F5B1000112233445566778801020304050607" } }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "1" } }, "reconciliationId": "718515862J420LJ2", "status": "AUTHORIZED", "submitTimeUtc": "2023-06-22T00:09:56Z" }
Authorization with an mPOS Using an External Reader and Hardware PIN Entry
This section describes how to process a mobile point-of-sale (mPOS) authorization using
an external reader with hardware PIN entry. This type of transaction was previously
known as a hybrid mPOS or chip-only mPOS transaction.
Fields Specific To This Use Case
These API fields and values are specific to this use case:
- Set this field toPCI-PTS.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for Processing an Authorization with an mPOS Using an External Reader and
Hardware PIN Entry
- Cybersourceprovides the value for this field.
- Set this field tocontact.
- Set this field toPCI-PTS.
- Set this field toretail.
Mastercard-Specific Field
- Set this field to0.
REST Example: Processing an Authorization with an mPOS Using an External Reader and
Hardware PIN Entry for Mastercard
Request
{ "clientReferenceInformation" : { "code" : "123456", "transactionId": "12233445677", "partner": { "thirdPartyCertificationNumber":"123456789012" } }, "processingInformation": { "commerceIndicator": "retail" } }, "pointOfSaleInformation": { "trackData": "%B4111111111111111^TEST/CYBS ^2512201019761100 00868000000?;", "catLevel": "6", "isDedicatedHardwareTerminal": "0", "terminalPinCapability": "4", "pinEntrySolution": "PCI-PTS", "emv": { "cardSequenceNumber": "01", "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F260 81E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005 F2A0208409F0306000000000000" }, "entryMode": "contact", "terminalCapability": "4" }, "paymentInformation": { "card": { "type": "002" } }, "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "currency": "USD" } } }
Response for a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6873925966666764004953" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/captures" } }, "clientReferenceInformation": { "code": "123456" }, "id": "6873925966666764004953", "orderInformation": { "amountDetails": { "authorizedAmount": "9900.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "002" } }, "paymentInformation": { "tokenizedCard": { "type": "002" }, "card": { "type": "002" } }, "pointOfSaleInformation": { "terminalId": "111111", "emv": { "tags": "9F02060000000009009C01009A030608025F2A0209789F1A0208409F260856BF2 99472BDB0C782025C009F360245679F370412135414950540800080009F1E04001122339F1020060 11A03900000112233445566778899AABBCCDD0390000011223344556677889F5301039F410301223 39F03060001020304058407A00000000410109F2701809F34035E03009F090243219F3501059F330 3E0B8C89110001122334455667788010203040506079F5B1000112233445566778801020304050607" } }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "1" } }, "reconciliationId": "718515862J420LJ2", "status": "AUTHORIZED", "submitTimeUtc": "2023-06-22T00:09:56Z" }
REST Example: Processing an Authorization with an mPOS Using an External Reader and
Hardware PIN Entry for Visa
Request
{ "clientReferenceInformation" : { "code" : "123456", "transactionId": "12233445677", "partner": { "thirdPartyCertificationNumber":"123456789012" } }, "processingInformation": { "commerceIndicator": "retail" } }, "pointOfSaleInformation": { "trackData": "%B4111111111111111^TEST/CYBS ^2512201019761100 00868000000?;", "catLevel": "6", "terminalPinCapability": "4", "pinEntrySolution": "PCI-PTS", "emv": { "cardSequenceNumber": "01", "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F260 81E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005 F2A0208409F0306000000000000" }, "entryMode": "contact", "terminalCapability": "4" }, "paymentInformation": { "card": { "type": "001" } }, "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "currency": "USD" } } }
Response for a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6873925966666764004953" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/captures" } }, "clientReferenceInformation": { "code": "123456" }, "id": "6873925966666764004953", "orderInformation": { "amountDetails": { "authorizedAmount": "9900.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "tokenizedCard": { "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "terminalId": "111111", "emv": { "tags": "9F02060000000009009C01009A030608025F2A0209789F1A0208409F260856BF2 99472BDB0C782025C009F360245679F370412135414950540800080009F1E04001122339F1020060 11A03900000112233445566778899AABBCCDD0390000011223344556677889F5301039F410301223 39F03060001020304058407A00000000410109F2701809F34035E03009F090243219F3501059F330 3E0B8C89110001122334455667788010203040506079F5B1000112233445566778801020304050607" } }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "1" } }, "reconciliationId": "718515862J420LJ2", "status": "AUTHORIZED", "submitTimeUtc": "2023-06-22T00:09:56Z" }
Authorization with an mPOS Using an External Reader and Software PIN Entry
This section describes how to process a mobile point-of-sale (mPOS) authorization using
an external reader with software PIN entry. This type of transaction is also known as a
SPoC transaction.
Fields Specific To This Use Case
These API fields and values are specific to this use case:
- Set this field toPCI-SPoC.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for Processing an Authorization with an mPOS Using an External Reader and
Software PIN Entry
- Cybersourceprovides the value for this field.
- Set this field toPCI-SPoC.
- Set this field toretail.
Mastercard-Specific Field
- Set this field to0.
REST Example: Processing an Authorization with an mPOS Using an External Reader and
Software PIN Entry for Mastercard
Request
{ "clientReferenceInformation" : { "code" : "123456", "transactionId": "12233445677", "partner": { "thirdPartyCertificationNumber":"123456789012" } }, "processingInformation": { "commerceIndicator": "retail" } }, "pointOfSaleInformation": { "trackData": "%B4111111111111111^TEST/CYBS ^2512201019761100 00868000000?;", "catLevel": "6", "isDedicatedHardwareTerminal": "0", "terminalPinCapability": "4", "pinEntrySolution": "PCI-SPoC", "emv": { "cardSequenceNumber": "01", "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F260 81E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005 F2A0208409F0306000000000000" }, "entryMode": "contact", "terminalCapability": "4" }, "paymentInformation": { "card": { "type": "002" } }, "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "currency": "USD" } } }
Response for a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6873925966666764004953" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/captures" } }, "clientReferenceInformation": { "code": "123456" }, "id": "6873925966666764004953", "orderInformation": { "amountDetails": { "authorizedAmount": "9900.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "002" } }, "paymentInformation": { "tokenizedCard": { "type": "002" }, "card": { "type": "002" } }, "pointOfSaleInformation": { "terminalId": "111111", "emv": { "tags": "9F02060000000009009C01009A030608025F2A0209789F1A0208409F260856BF2 99472BDB0C782025C009F360245679F370412135414950540800080009F1E04001122339F1020060 11A03900000112233445566778899AABBCCDD0390000011223344556677889F5301039F410301223 39F03060001020304058407A00000000410109F2701809F34035E03009F090243219F3501059F330 3E0B8C89110001122334455667788010203040506079F5B1000112233445566778801020304050607" } }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "1" } }, "reconciliationId": "718515862J420LJ2", "status": "AUTHORIZED", "submitTimeUtc": "2023-06-22T00:09:56Z" }
REST Example: Processing an Authorization with an mPOS Using an External Reader and
Software PIN Entry for Visa
Request
{ "clientReferenceInformation" : { "code" : "123456", "transactionId": "12233445677", "partner": { "thirdPartyCertificationNumber":"123456789012" } }, "processingInformation": { "commerceIndicator": "retail" } }, "pointOfSaleInformation": { "trackData": "%B4111111111111111^TEST/CYBS ^2512201019761100 00868000000?;", "catLevel": "6", "terminalPinCapability": "4", "pinEntrySolution": "PCI-SPoC", "emv": { "cardSequenceNumber": "01", "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F260 81E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005 F2A0208409F0306000000000000" }, "entryMode": "contact", "terminalCapability": "4" }, "paymentInformation": { "card": { "type": "001" } }, "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "currency": "USD" } } }
Response for a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6873925966666764004953" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/captures" } }, "clientReferenceInformation": { "code": "123456" }, "id": "6873925966666764004953", "orderInformation": { "amountDetails": { "authorizedAmount": "9900.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "tokenizedCard": { "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "terminalId": "111111", "emv": { "tags": "9F02060000000009009C01009A030608025F2A0209789F1A0208409F260856BF2 99472BDB0C782025C009F360245679F370412135414950540800080009F1E04001122339F1020060 11A03900000112233445566778899AABBCCDD0390000011223344556677889F5301039F410301223 39F03060001020304058407A00000000410109F2701809F34035E03009F090243219F3501059F330 3E0B8C89110001122334455667788010203040506079F5B1000112233445566778801020304050607" } }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "1" } }, "reconciliationId": "718515862J420LJ2", "status": "AUTHORIZED", "submitTimeUtc": "2023-06-22T00:09:56Z" }
Sale with an mPOS Using an Embedded Reader and Software PIN Entry
This section describes how to process a mobile point-of-sale (mPOS) sale transaction using an
embedded reader with software PIN entry. This type of transaction is also known as a Tap
To Phone with PIN transaction.
Fields Specific To This Use Case
These API fields and values are specific to this use case:
- Set this field toPCI-SPoC.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for Processing a Sale with an mPOS Using an Embedded Reader and Software
PIN Entry
- Cybersourceprovides the value for this field.
- Set this field tocontactless.
- Set this field toPCI-SPoC.
- Set this field toretail.
Mastercard-Specific Field
- Set this field to1.
REST Example: Processing a Sale with an mPOS Using an Embedded Reader and Software PIN
Entry for Mastercard
Request
{ "clientReferenceInformation" : { "code" : "123456", "transactionId": "12233445677", "partner": { "thirdPartyCertificationNumber":"123456789012" } }, "processingInformation": { "commerceIndicator": "retail", "capture": "true" } }, "pointOfSaleInformation": { "trackData": "%B4111111111111111^TEST/CYBS ^2512201019761100 00868000000?;", "catLevel": "6", "isDedicatedHardwareTerminal": "1", "terminalPinCapability": "4", "pinEntrySolution": "PCI-SPoC", "emv": { "cardSequenceNumber": "01", "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F260 81E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005 F2A0208409F0306000000000000" }, "entryMode": "contactless", "terminalCapability": "4" }, "paymentInformation": { "card": { "type": "002" } }, "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "currency": "USD" } } }
Response for a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6873925966666764004953" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/captures" } }, "clientReferenceInformation": { "code": "123456" }, "id": "6873925966666764004953", "orderInformation": { "amountDetails": { "authorizedAmount": "9900.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "002" } }, "paymentInformation": { "tokenizedCard": { "type": "002" }, "card": { "type": "002" } }, "pointOfSaleInformation": { "terminalId": "111111", "emv": { "tags": "9F02060000000009009C01009A030608025F2A0209789F1A0208409F260856BF2 99472BDB0C782025C009F360245679F370412135414950540800080009F1E04001122339F1020060 11A03900000112233445566778899AABBCCDD0390000011223344556677889F5301039F410301223 39F03060001020304058407A00000000410109F2701809F34035E03009F090243219F3501059F330 3E0B8C89110001122334455667788010203040506079F5B1000112233445566778801020304050607" } }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "1" } }, "reconciliationId": "718515862J420LJ2", "status": "AUTHORIZED", "submitTimeUtc": "2023-06-22T00:09:56Z" }
REST Example: Processing a Sale with an mPOS Using an Embedded Reader and Software PIN
Entry for Visa
Request
{ "clientReferenceInformation" : { "code" : "123456", "transactionId": "12233445677", "partner": { "thirdPartyCertificationNumber":"123456789012" } }, "processingInformation": { "commerceIndicator": "retail", "capture": "true" } }, "pointOfSaleInformation": { "trackData": "%B4111111111111111^TEST/CYBS ^2512201019761100 00868000000?;", "catLevel": "6", "terminalPinCapability": "4", "pinEntrySolution": "PCI-SPoC", "emv": { "cardSequenceNumber": "01", "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F260 81E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005 F2A0208409F0306000000000000" }, "entryMode": "contactless", "terminalCapability": "4" }, "paymentInformation": { "card": { "type": "001" } }, "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "currency": "USD" } } }
Response for a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6873925966666764004953" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/captures" } }, "clientReferenceInformation": { "code": "123456" }, "id": "6873925966666764004953", "orderInformation": { "amountDetails": { "authorizedAmount": "9900.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "tokenizedCard": { "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "terminalId": "111111", "emv": { "tags": "9F02060000000009009C01009A030608025F2A0209789F1A0208409F260856BF2 99472BDB0C782025C009F360245679F370412135414950540800080009F1E04001122339F1020060 11A03900000112233445566778899AABBCCDD0390000011223344556677889F5301039F410301223 39F03060001020304058407A00000000410109F2701809F34035E03009F090243219F3501059F330 3E0B8C89110001122334455667788010203040506079F5B1000112233445566778801020304050607" } }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "1" } }, "reconciliationId": "718515862J420LJ2", "status": "AUTHORIZED", "submitTimeUtc": "2023-06-22T00:09:56Z" }
Sale with an mPOS Using an Embedded Reader and Software with No PIN Entry
This section describes how to process a mobile point-of-sale (mPOS) sale transaction
using an embedded reader and software with no PIN entry. This type of transaction is
also known as a Tap to Phone with no PIN transaction.
Fields Specific to This Use Case
These API fields and values are specific to this use case:
- Set this field toPCI-SPoC.
- Set this field to0.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for Processing a Sale with an mPOS Using an Embedded Reader and Software
with No PIN Entry
- Cybersourceprovides the value for this field.
- Set this field tocontactless.
- Set this field toPCI-SPoC.
- Set this field to4.
- Set this field to0.
- Set this field toretail.
Mastercard-Specific Field
- Set this field to1.
REST Example: Processing a Sale with an mPOS Using an Embedded Reader and Software with
No PIN Entry for Mastercard
Request
{ "clientReferenceInformation" : { "code" : "123456", "transactionId": "12233445677", "partner": { "thirdPartyCertificationNumber":"123456789012" } }, "processingInformation": { "commerceIndicator": "retail", "capture":"true" } }, "pointOfSaleInformation": { "trackData": "%B4111111111111111^TEST/CYBS ^2512201019761100 00868000000?;", "catLevel": "6", "isDedicatedHardwareTerminal": "1", "terminalPinCapability": "0", "pinEntrySolution": "PCI-SPoC", "emv": { "cardSequenceNumber": "01", "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F260 81E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005 F2A0208409F0306000000000000" }, "entryMode": "contactless", "terminalCapability": "4" }, "paymentInformation": { "card": { "type": "002" } }, "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "currency": "USD" } } }
Response for a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6873925966666764004953" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/captures" } }, "clientReferenceInformation": { "code": "123456" }, "id": "6873925966666764004953", "orderInformation": { "amountDetails": { "authorizedAmount": "9900.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "002" } }, "paymentInformation": { "tokenizedCard": { "type": "002" }, "card": { "type": "002" } }, "pointOfSaleInformation": { "terminalId": "111111", "emv": { "tags": "9F02060000000009009C01009A030608025F2A0209789F1A0208409F260856BF2 99472BDB0C782025C009F360245679F370412135414950540800080009F1E04001122339F1020060 11A03900000112233445566778899AABBCCDD0390000011223344556677889F5301039F410301223 39F03060001020304058407A00000000410109F2701809F34035E03009F090243219F3501059F330 3E0B8C89110001122334455667788010203040506079F5B1000112233445566778801020304050607" } }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "1" } }, "reconciliationId": "718515862J420LJ2", "status": "AUTHORIZED", "submitTimeUtc": "2023-06-22T00:09:56Z" }
REST Example: Processing a Sale with an mPOS Using an Embedded Reader and Software with
No PIN Entry for Visa
Request
{ "clientReferenceInformation" : { "code" : "123456", "transactionId": "12233445677", "partner": { "thirdPartyCertificationNumber":"123456789012" } }, "processingInformation": { "commerceIndicator": "retail", "capture":"true" } }, "pointOfSaleInformation": { "trackData": "%B4111111111111111^TEST/CYBS ^2512201019761100 00868000000?;", "catLevel": "6", "terminalPinCapability": "0", "pinEntrySolution": "PCI-SPoC", "emv": { "cardSequenceNumber": "01", "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F260 81E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005 F2A0208409F0306000000000000" }, "entryMode": "contactless", "terminalCapability": "4" }, "paymentInformation": { "card": { "type": "001" } }, "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "currency": "USD" } } }
Response for a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6873925966666764004953" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/captures" } }, "clientReferenceInformation": { "code": "123456" }, "id": "6873925966666764004953", "orderInformation": { "amountDetails": { "authorizedAmount": "9900.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "tokenizedCard": { "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "terminalId": "111111", "emv": { "tags": "9F02060000000009009C01009A030608025F2A0209789F1A0208409F260856BF2 99472BDB0C782025C009F360245679F370412135414950540800080009F1E04001122339F1020060 11A03900000112233445566778899AABBCCDD0390000011223344556677889F5301039F410301223 39F03060001020304058407A00000000410109F2701809F34035E03009F090243219F3501059F330 3E0B8C89110001122334455667788010203040506079F5B1000112233445566778801020304050607" } }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "1" } }, "reconciliationId": "718515862J420LJ2", "status": "AUTHORIZED", "submitTimeUtc": "2023-06-22T00:09:56Z" }
Sale with an mPOS Using an External, Contact-Only Reader with No PIN Entry
This section describes how to process a mobile point-of-sale (mPOS) sale transaction
using an external, contact-only reader with no PIN entry. This type of transaction was
previously known as a chip-capable mPOS or chip-only mPOS transaction.
Fields Specific To This Use Case
These API fields and values are specific to this use case:
- Set this field toPCI-PTS.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for Processing a Sale with an mPOS Using an External, Contact-Only Reader
with No PIN Entry
- Cybersourceprovides the value for this field.
- Set this field tocontact.
- Set this field toPCI-PTS.
- Set this field to4.
- Set this field to0.
- Set this field toretail.
Mastercard-Specific Field
- Set this field to0.
REST Example: Processing a Sale with an mPOS Using an External, Contact-Only Reader with
No PIN Entry for Mastercard
Request
{ "clientReferenceInformation" : { "code" : "123456", "transactionId": "12233445677", "partner": { "thirdPartyCertificationNumber":"123456789012" } }, "processingInformation": { "commerceIndicator": "retail", "capture":"true" } }, "pointOfSaleInformation": { "trackData": "%B4111111111111111^TEST/CYBS ^2512201019761100 00868000000?;", "catLevel": "6", "isDedicatedHardwareTerminal": "0", "terminalPinCapability": "0", "pinEntrySolution": "PCI-PTS", "emv": { "cardSequenceNumber": "01", "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F260 81E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005 F2A0208409F0306000000000000" }, "entryMode": "contact", "terminalCapability": "4" }, "paymentInformation": { "card": { "type": "002" } }, "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "currency": "USD" } } }
Response for a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6873925966666764004953" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/captures" } }, "clientReferenceInformation": { "code": "123456" }, "id": "6873925966666764004953", "orderInformation": { "amountDetails": { "authorizedAmount": "9900.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "002" } }, "paymentInformation": { "tokenizedCard": { "type": "002" }, "card": { "type": "002" } }, "pointOfSaleInformation": { "terminalId": "111111", "emv": { "tags": "9F02060000000009009C01009A030608025F2A0209789F1A0208409F260856BF2 99472BDB0C782025C009F360245679F370412135414950540800080009F1E04001122339F1020060 11A03900000112233445566778899AABBCCDD0390000011223344556677889F5301039F410301223 39F03060001020304058407A00000000410109F2701809F34035E03009F090243219F3501059F330 3E0B8C89110001122334455667788010203040506079F5B1000112233445566778801020304050607" } }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "1" } }, "reconciliationId": "718515862J420LJ2", "status": "AUTHORIZED", "submitTimeUtc": "2023-06-22T00:09:56Z" }
REST Example: Processing a Sale with an mPOS Using an External, Contact-Only Reader with
No PIN Entry for Visa
Request
{ "clientReferenceInformation" : { "code" : "123456", "transactionId": "12233445677", "partner": { "thirdPartyCertificationNumber":"123456789012" } }, "processingInformation": { "commerceIndicator": "retail", "capture":"true" } }, "pointOfSaleInformation": { "trackData": "%B4111111111111111^TEST/CYBS ^2512201019761100 00868000000?;", "catLevel": "6", "terminalPinCapability": "0", "pinEntrySolution": "PCI-PTS", "emv": { "cardSequenceNumber": "01", "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F260 81E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005 F2A0208409F0306000000000000" }, "entryMode": "contact", "terminalCapability": "4" }, "paymentInformation": { "card": { "type": "001" } }, "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "currency": "USD" } } }
Response for a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6873925966666764004953" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/captures" } }, "clientReferenceInformation": { "code": "123456" }, "id": "6873925966666764004953", "orderInformation": { "amountDetails": { "authorizedAmount": "9900.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "tokenizedCard": { "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "terminalId": "111111", "emv": { "tags": "9F02060000000009009C01009A030608025F2A0209789F1A0208409F260856BF2 99472BDB0C782025C009F360245679F370412135414950540800080009F1E04001122339F1020060 11A03900000112233445566778899AABBCCDD0390000011223344556677889F5301039F410301223 39F03060001020304058407A00000000410109F2701809F34035E03009F090243219F3501059F330 3E0B8C89110001122334455667788010203040506079F5B1000112233445566778801020304050607" } }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "1" } }, "reconciliationId": "718515862J420LJ2", "status": "AUTHORIZED", "submitTimeUtc": "2023-06-22T00:09:56Z" }
Sale with an mPOS Using an External Reader and Hardware PIN Entry
This section describes how to process a mobile point-of-sale (mPOS) sale transaction
using an external reader with hardware PIN entry. This type of transaction was
previously known as a hybrid mPOS or chip-only mPOS transaction.
Fields Specific To This Use Case
These API fields and values are specific to this use case:
- Set this field toPCI-PTS.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for Processing a Sale with an mPOS Using an External Reader and Hardware
PIN Entry
- Cybersourceprovides the value for this field.
- Set this field tocontact.
- Set this field toPCI-PTS.
- Set this field toretail.
Mastercard-Specific Field
- Set this field to0.
REST Example: Processing a Sale with an mPOS Using an External Reader and Hardware PIN
Entry for Mastercard
Request
{ "clientReferenceInformation" : { "code" : "123456", "transactionId": "12233445677", "partner": { "thirdPartyCertificationNumber":"123456789012" } }, "processingInformation": { "commerceIndicator": "retail", "capture":"true" } }, "pointOfSaleInformation": { "trackData": "%B4111111111111111^TEST/CYBS ^2512201019761100 00868000000?;", "catLevel": "6", "isDedicatedHardwareTerminal": "0", "terminalPinCapability": "4", "pinEntrySolution": "PCI-PTS", "emv": { "cardSequenceNumber": "01", "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F260 81E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005 F2A0208409F0306000000000000" }, "entryMode": "contact", "terminalCapability": "4" }, "paymentInformation": { "card": { "type": "002" } }, "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "currency": "USD" } } }
Response for a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6873925966666764004953" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/captures" } }, "clientReferenceInformation": { "code": "123456" }, "id": "6873925966666764004953", "orderInformation": { "amountDetails": { "authorizedAmount": "9900.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "002" } }, "paymentInformation": { "tokenizedCard": { "type": "002" }, "card": { "type": "002" } }, "pointOfSaleInformation": { "terminalId": "111111", "emv": { "tags": "9F02060000000009009C01009A030608025F2A0209789F1A0208409F260856BF2 99472BDB0C782025C009F360245679F370412135414950540800080009F1E04001122339F1020060 11A03900000112233445566778899AABBCCDD0390000011223344556677889F5301039F410301223 39F03060001020304058407A00000000410109F2701809F34035E03009F090243219F3501059F330 3E0B8C89110001122334455667788010203040506079F5B1000112233445566778801020304050607" } }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "1" } }, "reconciliationId": "718515862J420LJ2", "status": "AUTHORIZED", "submitTimeUtc": "2023-06-22T00:09:56Z" }
REST Example: Processing a Sale with an mPOS Using an External Reader and Hardware PIN
Entry for Visa
Request
{ "clientReferenceInformation" : { "code" : "123456", "transactionId": "12233445677", "partner": { "thirdPartyCertificationNumber":"123456789012" } }, "processingInformation": { "commerceIndicator": "retail", "capture":"true" } }, "pointOfSaleInformation": { "trackData": "%B4111111111111111^TEST/CYBS ^2512201019761100 00868000000?;", "catLevel": "6", "terminalPinCapability": "4", "pinEntrySolution": "PCI-PTS", "emv": { "cardSequenceNumber": "01", "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F260 81E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005 F2A0208409F0306000000000000" }, "entryMode": "contact", "terminalCapability": "4" }, "paymentInformation": { "card": { "type": "001" } }, "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "currency": "USD" } } }
Response for a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6873925966666764004953" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/captures" } }, "clientReferenceInformation": { "code": "123456" }, "id": "6873925966666764004953", "orderInformation": { "amountDetails": { "authorizedAmount": "9900.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "tokenizedCard": { "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "terminalId": "111111", "emv": { "tags": "9F02060000000009009C01009A030608025F2A0209789F1A0208409F260856BF2 99472BDB0C782025C009F360245679F370412135414950540800080009F1E04001122339F1020060 11A03900000112233445566778899AABBCCDD0390000011223344556677889F5301039F410301223 39F03060001020304058407A00000000410109F2701809F34035E03009F090243219F3501059F330 3E0B8C89110001122334455667788010203040506079F5B1000112233445566778801020304050607" } }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "1" } }, "reconciliationId": "718515862J420LJ2", "status": "AUTHORIZED", "submitTimeUtc": "2023-06-22T00:09:56Z" }
Sale with an mPOS Using an External Reader and Software PIN Entry
This section describes how to process a mobile point-of-sale (mPOS) sale transaction
using an external reader with software PIN entry. This type of transaction is also known
as a SPoC transaction.
Fields Specific To This Use Case
These API fields and values are specific to this use case:
- Set this field toPCI-SPoC.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for Processing a Sale with an mPOS Using an External Reader and Software
PIN Entry
- Cybersourceprovides the value for this field.
- Set this field toPCI-SPoC.
- Set this field toretail.
Mastercard-Specific Field
- Set this field to0.
REST Example: Processing a Sale with an mPOS Using an External Reader and Software PIN
Entry for Mastercard
Request
{ "clientReferenceInformation" : { "code" : "123456", "transactionId": "12233445677", "partner": { "thirdPartyCertificationNumber":"123456789012" } }, "processingInformation": { "commerceIndicator": "retail", "capture":"true" } }, "pointOfSaleInformation": { "trackData": "%B4111111111111111^TEST/CYBS ^2512201019761100 00868000000?;", "catLevel": "6", "isDedicatedHardwareTerminal": "0", "terminalPinCapability": "4", "pinEntrySolution": "PCI-SPoC", "emv": { "cardSequenceNumber": "01", "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F260 81E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005 F2A0208409F0306000000000000" }, "entryMode": "contact", "terminalCapability": "4" }, "paymentInformation": { "card": { "type": "002" } }, "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "currency": "USD" } } }
Response for a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6873925966666764004953" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/captures" } }, "clientReferenceInformation": { "code": "123456" }, "id": "6873925966666764004953", "orderInformation": { "amountDetails": { "authorizedAmount": "9900.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "002" } }, "paymentInformation": { "tokenizedCard": { "type": "002" }, "card": { "type": "002" } }, "pointOfSaleInformation": { "terminalId": "111111", "emv": { "tags": "9F02060000000009009C01009A030608025F2A0209789F1A0208409F260856BF2 99472BDB0C782025C009F360245679F370412135414950540800080009F1E04001122339F1020060 11A03900000112233445566778899AABBCCDD0390000011223344556677889F5301039F410301223 39F03060001020304058407A00000000410109F2701809F34035E03009F090243219F3501059F330 3E0B8C89110001122334455667788010203040506079F5B1000112233445566778801020304050607" } }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "1" } }, "reconciliationId": "718515862J420LJ2", "status": "AUTHORIZED", "submitTimeUtc": "2023-06-22T00:09:56Z" }
REST Example: Processing a Sale with an mPOS Using an External Reader and Software PIN
Entry for Visa
Request
{ "clientReferenceInformation" : { "code" : "123456", "transactionId": "12233445677", "partner": { "thirdPartyCertificationNumber":"123456789012" } }, "processingInformation": { "commerceIndicator": "retail", "capture":"true" } }, "pointOfSaleInformation": { "trackData": "%B4111111111111111^TEST/CYBS ^2512201019761100 00868000000?;", "catLevel": "6", "terminalPinCapability": "4", "pinEntrySolution": "PCI-SPoC", "emv": { "cardSequenceNumber": "01", "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F260 81E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005 F2A0208409F0306000000000000" }, "entryMode": "contact", "terminalCapability": "4" }, "paymentInformation": { "card": { "type": "001" } }, "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "currency": "USD" } } }
Response for a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6873925966666764004953" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6873925966666764004953/captures" } }, "clientReferenceInformation": { "code": "123456" }, "id": "6873925966666764004953", "orderInformation": { "amountDetails": { "authorizedAmount": "9900.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "tokenizedCard": { "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "terminalId": "111111", "emv": { "tags": "9F02060000000009009C01009A030608025F2A0209789F1A0208409F260856BF2 99472BDB0C782025C009F360245679F370412135414950540800080009F1E04001122339F1020060 11A03900000112233445566778899AABBCCDD0390000011223344556677889F5301039F410301223 39F03060001020304058407A00000000410109F2701809F34035E03009F090243219F3501059F330 3E0B8C89110001122334455667788010203040506079F5B1000112233445566778801020304050607" } }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "1" } }, "reconciliationId": "718515862J420LJ2", "status": "AUTHORIZED", "submitTimeUtc": "2023-06-22T00:09:56Z" }
Dynamic Currency Conversion Payment Services
Dynamic Currency Conversion
Payment ServicesWhen processing international transactions,
Dynamic Currency Conversion
(DCC
) is a service that enables you to convert a transaction amount
from a merchant's local currency to the cardholder's billing currency in real time. This
service is regulated by Mastercard and Visa. The
DCC
service enables you to choose your own currency-conversion
service provider for DCC
. This setup helps you comply with
Mastercard and Visa payment processing rules and other regulations for these transaction
types. The currency conversion is performed directly between you and your
DCC
service provider before authorizing a network-compliant DCC
transaction on your processor connection. These card types support
Dynamic Currency Conversion
transactions:- Mastercard
- Visa
Authorization with Dynamic Currency Conversion
Dynamic Currency Conversion
This section provides the information you need in order to process an authorization with
Dynamic Currency Conversion
.Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for Authorization with Dynamic Currency Conversion
Dynamic Currency Conversion
- Set the value toUseIndustryDesignatedValue.
- Cybersourceprovides the value for this field.
- Cybersourceprovides the value for this field.
- Set this field to a unique value to manage timeout scenarios when a response is not received.
- Set the value to the EMV Tag 5F34 value personalized on the chip. Otherwise, do not include the field.
- Set the value toretail.
Related Information
Optional Fields for Authorization with Dynamic Currency Conversion
Dynamic Currency Conversion
REST Example: Authorization with Dynamic Currency Conversion
Dynamic Currency Conversion
Request
{ "clientReferenceInformation": { "code": "CRI Code", "comments": "IndustrySpecificValue", "partner": { "developerId": "ptpDevID", "solutionId": "ptpSolutionId", "thirdPartyCertificationNumber": "ptpTPCN" }, "transactionId": "uniqueTranId123" }, "merchantInformation": { "transactionLocalDateTime": "20240122115959" }, "orderInformation": { "amountDetails": { "currency": "USD", "totalAmount": 9900.00, "exchangeRate": 1.05, "originalAmount": 9428.57, "originalCurrency": "EUR", "currencyConversion": { "indicator": 1 } } }, "paymentInformation": { "card": { "type": "001" } }, "pointOfSaleInformation": { "entryMode": "contactless", "terminalCapability": 4, "terminalPinCapability": 0, "trackData": ";417666222xx10034=311220111523358?", "emv": { "cardSequenceNumber": "03", "tags": "820220008407A0000000031010950500000000009F33030060C09F02060000009900009F03060000000001009F1A0208409C01005F2A0208409A032404179F3704543B54D19F3501219F34031F03025F3401039F10201F220100A000000000564953414C3354455354434153450000000000000000009F2608F152DAE24E7A27DA9F2701809F360200029F6E0420700080" } }, "processingInformation": { "commerceIndicator": "retail" } }
Response to a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/7413044040886819903813/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/7413044040886819903813" }, "capture": { "method": "POST", "href": "/pts/v2/payments/7413044040886819903813/captures" } }, "clientReferenceInformation": { "code": "CRI Code", "comments": "IndustrySpecificValue", "partner": { "developerId": "ptpDevID", "solutionId": "ptpSolutionId" }, "transactionId": "uniqueTranId123" }, "id": "7413044040886819903813", "orderInformation": { "amountDetails": { "authorizedAmount": "9900.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "accountFeatures": { "category": "A", "group": "0" }, "tokenizedCard": { "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "emv": { "tags": "9F36020015910AB58D60185BEF0247303072179F180430303031860E04DA9F580903B1BAEDFD1438BA48" } }, "processorInformation": { "systemTraceAuditNumber": "739787", "approvalCode": "831000", "networkTransactionId": "016153570198200", "retrievalReferenceNumber": "506523739787", "transactionId": "016153570198200", "responseCode": "00", "avs": { "code": "2" } }, "reconciliationId": "7413044040886819903813", "status": "AUTHORIZED", "submitTimeUtc": "2025-03-06T23:40:04Z" }
Capture with Dynamic Currency Conversion
Dynamic Currency Conversion
This section provides the information you need in order to process a capture with
Dynamic Currency Conversion
.Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/payments/{id}
/capturesTest:
POST
https://apitest.cybersource.com
/pts/v2/payments/{id}
/capturesThe is the transaction ID
returned in the authorization response.
{id}
Required Fields for Capture with Dynamic Currency Conversion
Dynamic Currency Conversion
- This field value maps from the original authorization, sale, or credit transaction.
- Set the value toUseIndustryDesignatedValue.
- Cybersourceprovides the value for this field.
- Cybersourceprovides the value for this field.
Related Information
REST Example: Capture with Dynamic Currency Conversion
Dynamic Currency Conversion
Request
{ "clientReferenceInformation": { "code": "CRI Code", "comments": "IndustrySpecificValue", "partner": { "developerId": "ptpDevID", "solutionId": "ptpSolutionId", "thirdPartyCertificationNumber": "ptpTPCN" } }, "merchantInformation": { "transactionLocalDateTime": "20240122115959" }, "orderInformation": { "amountDetails": { "currency": "USD", "totalAmount": 9900.00, "originalAmount": 9428.57, "originalCurrency": "EUR" } } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/captures/7413056598446149103814/voids" }, "self": { "method": "GET", "href": "/pts/v2/captures/7413056598446149103814" } }, "clientReferenceInformation": { "comments": "IndustrySpecificValue", "code": "CRI Code", "partner": { "developerId": "ptpDevID", "solutionId": "ptpSolutionId" } }, "id": "7413056598446149103814", "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "currency": "USD" } }, "reconciliationId": "7413055860956965503812", "status": "PENDING", "submitTimeUtc": "2025-03-07T00:01:00Z" }
Sale with Dynamic Currency Conversion
Dynamic Currency Conversion
This section provides the information you need in order to process a sale with
Dynamic Currency Conversion
. A sale combines an authorization and a capture into a single
transaction.Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for Sale with Dynamic Currency Conversion
Dynamic Currency Conversion
- Set the value toUseIndustryDesignatedValue.
- Cybersourceprovides the value for this field.
- Cybersourceprovides the value for this field.
- Set this field to a unique value to manage timeout scenarios when a response is not received.
- Set the value to the EMV Tag 5F34 value personalized on the chip. Otherwise, do not include the field.
- Set the value totrue.
- Set the value toretail.
Related Information
Optional Fields for Sale with Dynamic Currency Conversion
Dynamic Currency Conversion
REST Example: Sale with Dynamic Currency Conversion
Dynamic Currency Conversion
Request
{ "clientReferenceInformation": { "code": "CRI Code", "comments": "IndustrySpecificValue", "partner": { "developerId": "ptpDevID", "solutionId": "ptpSolutionId", "thirdPartyCertificationNumber": "ptpTPCN" }, "transactionId": "uniqueTranId123" }, "merchantInformation": { "transactionLocalDateTime": "20240122115959" }, "orderInformation": { "amountDetails": { "currency": "USD", "totalAmount": 9900.00, "exchangeRate": 1.05, "originalAmount": 9428.57, "originalCurrency": "EUR", "currencyConversion": { "indicator": 1 } } }, "paymentInformation": { "card": { "type": "001" } }, "pointOfSaleInformation": { "entryMode": "contact", "terminalCapability": 4, "terminalPinCapability": 0, "trackData": ";417666222xx10034=311220111523358?", "emv": { "cardSequenceNumber": "03", "tags": "820220008407A0000000031010950500000000009F33030060C09F02060000009900009F03060000000001009F1A0208409C01005F2A0208409A032404179F3704543B54D19F3501219F34031F03025F3401039F10201F220100A000000000564953414C3354455354434153450000000000000000009F2608F152DAE24E7A27DA9F2701809F360200029F6E0420700080" } }, "processingInformation": { "capture": "true", "commerceIndicator": "retail" } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/payments/7413039614106440403812/voids" }, "self": { "method": "GET", "href": "/pts/v2/payments/7413039614106440403812" } }, "clientReferenceInformation": { "code": "CRI Code", "comments": "IndustrySpecificValue", "partner": { "developerId": "ptpDevID", "solutionId": "ptpSolutionId" }, "transactionId": "uniqueTranId123" }, "id": "7413039614106440403812", "orderInformation": { "amountDetails": { "totalAmount": "9900.00", "authorizedAmount": "9900.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "accountFeatures": { "category": "A", "group": "0" }, "tokenizedCard": { "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "emv": { "tags": "9F36020015910AB58D60185BEF0247303072179F180430303031860E04DA9F580903B1BAEDFD1438BA48" } }, "processorInformation": { "systemTraceAuditNumber": "240785", "approvalCode": "831000", "networkTransactionId": "016153570198200", "retrievalReferenceNumber": "506523240785", "transactionId": "016153570198200", "responseCode": "00", "avs": { "code": "2" } }, "reconciliationId": "7413039614106440403812", "status": "AUTHORIZED", "submitTimeUtc": "2025-03-06T23:32:41Z" }
Stand-Alone Credit with Dynamic Currency Conversion
Dynamic Currency Conversion
This section provides the information you need in order to process a credit with
Dynamic Currency Conversion
.Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/credits/Test:
POST
https://apitest.cybersource.com
/pts/v2/credits/Required Fields for Credit with Dynamic Currency Conversion
Dynamic Currency Conversion
- Set the value toUseIndustryDesignatedValue.
- Cybersourceprovides the value for this field.
- Set the value toretail.
Related Information
REST Example: Credit with Dynamic Currency Conversion
Dynamic Currency Conversion
Request
{ "clientReferenceInformation": { "code": "CRI Code", "comments": "IndustrySpecificValue", "partner": { "developerId": "ptpDevID", "solutionId": "ptpSolutionId", "thirdPartyCertificationNumber": "ptpTPCN" }, "transactionId": "uniqueTranId123" }, "merchantInformation": { "transactionLocalDateTime": "20240122115959" }, "orderInformation": { "amountDetails": { "currency": "USD", "totalAmount": 9900.00, "originalAmount": 9428.57, "originalCurrency": "EUR" } }, "paymentInformation": { "card": { "type": "001" } }, "pointOfSaleInformation": { "entryMode": "contact", "terminalCapability": 4, "terminalPinCapability": 0, "trackData": ";417666222xx10034=311220111523358?", "emv": { "cardSequenceNumber": "03", "tags": "820220008407A0000000031010950500000000009F33030060C09F02060000009900009F03060000000001009F1A0208409C01005F2A0208409A032404179F3704543B54D19F3501219F34031F03025F3401039F10201F220100A000000000564953414C3354455354434153450000000000000000009F2608F152DAE24E7A27DA9F2701809F360200029F6E0420700080" } }, "processingInformation": { "commerceIndicator": "retail" } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/credits/7413014196666547104807/voids" }, "self": { "method": "GET", "href": "/pts/v2/credits/7413014196666547104807" } }, "clientReferenceInformation": { "comments": "IndustrySpecificValue", "code": "CRI Code", "partner": { "developerId": "ptpDevID", "solutionId": "ptpSolutionId" }, "transactionId": "uniqueTranId123" }, "creditAmountDetails": { "currency": "USD", "creditAmount": "9900.00" }, "id": "7413014196666547104807", "orderInformation": { "amountDetails": { "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "tokenizedCard": { "type": "001" }, "card": { "type": "001" } }, "reconciliationId": "7413014196666547104807", "status": "PENDING", "submitTimeUtc": "2025-03-06T22:50:19Z" }
Retail Message-Level Validation Test Cases
Use these test cases to validate your integration with Card Present Connect | Retail
services. Follow-on transaction test cases are shown in their respective tables. PIN
debit test cases are not included.
Retail Sale Test Cases
Use these test cases to validate retail transaction integrations.
Transaction Type and Entry Mode | Card Type | Amount |
---|---|---|
Retail Sale | ||
Contact | Visa, Mastercard, American Express, Discover, Diners, JCB | 9900.00 |
Contactless | Visa, Mastercard, American Express, Discover, Diners, JCB | 9900.00 |
EMV fallback | Visa | 9601.00 |
Magnetic stripe | Visa | 9601.00 |
Manual entry | Visa | 9604.00 |
Retail Transaction Search | ||
— | Previous contact Visa | — |
Retail Sale Timeout Void | ||
— | Previous contact Visa | — |
Retail Sale Void | ||
— | Previous contact Mastercard | — |
Retail Sale Refund | ||
— | Previous contactless Visa | 9900.00 |
— | Previous contactless Mastercard | 9900.00 |
Retail Refund Void | ||
— | Void previous refund Visa | — |
Retail Refund Timeout
Void | ||
— | Timeout void previous refund Mastercard | — |
Retail Sale Partial
Authorization | ||
Contact | Visa | 9901.00 |
Contactless | Visa | 9901.00 |
Retail Partial Authorization
Capture | ||
Contact | Previous partial authorization Visa | 3000.00 |
Retail Partial Authorization
Reversal | ||
Contactless | Previous partial authorization Visa | 3000.00 |
Retail Online PIN Test Cases
Use these test cases to validate retail transaction integrations.
Transaction Type and Entry Mode | Card Type | Amount |
---|---|---|
Retail Online PIN | ||
Contact | Visa, Mastercard, American Express, Discover, Diners, JCB | 9900.00 |
Retail Online PIN, Cashback Surcharge Test Cases
Use these test cases to validate retail transaction integrations.
Transaction Type and Entry Mode | Card Type | Amount |
---|---|---|
Retail Online PIN, Cashback
Surcharge | ||
Contact | Visa | 9900.00 |
Retail Online PIN, PIN Pad Down Test Cases
Use these test cases to validate retail transaction integrations.
Transaction Type and Entry Mode | Card Type | Amount |
---|---|---|
Retail Online PIN, PIN Pad
Down | ||
Contact | Visa | 9900.00 |
Retail Credit Test Cases
Use these test cases to validate retail transaction integrations.
Transaction Type and Entry Mode | Card Type | Amount |
---|---|---|
Retail Credit | ||
Contact | Visa, Mastercard, American Express, Discover, Diners, JCB | 9900.00 |
Contactless | Visa, Mastercard, American Express, Discover, Diners, JCB | 9900.00 |
Retail Credit Timeout
Void | ||
Contact | Previous credit Visa | — |
Retail Credit Void | ||
Contactless | Previous credit Visa | — |
Retail Authorization with Follow-On Test Cases
Use these test cases to validate retail transaction integrations.
Transaction Type and Entry Mode | Card Type | Amount |
---|---|---|
Retail Authorization | ||
Contact | Visa, Mastercard, American Express, Discover, Diners, JCB | 9900.00 |
Contactless | Visa, Mastercard, American Express, Discover, Diners, JCB | 9900.00 |
Retail Capture | ||
Contact | Previous authorization Visa | 9900.00 |
Contact | Previous authorization Mastercard | |
Contactless | Previous authorization Visa | 9900.00 |
Retail Capture Timeout
Void | ||
Contact | Previous capture Visa | — |
Retail Capture Void | ||
Contactless | Previous capture Visa | — |
Retail Authorization Capture
Refund | ||
Contact | Previous capture Mastercard | 9900.00 |
Retail Authorization
Reversal | ||
Contact | Previous authorization Mastercard | 9900.00 |
Retail Authorization Timeout
Reversal | ||
Contactless | Previous authorization Mastercard | 9900.00 |
Retail Partial
Authorization | ||
Contact or Contactless | Visa | 9901.00 |
Retail Partial Authorization
Capture | ||
Previous entry mode | Previous partial authorization Visa | 3000.00 |
Retail Balance Inquiry | ||
Contact | Visa | 0.00 |
Relaxed Requirements for Address Data and Expiration Date in Payment Transactions
With relaxed requirements for address data and the expiration date, not all standard payment request fields are required. It is your responsibility to determine whether your account is enabled to use this feature and which fields are required.