Apple Pay Original Credit Transactions
Apple Pay is widely recognized for its ability to simplify and enhance the payment experience for consumers during deposits and purchases. In addition to deposits, Apple Pay also supports payouts, allowing businesses to send funds directly to consumers—such as returning betting winnings in the iGaming sector.
This page outlines the key concepts and requirements for implementing Apple Pay payouts, focusing primarily on the closed loop flow, which is mandated in most regulated markets. We'll also briefly discuss the open-loop flow and how businesses should determine the correct model to adopt.
Payout Flow Models
There are two primary flows to consider when implementing Apple Pay payouts:
1. Closed loop flow
In a closed loop flow, payouts are only permitted to cards that have previously been used for a deposit.
-
Required in most regulated markets due to AML (Anti-Money Laundering) compliance.
-
Ensures that funds are returned only to a verified funding source.
-
Supports traceability and risk mitigation.
2. Open loop flow
In an open loop flow, a card can receive a payout even if it has not been used for a prior deposit.
-
Allowed only in select regions, depending on local regulations.
-
Offers greater flexibility, but with higher regulatory scrutiny.
NOTE: If you are interested in payouts with an Apple Pay device token (closed or open loop), please contact your Paysafe representative.
Regulatory Considerations
Before implementing Apple Pay payouts, it is essential to consult your local regulatory authorities to determine which flow—closed loop or open loop—is permissible for your business. Non-compliance with AML laws can result in severe penalties and reputational risk.
Technical Guidance
In this section, we describe how to technically implement the closed loop flow when integrating Apple Pay payouts, ensuring alignment with both Apple’s requirements and regional compliance needs.
The closed loop flow consists of the following steps:
- Allowing the consumer to make a deposit/payment using the Apple Pay button.
- Saving the card that the Apple Pay wallet provided in step 1, on file.
- Displaying the saved card-on-file during the payout flow.
- Triggering a payout with the saved card.
Allowing the consumer to make a deposit or payment using Apple Pay
For this step, you can either create your own user interface by integrating directly with the Apple Pay API, or you can use Paysafe Checkout, which will handle the user interface for you.
If you would like to enable Apple Pay with Paysafe Checkout, see Paysafe Checkout's Apple Pay page.
Saving the selected card on file
By default, the Apple Pay screen in Paysafe Checkout does not allow consumers the option to save the card provided by the Apple Pay wallet. To ensure a closed loop scenario however, the Apple Pay card used for the deposit or payment must also be available for a payout.
Therefore, Paysafe Checkout has the option to show a checkbox informing consumers that their card will be saved. Since the card is required for payout purposes in accordance with AML regulations, this checkbox can be made mandatory.
Please ask your Paysafe representative to enable this feature for you.

