Recent Revisions to This Document {#applepay-doc-revisions}
===========================================================

24.02
-----

Clarified Apple Pay requirements. See [Requirements for Using Apple Pay](/docs/cybs/en-us/apple-pay/developer/smartpay/rest/applepay/applepay-intro/applepay-requirements.md "").

24.01
-----

This revision contains only editorial changes and no technical updates.

23.04
-----

This revision contains only editorial changes and no technical updates.

23.03
-----

This revision contains only editorial changes and no technical updates.

23.02
-----

This revision contains only editorial changes and no technical updates.

About This Guide {#applepay-about-guide}
========================================

This section describes the audience and purpose of this guide and the conventions used in this guide.

Audience and Purpose
--------------------

This document is written for merchants who want to use Apple Pay in an iOS application and use information from Apple to process payments through `Cybersource`. This document provides an overview for integrating Apple and `Cybersource` services into an order management system.

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:  
<http://support.visaacceptance.com>

Introduction to Apple Pay {#applepay-intro}
===========================================

You can use the `Cybersource` platform to process and manage Apple Pay transactions.  
Apple Pay is a digital payment solution that allows customers to maake secure and convenient transactions using their Apple devices. By adding Apple Pay to your web page, you can offer your customers a faster and easier way to pay online, without requiring them to enter their card details or shipping information. Apple Pay also reduces the exposure of sensitive payment data to your system, as the payment information is encrypted and tokenized by Apple.

Requirements for Using Apple Pay {#applepay-requirements}
=========================================================

In order to use the `Cybersource` platform to process Apple Pay transactions, you must have these things:

* A `Cybersource` account. If you do not already have a `Cybersource` account, contact your local `Cybersource` sales representative.
* A [live merchant account](https://ebc2.cybersource.com/ebc2/registration/external "") with a [supported processor](/docs/cybs/en-us/apple-pay/developer/smartpay/rest/applepay/applepay-intro/applepay-processors.md "") to handle processing the transactions.
* An *Admin* or *Team Agent* user of the [Apple Pay Developer](https://developer.apple.com/apple-pay/ "") account to initiate the transactions.
  {#applepay-requirements_ul_scm_kwb_s4b}

> IMPORTANT
> Apple Pay relies on authorizations with payment network tokens. You can sign up for Apple Pay only when these statements are true:
>
> * Your processor supports payment network tokens.
> * ` Cybersource ` supports payment network tokens with your processor.
>
> {#applepay-requirements_ul_ugr_qxb_s4b}  
> If one of these statements is not true, you must take one of these actions before you can sign up for Apple Pay:
>
> * Obtain a new merchant account with a processor that supports payment network tokens.
> * Wait until your processor supports payment network tokens.
>   {#applepay-requirements_ul_tf5_txb_s4b}

Supported Card Types and Optional Features {#applepay-processors}
=================================================================

This table explains which card types and optional features are supported for each processor.

|          Processor           |                                 Card Types                                  |                                 Optional Features                                  |
|------------------------------|-----------------------------------------------------------------------------|------------------------------------------------------------------------------------|
| `Chase Paymentech Solutions` | * American Express * Discover * Maestro (International) * Mastercard * Visa | * Merchant-initiated transactions * Multiple partial captures * Recurring payments |

Payment Processors {#cc-payments-processing-requirements}
=========================================================

Payment processors connect with acquirers. Before you can accept payments, you must register with a payment processor. An acquirer might require you to use a payment processor with an existing relationship with the acquirer.  
Your payment processor assigns one or more merchant IDs (MIDs) to your business. These unique codes identify your business during payment transactions.  
This table lists the processors and corresponding card types that are supported for payment services. IMPORTANT Only the card types explicitly listed here are supported.

|      Payment Processor       |                                          Supported Card Types                                          | Notes |
|------------------------------|--------------------------------------------------------------------------------------------------------|-------|
| `Chase Paymentech Solutions` | Visa, Mastercard, American Express, Discover, Diners Club, JCB, Carte Blanche, Maestro (International) |       |
[Payment Processors and Supported Card Types]

Apple Pay Integrations and Payload Decryption Methods {#applepay_integration_intro}
===================================================================================

In response to a payment request, Apple Pay returns an encrypted payload that contains sensitive payment information. Two methods can be used to extract and decrypt the payment information, and both methods support Apple Pay in-app and web transactions.

* With **`Cybersource` decryption** , `Cybersource` manages the generation of the payment encryption key and the decryption of the Apple Pay response. IMPORTANT This method reduces the exposure of sensitive payment data to your system.
* With **merchant decryption**, you manage both the payment encryption key generation and the decryption of the Apple Pay response.  
  The remainder of this section summarizes the flow of Apple Pay transaction processing for each decryption method.

Flow of Apple Pay In-App Transactions Processed Using `Cybersource` Decryption {#applepay-inapp-txn-cybs-decrypt}
=================================================================================================================

This diagram illustrates the flow of in-app transaction processing using `Cybersource` decryption.

#### Figure:

In-App Transaction Processing with `Cybersource` Decryption  
![In-App Processing with non-Merchant Decryption](/content/dam/new-documentation/documentation/en-us/topics/payments-processing/card-processing/applepay/images/api-method.png/jcr:content/renditions/original)

1. When the customer chooses to pay with Apple Pay, you use the Apple PassKit Framework to request the encrypted payment data from Apple.
2. Apple uses the Secure Element to create a *payment token* and encrypt the token's *payment data* before it sends your application.
   * The payment token is the `PKPaymentToken` structure.
   * The payment data is the paymentData field of the `PKPaymentToken` structure.
3. You forward the encrypted payment data to your order management system.
4. Using the `Cybersource` API, you submit the authorization request. In the paymentInformation.fluidData.value field, include the Base64-encoded value that you obtained from the paymentData field of the `PKPaymentToken` structure.
5. `Cybersource` decrypts the payment data and forwards the information to the payment network, which includes your processor and the relevant payment card company. IMPORTANT
   You must use the ` Business Center ` or one of the ` Cybersource ` API services to capture, credit, or void the authorization.

Flow of Apple Pay In-App Transactions Processed Using Merchant Decryption {#applepay-inapp-txn-merchant-decrypt}
================================================================================================================

This diagram illustrates the flow of in-app transaction processing using merchant decryption.

#### Figure:

In-App Transaction Processing with Merchant Decryption  
![In-App Processing with Merchant Decryption](/content/dam/new-documentation/documentation/en-us/topics/payments-processing/card-processing/applepay/images/api-method.png/jcr:content/renditions/original)

1. When the customer chooses to pay with Apple Pay, you use the Apple PassKit Framework to request the encrypted payment data from Apple.
2. Apple uses the Secure Element to create a *payment token* and encrypt the token's*payment data* before it sends your application.
   * The payment token is the `PKPaymentToken` structure.
   * The payment data is the paymentData field of the `PKPaymentToken` structure.
3. You forward the encrypted payment data to your order management system to decrypt. For information on decryption, see the [Payment Token Format Reference](https://developer.apple.com/library/archive/documentation/PassKit/Reference/PaymentTokenJSON/PaymentTokenJSON.md#//apple_ref/doc/uid/TP40014929-CH8-SW1 "") article in the Apple Pay Developer Documentation.
4. Using the `Cybersource` API, you submit the authorization request and include the decrypted payment data.
5. `Cybersource` forwards the information to the payment network, which includes your processor and the relevant payment card company. IMPORTANT
   You must use the ` Business Center ` or one of the ` Cybersource ` API services to capture, credit, or void the authorization.

Flow of Apple Pay Web Transactions Using `Cybersource` Decryption {#applepay-web-txn-cybs-decrypt}
==================================================================================================

1. When the customer chooses to pay with Apple Pay, you use the Apple Pay JavaScript to request the encrypted payment data from Apple.

2. Apple uses the Secure Element to create a *payment token* and encrypt the token's *payment data* before it sends your application using the `onpaymentauthorized` event handler.

   * The payment token is the `ApplePayPaymentToken` structure.
   * The payment data is the paymentData field of the `ApplePayPaymentToken` structure.

   For more information, see [Apple Pay on the Web Interactive Demo](https://applepaydemo.apple.com/ "").

3. You forward the encrypted payment data to your order management system.

4. Using the `Cybersource` API, you submit the authorization request. In the paymentInformaton.fluidData.value field, include the Base64-encoded value obtained from the paymentData field of the `ApplePayPaymentToken` structure.

5. `Cybersource` decrypts the payment data and forwards the information to the payment network, which includes your processor and the relevant payment card company. IMPORTANT
   Use the ` Business Center ` or one of the ` Cybersource ` API services to capture, credit, or void the authorization.

Flow of Apple Pay Web Transactions Using Merchant Decryption {#applepay-web-txn-merchant-decrypt}
=================================================================================================

1. When the customer chooses to pay with Apple Pay, you use the Apple Pay JavaScript to request the encrypted payment data from Apple.

2. Apple uses the Secure Element to create a *payment token* and encrypt the token's *payment data* before it sends your application using the `onpaymentauthorized` event handler.

   * The payment token is the `ApplePayPaymentToken` structure.
   * The payment data is the paymentData field of the `ApplePayPaymentToken` structure.

   For more information, see [Apple Pay on the Web Interactive Demo](https://applepaydemo.apple.com/ "").

3. You forward the encrypted payment data to your order management system to decrypt. For information on decryption, see the [Payment Token Format Reference](https://developer.apple.com/library/archive/documentation/PassKit/Reference/PaymentTokenJSON/PaymentTokenJSON.md#//apple_ref/doc/uid/TP40014929-CH8-SW1 "") article in the Apple Pay Developer Documentation.

4. Using the `Cybersource` API, you submit the authorization request and include the decrypted payment data. See [Authorization Service](/docs/cybs/en-us/apple-pay/developer/smartpay/rest/applepay/applepay-txns-intro/applepay-auth-intro.md "").

5. `Cybersource` forwards the information to the payment network, which includes your processor and the relevant payment card company. IMPORTANT
   Use the ` Business Center ` or one of the ` Cybersource ` API services to capture, credit, or void the authorization.

Configuring Apple Pay Processing {#applepay-configuring-intro}
==============================================================

A successful Apple Pay response to a payment request returns an encrypted payload that contains sensitive payment information. The payment information is extracted and decrypted using `Cybersource` decryption or merchant decryption.  
Before you can process Apple Pay transactions, you must complete these configuration tasks:

Generating and Loading a New Certificate Signing Request
:
For processing Apple Pay transactions using `Cybersource` decryption, you must first generate an Apple Pay encryption key on the business portal and load it into the Apple development portal.
:
For merchant decryption, this configuration task is not needed.

Configuring Apple Pay Response Handling
:
After the payment token is received, the transaction is finalized when you extract and decrypt the payment data. `Cybersource` decryption and merchant decryption methods consist of different configuration steps.

Generating and Loading a New Certificate Signing Request {#applepay_enrolling}
==============================================================================

This task is required in order to process Apple Pay transactions using `Cybersource` decryption. It does not apply to merchant decryption.
Follow these steps in order to configure Apple Pay in the `Cybersource` `Business Center`:

1. Log in to the `Business Center`:

   * Test: [businesscentertest.cybersource.com](https://businesscentertest.cybersource.com "")
   * Production: [businesscenter.cybersource.com](https://businesscenter.cybersource.com "")
2. On the left navigation panel, click the Payment Configuration icon.

3. Click Digital Payment Solution. The Digital Payments page appears. If you do not have the correct permissions enabled on your account, the Digital Payment Solution option does not appear on the left navigation panel.

4. Click Configure. The Apple Pay Registration panel opens.

5. Enter your Apple Merchant ID.

6. Click Generate New CSR.

7. To download your CSR, click the Download icon next to the key.

8. Follow your browser's instructions to save and open the file.

9. Complete the enrollment process by submitting your CSR to Apple.

10. For information about adding certificates to your Apple Merchant ID, refer to the Apple Pay PassKit:

    #### ADDITIONAL INFORMATION

    * In-App: [Setting Up Apple Pay](https://developer.apple.com/documentation/passkit/apple_pay/setting_up_apple_pay "")
    * Website: [Configuring Your Environment](https://developer.apple.com/documentation/apple_pay_on_the_web/configuring_your_environment "")
      {#applepay_enrolling_ul_kss_yb1_mrb}
11. Test your software by following the steps in [Authorization Service](/docs/cybs/en-us/apple-pay/developer/smartpay/rest/applepay/applepay-txns-intro/applepay-auth-intro.md "").

    #### ADDITIONAL INFORMATION

    > IMPORTANT
    > If you are using a ` Cybersource ` test account, you must connect to the [Apple sandbox](https://developer.apple.com/apple-pay/sandbox-testing/ "") tester account and not to the Apple production system.  
    > After you complete your testing, you must create a new CSR for the ` Cybersource ` production system, and you must use that CSR for the Apple production system. Until you perform these steps, you cannot enable payments in your iOS application or website.

12. Repeat Steps 1 through 11 with your `Cybersource` production account and the Apple production account.

Configuring Apple Pay Response Handling {#applepay-web-configuring}
===================================================================

Configure one of the following decryption methods that will handle the response payload of a successful Apple Pay transaction.

1. After the payment token is received, the transaction is finalized when you extract and decrypt the payment data.
   * **`Cybersource` Decryption** :  
     This method forwards the encrypted payment data to your order management system. Use the `Cybersource` API to submit the authorization request, and include the Base64-encoded value obtained from the `paymentData` object in the paymentInformaton.fluidData.value field.  
     Example of `Cybersource`decryption:

     ```
     session.onpaymentauthorized = function (event) {
         var paymentDataString = JSON.stringify(event.payment.token.paymentData);
         var paymentDataBase64 = btoa(paymentDataString);
     }
     ```
   * **Merchant Decryption** :  
     This method forwards the encrypted payment data to your order management system to decrypt. Use the `Cybersource` API to submit the authorization request and include the decrypted payment data.  
     For detailed information about decryption, see [Payment Token Format Reference](https://developer.apple.com/library/ios/documentation/PassKit/Reference/PaymentTokenJSON/PaymentTokenJSON.md#//apple_ref/doc/uid/TP40014929-CH8-SW1 "") in the Apple Developer Center.

Processing Apple Pay Transactions {#applepay_txns_intro}
========================================================

This section provides information about the different kinds of Apple Pay transactions that you can submit:

Authorizing a Payment Using `Cybersource` Decryption or Merchant Decryption
:
You can request the authorization service using these decryption methods:

    * `Cybersource` decryption: Within this integration, `Cybersource` facilitates all of the encryption key generation and decryption processes associated with implementing Apple Pay. This method reduces the exposure of the sensitive payment data to your system.
    * Merchant decryption: Within this integration, you manage all aspects of the Apple Pay integration, from generation of the payment encryption keys to decryption of the Apple Pay payload response. As a merchant, you submit the Apple Pay payment token and other payment information to `Cybersource` for processing.

Reversing an Authorization
:
This service uses the request ID returned from the previous authorization. An authorization reversal releases the hold that the authorization placed on the customer's credit card funds. Use this service to reverse an unnecessary or undesired authorization.

Capturing a Payment
:
This service uses the request ID returned from the previous authorization. The request ID links the capture to the authorization. Use this service to transfer funds from the customer's account to your bank. The transaction typically completes in two to four days.

Authorizing and Capturing a Payment
:
A bundled authorization and capture is called a **sale** . Request the authorization and capture services at the same time. `Cybersource` processes the capture immediately.

Authorization Service {#applepay-auth-intro}
============================================

This section provides the information that you need for requesting the authorization service using these methods which determine the request fields that are required to request the authorization service. In addition, different request fields are required in order to request the authorization service. The type of card used to process the transaction determines which request fields are used.  
After you send the request, verify the response messages to make sure that the request was successful. A 200-level HTTP response code indicates success.  
For information about response codes, see [Transaction Response Codes](https://developer.cybersource.com/api/reference/response-codes.md "").

Endpoint {#applepay-auth-intro_d11e16}
--------------------------------------

**Production:** `POST ``https://api.cybersource.com``/pts/v2/payments`{#applepay-auth-intro_d11e25}  
**Test:** `POST ``https://apitest.cybersource.com``/pts/v2/payments`{#applepay-auth-intro_d11e35}

Authorizations Using `Cybersource` Decryption for American Express {#applepay-auth-cybs-intro-amex}
===================================================================================================

This section shows you how to process an authorization using `Cybersource` decryption for American Express.

Required Fields for Authorizing a Payment Using `Cybersource` Decryption for American Express {#applepay-auth-reqfields-cybs-amex}
==================================================================================================================================

clientReferenceInformation.code
:

orderInformation.amountDetails.currency
:

orderInformation.amountDetails.totalAmount
:

orderInformation.billTo.address1
:

orderInformation.billTo.administrativeArea
:

orderInformation.billTo.country
:

orderInformation.billTo.email
:

orderInformation.billTo.firstName
:

orderInformation.billTo.lastName
:

orderInformation.billTo.locality
:

orderInformation.billTo.postalCode
:

paymentInformation.card.type
:

paymentInformation.fluidData.descriptor
:
Set this field to `RklEPUNPTU1PTi5BUFBMRS5JTkFQUC5QQVlNRU5U`.

paymentInformaton.fluidData.value
:
Set this field to the Base64-encoded value obtained from the `paymentData` property of the `PKPaymentToken` object.

paymentInformation.tokenizedCard.transactionType
:
Set this field to `1`.

processingInformation.paymentSolution
:
Set this field to `001`.

Related Information {#applepay-auth-reqfields-cybs-amex_section_m52_cx4_1yb}
----------------------------------------------------------------------------

* [API Field Reference for the REST API](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/acq-info.md "")
  {#applepay-auth-reqfields-cybs-amex_ul_n52_cx4_1yb}

Optional Fields for Authorizing a Payment for Apple Pay Transactions {#appplepay_auth_opt_fields_cybs_decrypt}
==============================================================================================================

You can include these optional fields in a request for an authorization:

paymentInformation.tokenizedCard.requestorId
:
Set this field to your token requestor ID that is assigned by the token service provider.

Related Information {#appplepay_auth_opt_fields_cybs_decrypt_section_ynd_dx4_1yb}
---------------------------------------------------------------------------------

* [API Field Reference for the REST API](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/acq-info.md "")
  {#appplepay_auth_opt_fields_cybs_decrypt_ul_znd_dx4_1yb}

REST Example: `Cybersource` Decryption and American Express {#applepay-auth-ex-cybs-amex-rest}
==============================================================================================

Request

```
{
    "clientReferenceInformation": {
        "code": "1234567890"
    },
    "processingInformation": {
        "paymentSolution": "001"
    },
    "paymentInformation": {
        "fluidData": {
           "value"="eyJkYXRhW5FINWZqVjfkak1NdVNSaE96dWF2ZGVyb2c9PSJ9",
            "descriptor": "RklEPUNPTU1PTi5BUFBMRS5JTkFQUC5QQVlNRU5U",
            "encoding": "Base64",
        },
       "tokenizedCard": {
            "type": "003",
            "transactionType": "1",
	        "requestorId": "987654321plokijuhygtfrdeswa"
        }
    },
    "orderInformation": {
        "amountDetails": {
            "totalAmount": "100.00",
            "currency": "USD"
        },
        "billTo": {
            "firstName": "Maya",
            "lastName": "Lee",
            "address1": "123 Main St",
            "locality": "SomeCity",
            "administrativeArea": "CA",
            "postalCode": "94404",
            "country": "US",
            "email": "maya.lee@email.world"
        }
    }
}
```

Response to a Successful Request

```
{
    "_links": {
        "authReversal": {
            "method": "POST",
            "href": "/pts/v2/payments/6234236182176225003004/reversals"
        },
        "self": {
            "method": "GET",
            "href": "/pts/v2/payments/6234236182176225003004"
        },
        "capture": {
            "method": "POST",
            "href": "/pts/v2/payments/6234236182176225003004/captures"
        }
    },
    "clientReferenceInformation": {
        "code": "1234567890"
    },
    "id": "6234236182176225003004",
    "orderInformation": {
        "amountDetails": {
            "authorizedAmount": "100.00",
            "currency": "USD"
        }
    },
    "paymentInformation": {
        "tokenizedCard": {
            "expirationYear": "2031",
            "prefix": "593056",
            "expirationMonth": "12",
            "suffix": "0842",
            "type": "003"
        },
        "card": {
            "type": "003"
        }
    },
    "pointOfSaleInformation": {
        "terminalId": "111111"
    },
    "processingInformation": {
        "paymentSolution": "001"
    },
    "processorInformation": {
        "approvalCode": "888888",
        "networkTransactionId": "123456789619999",
        "transactionId": "123456789619999",
        "responseCode": "100",
        "avs": {
            "code": "X",
            "codeRaw": "I1"
        }
    },
    "reconciliationId": "75729760OPN67ZFV",
    "status": "AUTHORIZED",
    "submitTimeUtc": "2021-06-11T15:00:18Z"
}
```

Authorizations Using `Cybersource` Decryption for Discover {#applepay-auth-cybs-intro-discover}
===============================================================================================

This section provides the information you need in order to process an authorization using `Cybersource` decryption for Discover.

Required Fields for Authorizing a Payment Using `Cybersource` Decryption for Discover {#applepay-auth-reqfields-cybs-discover}
==============================================================================================================================

clientReferenceInformation.code
:

orderInformation.amountDetails.currency
:

orderInformation.amountDetails.totalAmount
:

orderInformation.billTo.address1
:

orderInformation.billTo.administrativeArea
:

orderInformation.billTo.country
:

orderInformation.billTo.email
:

orderInformation.billTo.firstName
:

orderInformation.billTo.lastName
:

orderInformation.billTo.locality
:

orderInformation.billTo.postalCode
:

paymentInformation.card.type
:

paymentInformation.fluidData.descriptor
:
Set this field to `RklEPUNPTU1PTi5BUFBMRS5JTkFQUC5QQVlNRU5U`.

paymentInformaton.fluidData.value
:
Set this field to the Base64-encoded value obtained from the `paymentData` property of the `PKPaymentToken` object.

paymentInformation.tokenizedCard.transactionType
:
Set this field to `1`.

processingInformation.paymentSolution
:
Set this field to `001`.

Related Information {#applepay-auth-reqfields-cybs-discover_section_hx1_2x4_1yb}
--------------------------------------------------------------------------------

* [API Field Reference for the REST API](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/acq-info.md "")
  {#applepay-auth-reqfields-cybs-discover_ul_ix1_2x4_1yb}

REST Example: `Cybersource` Decryption and Discover {#applepay-auth-ex-cybs-discover-rest}
==========================================================================================

Request

```
{
    "clientReferenceInformation": {
        "code": "1234567890"
    },
    "processingInformation": {
        "paymentSolution": "001"
    },
    "paymentInformation": {
        "fluidData": {
           "value"="eyJkYXRhW5FINWZqVjfkak1NdVNSaE96dWF2ZGVyb2c9PSJ9",
            "descriptor": "RklEPUNPTU1PTi5BUFBMRS5JTkFQUC5QQVlNRU5U",
            "encoding": "Base64",
        },
       "tokenizedCard": {
            "type": "004",
            "transactionType": "1",
        }
    },
    "orderInformation": {
        "amountDetails": {
            "totalAmount": "100.00",
            "currency": "USD"
        },
        "billTo": {
            "firstName": "Maya",
            "lastName": "Lee",
            "address1": "123 Main St",
            "locality": "SomeCity",
            "administrativeArea": "CA",
            "postalCode": "94404",
            "country": "US",
            "email": "maya.lee@email.world"
        }
    }
} 
```

Response to a Successful Request

```
{
    "_links": {
        "authReversal": {
            "method": "POST",
            "href": "/pts/v2/payments/6234236182176225003004/reversals"
        },
        "self": {
            "method": "GET",
            "href": "/pts/v2/payments/6234236182176225003004"
        },
        "capture": {
            "method": "POST",
            "href": "/pts/v2/payments/6234236182176225003004/captures"
        }
    },
    "clientReferenceInformation": {
        "code": "1234567890"
    },
    "id": "6234236182176225003004",
    "orderInformation": {
        "amountDetails": {
            "authorizedAmount": "100.00",
            "currency": "USD"
        }
    },
    "paymentInformation": {
        "tokenizedCard": {
            "expirationYear": "2031",
            "prefix": "601111",
            "expirationMonth": "12",
            "suffix": "1117",
            "type": "004"
        },
        "card": {
            "type": "004"
        }
    },
    "pointOfSaleInformation": {
        "terminalId": "111111"
    },
    "processingInformation": {
        "paymentSolution": "001"
    },
    "processorInformation": {
        "approvalCode": "888888",
        "networkTransactionId": "123456789619999",
        "transactionId": "123456789619999",
        "responseCode": "100",
        "avs": {
            "code": "X",
            "codeRaw": "I1"
        }
    },
    "reconciliationId": "75729760OPN67ZFV",
    "status": "AUTHORIZED",
    "submitTimeUtc": "2021-06-11T15:00:18Z"
}
```

Authorizations Using `Cybersource` Decryption for Mastercard {#applepay-auth-cybs-intro-mc}
===========================================================================================

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

Required Fields for Authorizing a Payment Using `Cybersource` Decryption for Mastercard {#applepay-auth-reqfields-cybs-mc}
==========================================================================================================================

clientReferenceInformation.code
:

orderInformation.amountDetails.currency
:

orderInformation.amountDetails.totalAmount
:

orderInformation.billTo.address1
:

orderInformation.billTo.administrativeArea
:

orderInformation.billTo.country
:

orderInformation.billTo.email
:

orderInformation.billTo.firstName
:

orderInformation.billTo.lastName
:

orderInformation.billTo.locality
:

orderInformation.billTo.postalCode
:

paymentInformation.card.type
:

paymentInformation.fluidData.descriptor
:
Set this field to `RklEPUNPTU1PTi5BUFBMRS5JTkFQUC5QQVlNRU5U`.

paymentInformaton.fluidData.value
:
Set this field to the Base64-encoded value obtained from the `paymentData` property of the `PKPaymentToken` object.

paymentInformation.tokenizedCard.transactionType
:
Set this field to `1`.

processingInformation.paymentSolution
:
Set this field to `001`.

Related Information
-------------------

* [API Field Reference for the REST API](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/acq-info.md "")
  {#applepay-auth-reqfields-cybs-mc_ul_psd_gx4_1yb}

REST Example: `Cybersource` Decryption and Mastercard {#applepay-auth-ex-cybs-mc-rest}
======================================================================================

Request

```
{
    "clientReferenceInformation": {
        "code": "1234567890"
    },
    "processingInformation": {
        "paymentSolution": "001"
    },
    "paymentInformation": {
        "fluidData": {
            "value"="eyJkYXRhW5FINWZqVjfkak1NdVNSaE96dWF2ZGVyb2c9PSJ9",
            "descriptor": "RklEPUNPTU1PTi5BUFBMRS5JTkFQUC5QQVlNRU5U",
            "encoding": "Base64",
        },
       "tokenizedCard": {
            "type": "002",
            "transactionType": "1"
        }
    },
    "orderInformation": {
        "amountDetails": {
            "totalAmount": "100.00",
            "currency": "USD"
        },
        "billTo": {
            "firstName": "Maya",
            "lastName": "Lee",
            "address1": "123 Main St",
            "locality": "SomeCity",
            "administrativeArea": "CA",
            "postalCode": "94404",
            "country": "US",
            "email": "maya.lee@email.world"
        }
    }
}
```

Response to a Successful Request

```
{
    "_links": {
        "authReversal": {
            "method": "POST",
            "href": "/pts/v2/payments/6234236182176225003004/reversals"
        },
        "self": {
            "method": "GET",
            "href": "/pts/v2/payments/6234236182176225003004"
        },
        "capture": {
            "method": "POST",
            "href": "/pts/v2/payments/6234236182176225003004/captures"
        }
    },
    "clientReferenceInformation": {
        "code": "1234567890"
    },
    "id": "6234236182176225003004",
    "orderInformation": {
        "amountDetails": {
            "authorizedAmount": "100.00",
            "currency": "USD"
        }
    },
    "paymentInformation": {
        "tokenizedCard": {
            "expirationYear": "2031",
            "prefix": "128945",
            "expirationMonth": "12",
            "suffix": "2398",
            "type": "002"
        },
        "card": {
            "type": "002"
        }
    },
    "pointOfSaleInformation": {
        "terminalId": "111111"
    },
    "processingInformation": {
        "paymentSolution": "001"
    },
    "processorInformation": {
        "approvalCode": "888888",
        "networkTransactionId": "123456789619999",
        "transactionId": "123456789619999",
        "responseCode": "100",
        "avs": {
            "code": "X",
            "codeRaw": "I1"
        }
    },
    "reconciliationId": "75729760OPN67ZFV",
    "status": "AUTHORIZED",
    "submitTimeUtc": "2021-06-11T15:00:18Z"
}         
```

Authorizations Using `Cybersource` Decryption for Visa {#applepay-auth-cybs-intro-visa}
=======================================================================================

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

Required Fields for Authorizing a Payment Using `Cybersource` Decryption for Visa {#applepay-auth-reqfields-cybs-visa}
======================================================================================================================

clientReferenceInformation.code
:

orderInformation.amountDetails.currency
:

orderInformation.amountDetails.totalAmount
:

orderInformation.billTo.address1
:

orderInformation.billTo.administrativeArea
:

orderInformation.billTo.country
:

orderInformation.billTo.email
:

orderInformation.billTo.firstName
:

orderInformation.billTo.lastName
:

orderInformation.billTo.locality
:

orderInformation.billTo.postalCode
:

paymentInformation.card.type
:

paymentInformation.fluidData.descriptor
:
Set this field to `RklEPUNPTU1PTi5BUFBMRS5JTkFQUC5QQVlNRU5U`.

paymentInformaton.fluidData.value
:
Set this field to the Base64-encoded value obtained from the `paymentData` property of the `PKPaymentToken` object.

paymentInformation.tokenizedCard.transactionType
:
Set this field to `1`.

processingInformation.paymentSolution
:
Set this field to `001`.

Related Information
-------------------

* [API Field Reference for the REST API](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/acq-info.md "")
  {#applepay-auth-reqfields-cybs-visa_ul_u4z_gx4_1yb}

REST Example: `Cybersource` Decryption for Visa {#applepay-auth-ex-cybs-visa-rest}
==================================================================================

Request

```
{
    "clientReferenceInformation": {
        "code": "1234567890"
    },
    "processingInformation": {
        "paymentSolution": "001"
    },
    "paymentInformation": {
        "fluidData": {
            "value"="eyJkYXRhW5FINWZqVjfkak1NdVNSaE96dWF2ZGVyb2c9PSJ9",
            "descriptor": "RklEPUNPTU1PTi5BUFBMRS5JTkFQUC5QQVlNRU5U",
            "encoding": "Base64",
        },
       "tokenizedCard": {
            "type": "001",
            "transactionType": "1"
        }
    },
    "orderInformation": {
        "amountDetails": {
            "totalAmount": "100.00",
            "currency": "USD"
        },
        "billTo": {
            "firstName": "Maya",
            "lastName": "Lee",
            "address1": "123 Main St",
            "locality": "SomeCity",
            "administrativeArea": "CA",
            "postalCode": "94404",
            "country": "US",
            "email": "maya.lee@email.world"
        }
    }
}
```

Response to a Successful Request

```
{
    "_links": {
        "authReversal": {
            "method": "POST",
            "href": "/pts/v2/payments/6234236182176225003004/reversals"
        },
        "self": {
            "method": "GET",
            "href": "/pts/v2/payments/6234236182176225003004"
        },
        "capture": {
            "method": "POST",
            "href": "/pts/v2/payments/6234236182176225003004/captures"
        }
    },
    "clientReferenceInformation": {
        "code": "1234567890"
    },
    "id": "6234236182176225003004",
    "orderInformation": {
        "amountDetails": {
            "authorizedAmount": "100.00",
            "currency": "USD"
        }
    },
    "paymentInformation": {
        "tokenizedCard": {
            "expirationYear": "2031",
            "prefix": "411111",
            "expirationMonth": "12",
            "suffix": "1111",
            "type": "001"
        },
        "card": {
            "type": "001"
        }
    },
    "pointOfSaleInformation": {
        "terminalId": "111111"
    },
    "processingInformation": {
        "paymentSolution": "001"
    },
    "processorInformation": {
        "approvalCode": "888888",
        "networkTransactionId": "123456789619999",
        "transactionId": "123456789619999",
        "responseCode": "100",
        "avs": {
            "code": "X",
            "codeRaw": "I1"
        }
    },
    "reconciliationId": "75729760OPN67ZFV",
    "status": "AUTHORIZED",
    "submitTimeUtc": "2021-06-11T15:00:18Z"
}
```

Authorizations Using Merchant Decryption for American Express {#applepay-auth-merch-intro-amex}
===============================================================================================

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

Required Fields for Authorizing a Payment Using Merchant Decryption for American Express {#applepay-auth-reqfields-merch-amex}
==============================================================================================================================

clientReferenceInformation.code
:

consumerAuthenticationInformation.cavv
:
Set this field to the network token cryptogram.

consumerAuthenticationInformation.ecommerceIndicator
:
Set this field to `internet`.

orderInformation.amountDetails.currency
:

orderInformation.amountDetails.totalAmount
:

orderInformation.billTo.address1
:

orderInformation.billTo.administrativeArea
:

orderInformation.billTo.country
:

orderInformation.billTo.email
:

orderInformation.billTo.firstName
:

orderInformation.billTo.lastName
:

orderInformation.billTo.locality
:

orderInformation.billTo.postalCode
:

paymentInformation.card.type
:

paymentinformation.tokenizedCard.cryptogram
:
Set this field to the network token cryptogram.
:
> IMPORTANT
> Include the whole 20-byte cryptogram in the paymentinformation.tokenizedCard.cryptogram field. For a 40-byte cryptogram, split the cryptogram into two 20-byte binary values (block A and block B). Set the paymentinformation.tokenizedCard.cryptogram field to the block A value and set the consumerAuthenticationInformation.xid field to the block B value.

paymentInformation.tokenizedCard.expirationMonth
:
Set this field to the value from the payment network token expiration month.

paymentInformation.tokenizedCard.expirationYear
:
Set this field to the value from the payment network token expiration year.

paymentInformation.tokenizedCard.transactionType
:
Set this field to `1`.

processingInformation.paymentSolution
:
Set this field to `001`.

Related Information {#applepay-auth-reqfields-merch-amex_section_xgy_hx4_1yb}
-----------------------------------------------------------------------------

* [API Field Reference for the REST API](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/acq-info.md "")
  {#applepay-auth-reqfields-merch-amex_ul_ygy_hx4_1yb}

REST Example: Merchant Decryption and American Express {#applepay-auth-ex-merch-amex-rest}
==========================================================================================

Request

```
{
    "clientReferenceInformation": {
        "code": "1234567890"
    },
    "processingInformation": {
        "paymentSolution": "001",
        "commerceIndicator": "aesk"
    },
    "paymentInformation": {
       "tokenizedCard": {
            "number": "37828224631xxxx",
            "expirationMonth": "12",
            "expirationYear": "2031",
            "cryptogram": "AceY+igABPs3jdwNaDg3MAACAAA=",
            "transactionType": "1"
            "type": "003"
        }
    },
    "orderInformation": {
        "amountDetails": {
            "totalAmount": "100.00",
            "currency": "USD"
        },
        "billTo": {
            "firstName": "Maya",
            "lastName": "Lee",
            "address1": "123 Main St",
            "locality": "SomeCity",
            "administrativeArea": "CA",
            "postalCode": "94404",
            "country": "US",
            "email": "maya.lee@email.world"
        }
    },
    "consumerAuthenticationInformation": {
        "cavv": "AceY+igABPs3jdwNaDg3MAACAAA="
    }
}           
```

Response to a Successful Request

```
{
    "_links": {
        "authReversal": {
            "method": "POST",
            "href": "/pts/v2/payments/6234236182176225003004/reversals"
        },
        "self": {
            "method": "GET",
            "href": "/pts/v2/payments/6234236182176225003004"
        },
        "capture": {
            "method": "POST",
            "href": "/pts/v2/payments/6234236182176225003004/captures"
        }
    },
    "clientReferenceInformation": {
        "code": "1234567890"
    },
    "id": "6234236182176225003004",
    "orderInformation": {
        "amountDetails": {
            "authorizedAmount": "100.00",
            "currency": "USD"
        }
    },
    "paymentInformation": {
        "tokenizedCard": {
            "expirationYear": "2031",
            "prefix": "378282",
            "expirationMonth": "12",
            "suffix": "1234",
            "type": "003"
        },
        "card": {
            "type": "003"
        }
    },
    "pointOfSaleInformation": {
        "terminalId": "111111"
    },
    "processingInformation": {
        "paymentSolution": "001"
    },
    "processorInformation": {
        "approvalCode": "888888",
        "networkTransactionId": "123456789619999",
        "transactionId": "123456789619999",
        "responseCode": "100",
        "avs": {
            "code": "X",
            "codeRaw": "I1"
        }
    },
    "reconciliationId": "75729760OPN67ZFV",
    "status": "AUTHORIZED",
    "submitTimeUtc": "2021-06-11T15:00:18Z"
}
            
```

Authorizations Using Merchant Decryption for Discover {#applepay-auth-merch-intro-discover}
===========================================================================================

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

Required Fields for Authorizing a Payment Using Merchant Decryption for Discover {#applepay-auth-reqfields-merch-discover}
==========================================================================================================================

clientReferenceInformation.code
:

consumerAuthenticationInformation.cavv
:
Set this field to the network token cryptogram.

consumerAuthenticationInformation.ecommerceIndicator
:
Set this field to `internet`.

orderInformation.amountDetails.currency
:

orderInformation.amountDetails.totalAmount
:

orderInformation.billTo.address1
:

orderInformation.billTo.administrativeArea
:

orderInformation.billTo.country
:

orderInformation.billTo.email
:

orderInformation.billTo.firstName
:

orderInformation.billTo.lastName
:

orderInformation.billTo.locality
:

orderInformation.billTo.postalCode
:

paymentInformation.card.type
:

paymentInformation.tokenizedCard.cryptogram
:
Set this field to the network token cryptogram.

paymentInformation.tokenizedCard.expirationMonth
:
Set this field to the value from the payment network token expiration month.

paymentInformation.tokenizedCard.expirationYear
:
Set this field to the value from the payment network token expiration year.

paymentInformation.tokenizedCard.number
:
Set this field to the payment network token value.

paymentInformation.tokenizedCard.transactionType
:
Set this field to `1`.

processingInformation.paymentSolution
:
Set this field to `001`.

Related Information {#applepay-auth-reqfields-merch-discover_section_lfy_jx4_1yb}
---------------------------------------------------------------------------------

* [API Field Reference for the REST API](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/acq-info.md "")
  {#applepay-auth-reqfields-merch-discover_ul_mfy_jx4_1yb}

REST Example: Merchant Decryption and Discover {#applepay-auth-ex-merch-discover-rest}
======================================================================================

Request

```
{
    "clientReferenceInformation": {
        "code": "1234567890"
    },
    "processingInformation": {
        "paymentSolution": "001",
        "commerceIndicator": "dipb"
    },
    "paymentInformation": {
       "tokenizedCard": {
            "number": "601111111111xxxx",
            "expirationMonth": "12",
            "expirationYear": "2031",
            "cryptogram": "AceY+igABPs3jdwNaDg3MAACAAA=",
            "transactionType": "1"
            "type": "004"
        }
    },
    "orderInformation": {
        "amountDetails": {
            "totalAmount": "100.00",
            "currency": "USD"
        },
        "billTo": {
            "firstName": "Maya",
            "lastName": "Lee",
            "address1": "123 Main St",
            "locality": "SomeCity",
            "administrativeArea": "CA",
            "postalCode": "94404",
            "country": "US",
            "email": "maya.lee@email.world"
        }
    },
    "consumerAuthenticationInformation": {
        "cavv": "AceY+igABPs3jdwNaDg3MAACAAA="
    }
}         
```

Response to a Successful Request

```
{
    "_links": {
        "authReversal": {
            "method": "POST",
            "href": "/pts/v2/payments/6234236182176225003004/reversals"
        },
        "self": {
            "method": "GET",
            "href": "/pts/v2/payments/6234236182176225003004"
        },
        "capture": {
            "method": "POST",
            "href": "/pts/v2/payments/6234236182176225003004/captures"
        }
    },
    "clientReferenceInformation": {
        "code": "1234567890"
    },
    "id": "6234236182176225003004",
    "orderInformation": {
        "amountDetails": {
            "authorizedAmount": "100.00",
            "currency": "USD"
        }
    },
    "paymentInformation": {
        "tokenizedCard": {
            "expirationYear": "2031",
            "prefix": "601111",
            "expirationMonth": "12",
            "suffix": "0842",
            "type": "003"
        },
        "card": {
            "type": "003"
        }
    },
    "pointOfSaleInformation": {
        "terminalId": "111111"
    },
    "processingInformation": {
        "paymentSolution": "001"
    },
    "processorInformation": {
        "approvalCode": "888888",
        "networkTransactionId": "123456789619999",
        "transactionId": "123456789619999",
        "responseCode": "100",
        "avs": {
            "code": "X",
            "codeRaw": "I1"
        }
    },
    "reconciliationId": "75729760OPN67ZFV",
    "status": "AUTHORIZED",
    "submitTimeUtc": "2021-06-11T15:00:18Z"
}     
```

Authorizations Using Merchant Decryption for Mastercard {#applepay-auth-merch-intro-mc}
=======================================================================================

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

Required Fields for Authorizing a Payment Using Merchant Decryption for Mastercard {#applepay-auth-reqfields-merch-mc}
======================================================================================================================

clientReferenceInformation.code
:

consumerAuthenticationInformation.ecommerceIndicator
:
Set this field to `internet`.

consumerAuthenticationInformation.ucafAuthenticationData
:
Set this field to the network token cryptogram.

consumerAuthenticationInformation.ucafCollectionIndicator
:
Set this field to `2`.

orderInformation.amountDetails.currency
:

orderInformation.amountDetails.totalAmount
:

orderInformation.billTo.address1
:

orderInformation.billTo.administrativeArea
:

orderInformation.billTo.country
:

orderInformation.billTo.email
:

orderInformation.billTo.firstName
:

orderInformation.billTo.lastName
:

orderInformation.billTo.locality
:

orderInformation.billTo.postalCode
:

paymentInformation.tokenizedCard.cryptogram
:
Set this field to the network token cryptogram.

paymentInformation.tokenizedCard.expirationMonth
:
Set this field to the value from the payment network token expiration month.

paymentInformation.tokenizedCard.expirationYear
:
Set this field to the value from the payment network token expiration year.

paymentInformation.tokenizedCard.number
:
Set this field to the payment network token value.

paymentInformation.tokenizedCard.transactionType
:
Set this field to `1`.

processingInformation.paymentSolution
:
Set this field to `001`.

Related Information {#applepay-auth-reqfields-merch-mc_section_pvh_mx4_1yb}
---------------------------------------------------------------------------

* [API Field Reference for the REST API](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/acq-info.md "")
  {#applepay-auth-reqfields-merch-mc_ul_qvh_mx4_1yb}

REST Example: Merchant Decryption and Mastercard {#applepay-auth-ex-merch-mc-rest}
==================================================================================

Request

```
{
    "clientReferenceInformation": {
        "code": "1234567890"
    },
    "processingInformation": {
        "paymentSolution": "001",
        "commerceIndicator": "spa"
    },
    "paymentInformation": {
       "tokenizedCard": {
            "number": "5432543254325432",
            "expirationMonth": "12",
            "expirationYear": "2031",
            "cryptogram": "ABCDEFabcdefABCDEFabcdef0987654321234567",
            
            "transactionType": "1",
            "type": "002"
        }
    },
    "orderInformation": {
        "amountDetails": {
            "totalAmount": "100.00",
            "currency": "USD"
        },
        "billTo": {
            "firstName": "Maya",
            "lastName": "Lee",
            "address1": "123 Main St",
            "locality": "SomeCity",
            "administrativeArea": "CA",
            "postalCode": "94404",
            "country": "US",
            "email": "maya.lee@email.world"
        }
    },
    "consumerAuthenticationInformation": {
        "ucafAuthenticationData": "ABCDEFabcdefABCDEFabcdef0987654321234567",
        "ucafCollectionIndicator": "2"
    }
}
```

Response to a Successful Request

```
{
    "_links": {
        "authReversal": {
            "method": "POST",
            "href": "/pts/v2/payments/6234236182176225003004/reversals"
        },
        "self": {
            "method": "GET",
            "href": "/pts/v2/payments/6234236182176225003004"
        },
        "capture": {
            "method": "POST",
            "href": "/pts/v2/payments/6234236182176225003004/captures"
        }
    },
    "clientReferenceInformation": {
        "code": "1234567890"
    },
    "id": "6234236182176225003004",
    "orderInformation": {
        "amountDetails": {
            "authorizedAmount": "100.00",
            "currency": "USD"
        }
    },
    "paymentInformation": {
        "tokenizedCard": {
            "expirationYear": "2031",
            "prefix": "543254",
            "expirationMonth": "12",
            "suffix": "5432",
            "type": "002"
        },
        "card": {
            "type": "002"
        }
    },
    "pointOfSaleInformation": {
        "terminalId": "111111"
    },
    "processingInformation": {
        "paymentSolution": "001"
    },
    "processorInformation": {
        "approvalCode": "888888",
        "networkTransactionId": "123456789619999",
        "transactionId": "123456789619999",
        "responseCode": "100",
        "avs": {
            "code": "X",
            "codeRaw": "I1"
        }
    },
    "reconciliationId": "75729760OPN67ZFV",
    "status": "AUTHORIZED",
    "submitTimeUtc": "2021-06-11T15:00:18Z"
}
```

Authorizations Using Merchant Decryption for Visa {#applepay-auth-merch-intro-visa}
===================================================================================

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

Required Fields for Authorizing a Payment Using Merchant Decryption for Visa {#applepay-auth-reqfields-merch-visa}
==================================================================================================================

clientReferenceInformation.code
:

consumerAuthenticationInformation.cavv
:
Set this field to the network token cryptogram.

consumerAuthenticationInformation.ecommerceIndicator
:
Set this field to the ECI value contained in the Apple Pay response payload.

orderInformation.amountDetails.currency
:

orderInformation.amountDetails.totalAmount
:

orderInformation.billTo.address1
:

orderInformation.billTo.administrativeArea
:

orderInformation.billTo.country
:

orderInformation.billTo.email
:

orderInformation.billTo.firstName
:

orderInformation.billTo.lastName
:

orderInformation.billTo.locality
:

orderInformation.billTo.postalCode
:

paymentInformation.tokenizedCard.cryptogram
:
Set this field to the network token cryptogram.

paymentInformation.tokenizedCard.expirationMonth
:
Set this field to the value from the payment network token expiration month.

paymentInformation.tokenizedCard.expirationYear
:
Set this field to the value from the payment network token expiration year.

paymentInformation.tokenizedCard.number
:
Set this field to the payment network token value.

paymentInformation.tokenizedCard.transactionType
:
Set this field to `1`.

processingInformation.paymentSolution
:
Set this field to `001`.

Related Information {#applepay-auth-reqfields-merch-visa_section_fxl_nx4_1yb}
-----------------------------------------------------------------------------

* [API Field Reference for the REST API](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/acq-info.md "")
  {#applepay-auth-reqfields-merch-visa_ul_gxl_nx4_1yb}

REST Example: Merchant Decryption and Visa {#applepay-auth-ex-merch-visa-rest}
==============================================================================

Request

```
{
    "clientReferenceInformation": {
        "code": "1234567890"
    },
    "processingInformation": {
        "paymentSolution": "001",
        "commerceIndicator": "internet"
    },
    "paymentInformation": {
       "tokenizedCard": {
            "number": "4111111111111111",
            "expirationMonth": "12",
            "expirationYear": "2031",
            "cryptogram": "AceY+igABPs3jdwNaDg3MAACAAA=",
            "transactionType": "1"
            "type": "001"
        }
    },
    "orderInformation": {
        "amountDetails": {
            "totalAmount": "100.00",
            "currency": "USD"
        },
        "billTo": {
            "firstName": "Maya",
            "lastName": "Lee",
            "address1": "123 Main St",
            "locality": "SomeCity",
            "administrativeArea": "CA",
            "postalCode": "94404",
            "country": "US",
            "email": "maya.lee@email.world"
        }
    },
    "consumerAuthenticationInformation": {
        "cavv": "AceY+igABPs3jdwNaDg3MAACAAA="
    }
}          
```

Response to a Successful Request

```
{
    "_links": {
        "authReversal": {
            "method": "POST",
            "href": "/pts/v2/payments/6234236182176225003004/reversals"
        },
        "self": {
            "method": "GET",
            "href": "/pts/v2/payments/6234236182176225003004"
        },
        "capture": {
            "method": "POST",
            "href": "/pts/v2/payments/6234236182176225003004/captures"
        }
    },
    "clientReferenceInformation": {
        "code": "1234567890"
    },
    "id": "6234236182176225003004",
    "orderInformation": {
        "amountDetails": {
            "authorizedAmount": "100.00",
            "currency": "USD"
        }
    },
    "paymentInformation": {
        "tokenizedCard": {
            "expirationYear": "2031",
            "prefix": "411111",
            "expirationMonth": "12",
            
            "suffix": "1111",
            "type": "001"
        },
        "card": {
            "type": "001"
        }
    },
    "pointOfSaleInformation": {
        "terminalId": "111111"
    },
    "processingInformation": {
        "paymentSolution": "001"
    },
    "processorInformation": {
        "approvalCode": "888888",
        "networkTransactionId": "123456789619999",
        "transactionId": "123456789619999",
        "responseCode": "100",
        "avs": {
            "code": "X",
            "codeRaw": "I1"
        }
    },
    "reconciliationId": "75729760OPN67ZFV",
    "status": "AUTHORIZED",
    "submitTimeUtc": "2021-06-11T15:00:18Z"
}         
```

Authorization Reversals {#payments-processing-basic-auth-reversal-intro}
========================================================================

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

Endpoint {#payments-processing-basic-auth-reversal-intro_d11e85}
----------------------------------------------------------------

**Production:** `POST ``https://api.cybersource.com``/pts/v2/payments/`*{id}*`/reversals`{#payments-processing-basic-auth-reversal-intro_d11e94}  
**Test:** `POST ``https://apitest.cybersource.com``/pts/v2/payments/`*{id}*`/reversals`{#payments-processing-basic-auth-reversal-intro_d11e107}  
The *{id}* is the transaction ID returned in the authorization response.

Required Fields for Processing an Authorization Reversal {#payments-processing-basic-auth-reversal-required-fields}
===================================================================================================================

[clientReferenceInformation.code](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/client-ref-info-aa/client-ref-info-code.md "")
:

[clientReferenceInformation.partner.thirdPartyCertificationNumber](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/client-ref-info-aa/client-ref-info-partner-third-party-certnum.md "")
:
`Cybersource` provides the value for this field.

[id](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/id.md "")
:
Set the `id` URL parameter to the transaction ID that was included in the authorization response message.

[orderInformation.amountDetails.currency](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/order-info-aa/order-info-amount-details-currency.md "")
:

[reversalInformation.amountDetails.totalAmount](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/reversal-info-aa/reversal-info-amount-details-total-amount.md "")
:
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 {#payments-processing-basic-auth-reversal-ex-rest}
=====================================================================================================

Request

```
{ 
    "clientReferenceInformation": { 
      "code": "test123"
    } 
    "orderInformation" : { 
        "amountDetails" : { 
            "currency" : "USD" 
        } 
    }, 
    "reversalInformation" : { 
        "amountDetails" : { 
            "totalAmount" : "100.00" 
        } 
    } 
}
```

Response to a Successful Request

```
{
    "_links" : {
      "self" : {
          "method" : "GET",
          "href" : "/pts/v2/reversals/6869460219566537303955"
      }
    },
    "clientReferenceInformation" : {
        "code" : "RTS-Auth-Reversal"
    },
    "id" : "6869460219566537303955",
    "orderInformation" : {
        "amountDetails" : {
            "currency" : "USD"
        }
    },
    "processorInformation" : {
        "responseCode" : "200"
    },
    "reconciliationId" : "82kBK3qDNtls",
    "reversalAmountDetails" : {
        "reversedAmount" : "100.00",
        "currency" : "USD"
    },
    "status" : "REVERSED",
    "submitTimeUtc" : "2023-06-16T20:07:02Z"
}
```

Captures {#payments-processing-basic-capture-intro}
===================================================

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

Endpoint {#payments-processing-basic-capture-intro_d11e127}
-----------------------------------------------------------

**Production:** `POST ``https://api.cybersource.com``/pts/v2/payments/{id}/captures`{#payments-processing-basic-capture-intro_d11e136}  
**Test:** `POST ``https://apitest.cybersource.com``/pts/v2/payments/{id}/captures`{#payments-processing-basic-capture-intro_d11e146}  
The `{id}` is the transaction ID returned in the authorization response.

Required Fields for Capturing an Authorization {#payments-processing-basic-capture-required-fields}
===================================================================================================

Use these required fields for capturing an authorization.

[clientReferenceInformation.code](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/client-ref-info-aa/client-ref-info-code.md "")
:
This field value maps from the original authorization, sale, or credit transaction.

[clientReferenceInformation.partner.thirdPartyCertificationNumber](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/client-ref-info-aa/client-ref-info-partner-third-party-certnum.md "")
:
`Cybersource` provides the value for this field.

[orderInformation.amountDetails.currency](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/order-info-aa/order-info-amount-details-currency.md "")
:

[orderInformation.amountDetails.totalAmount](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/order-info-aa/order-info-amount-details-total-amount.md "")
:

REST Example: Capturing an Authorization {#payments-processing-basic-capture-ex-rest}
=====================================================================================

Request

```
{
    "clientReferenceInformation": {
        "code": "ABC123",
        "partner": {
            "thirdPartyCertificationNumber": "123456789012"
        }
    },
    "orderInformation": {
        "amountDetails": {
            "totalAmount": "100.00",
            "currency": "EUR"
    }
}
```

Response to a Successful Request

```
{
    "_links": {
        "void": {
            "method": "POST",
            "href": "/pts/v2/captures/6662994431376681303954/voids"
        },
        "self": {
            "method": "GET",
            "href": "/pts/v2/captures/6662994431376681303954"
        }
    },
    "clientReferenceInformation": {
        "code": "1666299443215"
    },
    "id": "6662994431376681303954",
    "orderInformation": {
        "amountDetails": {
            "totalAmount": "100.00",
            "currency": "EUR"
        }
    },
    "reconciliationId": "66535942B9CGT52U",
    "status": "PENDING",
    "submitTimeUtc": "2022-10-20T20:57:23Z"
}
```

Sales {#payments-processing-basic-sale-intro}
=============================================

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

Endpoint {#payments-processing-basic-sale-intro_d11e233}
--------------------------------------------------------

**Production:** `POST ``https://api.cybersource.com``/pts/v2/payments`{#payments-processing-basic-sale-intro_d11e241}  
**Test:** `POST ``https://apitest.cybersource.com``/pts/v2/payments`{#payments-processing-basic-sale-intro_d11e251}

Required Fields for Processing a Sale {#payments-processing-basic-sale-reqfields}
=================================================================================

Use these required fields for processing a sale.

[orderInformation.amountDetails.currency](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/order-info-aa/order-info-amount-details-currency.md "")
:

[orderInformation.amountDetails.totalAmount](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/order-info-aa/order-info-amount-details-total-amount.md "")
:

[orderInformation.billTo.address1](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/order-info-aa/order-info-bill-to-address1.md "")
:

[orderInformation.billTo.administrativeArea](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/order-info-aa/order-info-bill-to-admin-area.md "")
:

[orderInformation.billTo.country](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/order-info-aa/order-info-bill-to-country.md "")
:

[orderInformation.billTo.email](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/order-info-aa/order-info-bill-to-email.md "")
:

[orderInformation.billTo.firstName](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/order-info-aa/order-info-bill-to-first-name.md "")
:

[orderInformation.billTo.lastName](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/order-info-aa/order-info-bill-to-last-name.md "")
:

[orderInformation.billTo.locality](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/order-info-aa/order-info-bill-to-locality.md "")
:

[orderInformation.billTo.postalCode](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/order-info-aa/order-info-bill-to-postal-code.md "")
:

[paymentInformation.card.expirationMonth](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/payment-info-aa/payment-info-card-exp-mo.md "")
:

[paymentInformation.card.expirationYear](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/payment-info-aa/payment-info-card-exp-year.md "")
:

[paymentInformation.card.number](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/payment-info-aa/payment-info-card-number.md "")
:

[processingInformation.capture](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/processing-info-aa/processing-info-capture-a.md "")
:
Set the value to `true`.

Related Information {#payments-processing-basic-sale-reqfields_section_sjf_tbv_sxb}
-----------------------------------------------------------------------------------

* [API field reference guide for the REST API](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/acq-info.md "")
  {#payments-processing-basic-sale-reqfields_ul_x5z_1bv_sxb}

REST Example: Processing a Sale {#payments-processing-basic-sale-ex-rest}
=========================================================================

Request

```keyword
{
  "processingInformation": {
    "capture": true
  },
  "orderInformation" : {
    "billTo" : {
    "country" : "US",
    "lastName" : "VDP",
    "address1" : "201 S. Division St.",
    "postalCode" : "48104-2201",
    "locality" : "Ann Arbor",
    "administrativeArea" : "MI",
    "firstName" : "RTS",
    "email" : "test@cybs.com"
  },
    "amountDetails" : {
      "totalAmount" : "100.00",
      "currency" : "usd"
     }
   },
  "paymentInformation" : {
    "card" : {
      "expirationYear" : "2031",
      "number" : "4111111111111111",
      "expirationMonth" : "12",
      "type" : "001
    }
  }
}
```

Response to a Successful Request  
Most processors do not return all of the fields that are shown in this example.

```
{
  "_links" : {
    "void" : {
      "method" : "POST",
      "href" : "/pts/v2/payments/6485004068966546103093/voids"
    },
    "self" : {
      "method" : "GET",
      "href" : "/pts/v2/payments/6485004068966546103093"
    }
  },
  "clientReferenceInformation" : {
    "code" : "RTS-Auth"
  },
  "id" : "6485004068966546103093",
  "orderInformation" : {
    "amountDetails" : {
      "totalAmount" : "100.00",
      "authorizedAmount" : "100.00",
      "currency" : "usd"
    }
  },
  "paymentAccountInformation" : {
    "card" : {
      "type" : "001"
    }
  },
  "paymentInformation" : {
    "tokenizedCard" : {
      "type" : "001"
    },
    "card" : {
      "type" : "001"
    }
  },
  "processorInformation" : {
    "systemTraceAuditNumber" : "841109",
    "approvalCode" : "831000",
    "merchantAdvice" : {
      "code" : "01",
      "codeRaw" : "M001"
    },
    "responseDetails" : "ABC",
    "networkTransactionId" : "016153570198200",
    "retrievalReferenceNumber" : "208720841109",
    "consumerAuthenticationResponse" : {
      "code" : "2",
      "codeRaw" : "2"
    },
    "transactionId" : "016153570198200",
    "responseCode" : "00",
    "avs" : {
      "code" : "Y",
      "codeRaw" : "Y"
    }
  },
  "reconciliationId" : "6485004068966546103093",
  "status" : "AUTHORIZED",
  "submitTimeUtc" : "2022-03-28T20:46:47Z"
}
```

Searching for Apple Pay Transactions {#applepay_txn_reports}
============================================================

Use the Transaction Search page in the `Business Center` to identify Apple Pay transactions. You can search for transactions by date, application type, customer name, and other transaction identifiers.  
For information about the Transaction Request Report, see the `Business Center` [Reporting Developer Guide](https://developer.cybersource.com/docs/cybs/en-us/reporting/developer/all/rest/reporting/reporting_api.md "").