When a deposit or payment is completed with the checkbox checked, the card provided by the Apple Pay wallet can be saved on file, following the usual Paysafe Checkout and Payments API processes as described in How Checkout Works.
Displaying the saved card-on-file during the payout flow
The final step is to show the Apple Pay-provided card on the withdrawal/ payout screen. Paysafe Checkout does not currently support this flow, so a custom-built user interface is required.
Depending on your business model, whether you process payouts manually or automatically, you should implement one of the following two options to get the saved card.
Option 1: Manual payout
The first step in a manual payout flow involves retrieving the saved payment instruments for a specific customer profile. In the following example, let’s assume that we have one saved Apple Pay card and one saved standard PAN card.
-
Get the customer profile token by sending a GET request to the /customers endpoint:
GET https://api.testpaysafe.com/paymenthub/v1/customers/{customerId}/?fields=paymenthandles,addresses
The response is formatted as follows:
{
"id": "17ac70bd-c862-4821-88ad-31079dd3b78b",
"status": "ACTIVE",
"merchantCustomerId": "c19a024d-a1f7-4ed1-8f76-bc8344e4e292",
"locale": "en_US",
"paymentToken": "PgjblMeuuz1klQk",
"addresses": [
{
"id": "ea8880e1-0bb7-4515-aca1-7fe4c56302fb",
"city": "Jacksonville",
"state": "FL",
"country": "US",
"zip": "32256",
"status": "ACTIVE",
"street": "5335 Gate Pkwy"
},
{
"id": "cfc53161-c452-4111-b2f2-8fca40612dbc",
"city": "Jacksonville",
"state": "FL",
"country": "US",
"zip": "32256",
"status": "ACTIVE",
"street": "5335 Gate Pkwy"
}
],
"paymentHandles": [
{
"id": "1ea884d8-1051-447c-9080-780c709cbfeb",
"merchantRefNum": "817fa93c-c68a-4f97-a788-bb82341f2026",
"status": "PAYABLE",
"usage": "MULTI_USE",
"paymentType": "CARD",
"action": "NONE",
"executionMode": "SYNCHRONOUS",
"paymentHandleToken": "CLLrn0Fq06NXa7x",
"creationTime": "2025-03-20T17:14:56Z",
"card": {
"id": "135b4393-6f79-4f11-a5f9-eb9b477fac49",
"lastDigits": "2503",
"cardExpiry": {
"month": "12",
"year": "2027"
},
"cardBin": "400000",
"cardType": "VI",
"holderName": "John Doe",
"status": "ACTIVE",
"cardCategory": "DEBIT",
"issuingCountry": "US"
},
"billingDetailsId": "ea8880e1-0bb7-4515-aca1-7fe4c56302fb",
"customerId": "17ac70bd-c862-4821-88ad-31079dd3b78b"
},
{
"id": "1c31ec7c-75dc-4ff0-a5e8-e22ef25a8651",
"merchantRefNum": "be889d35-d9ed-4ba4-bfbe-d07aa0646583",
"status": "PAYABLE",
"usage": "MULTI_USE",
"paymentType": "CARD",
"action": "NONE",
"executionMode": "SYNCHRONOUS",
"paymentHandleToken": "CAh50kRB1SPUbrR",
"creationTime": "2025-04-04T15:37:35Z",
"card": {
"id": "10dbabee-fa98-4578-af0a-29c6d9fed195",
"lastDigits": "1028",
"cardExpiry": {
"month": "11",
"year": "2029"
},
"cardBin": "411111",
"cardType": "VI",
"holderName": "John Doe",
"status": "ACTIVE",
"cardCategory": "CREDIT",
"applePay": {
"lastDigits": "1111",
"expiry": {
"month": "11",
"year": "2029"
},
"subtype": "DEVICE"
},
"tokenType": "APPLE_PAY"
},
"billingDetailsId": "cfc53161-c452-4111-b2f2-8fca40612dbc",
"customerId": "17ac70bd-c862-4821-88ad-31079dd3b78b"
}
]
}
-
Using the card metadata, display the cards to the consumer so that they can choose a card for the payout.
-
Process a payout transaction using the paymentHandleToken that corresponds to the chosen card.
Option 2: Automatic payout
-
Create a single-use customer token:
POST https://api.test.paysafe.com/paymenthub/v1/customers/{customerId}/singleusecustomertokens
The response is formatted as follows:
{
"id": "4513eb01-3a4e-48e3-9f97-6dcf1bc733af",
"timeToLiveSeconds": 899,
"status": "ACTIVE",
"singleUseCustomerToken": "SP6G4iiDkNEjYTSM",
"locale": "en_US",
"firstName": "Yordan",
"middleName": "James",
"lastName": "Nikolov",
"dateOfBirth": {
"day": 24,
"month": 10,
"year": 1981
},
"email": "john.smith@testemail.com",
"phone": "777-444-8888",
"ip": "192.0.126.111",
"nationality": "Canadian",
"addresses": [
{
"id": "5b944470-08f9-4b73-9554-75368b45be9c",
"city": "Alpharetta",
"state": "GA",
"country": "US",
"zip": "30040",
"status": "ACTIVE",
"street": "19111 Deertrl"
}
],
"paymentHandles": [
{
"id": "8f630df2-1cbb-4c43-809b-dc7574486f64",
"status": "INITIATED",
"usage": "SINGLE_USE",
"paymentType": "CARD",
"paymentHandleToken": "SCM9TL8eM7WBNtQZ",
"card": {
"id": "ea60dcc3-4dfa-4f0e-b2ed-93f9f8785e7a",
"lastDigits": "1470",
"cardExpiry": {
"month": "11",
"year": "2027"
},
"cardBin": "450003",
"cardType": "VI",
"holderName": "John Doe",
"status": "ACTIVE",
"cardCategory": "CREDIT",
"applePay": {
"lastDigits": "0004",
"expiry": {
"month": "11",
"year": "2027"
},
"subtype": "DEVICE"
},
"tokenType": "APPLE_PAY",
"issuingCountry": "CA"
},
"billingDetailsId": "5b944470-08f9-4b73-9554-75368b45be9c",
"multiUsePaymentHandleId": "8dd4b31d-9129-4064-8358-be6c5ed689a8"
}
],
"customerId": "11bfcdb2-60ab-45fd-bae7-a83e40f5040a"
} -
Use the singleUseCustomerToken to display the consumer's saved cards when initiating Checkout.
For more information, see Save Cards and Addresses.