Fast-payout icon

Manage card details

Learn how to securely process the details of third-party cards.

To pay out funds to a third-party card, you must collect the card details, such as the card number and expiry date. With these details, you can also use the /payments endpoint to make requests for additional card data. For example, you can check if the card is eligible for payouts, or the details that you need to set up recurring payouts.

If you are fully PCI compliant, you are allowed to use raw card details to make API requests. Otherwise, you must collect and encrypt the card details using our Card Component. Then, you can use the encrypted card details to make API requests.

Additionally, if you are not fully PCI compliant, or want to make recurring payouts to a card, you must use the /payments endpoint to tokenize the card details before making a card payout request.

This page explains how to:

Requirements

Ensure that:

  • You reached out to your Adyen contact to enable the feature on your account.
  • Your company API credential (ws@Company.[YourCompanyAccount]) has the following roles to use with the Checkout API.
    • Checkout webservice role
    • Merchant Recurring role
    • Checkout encrypted cardholder data
    • (If you are fully PCI compliant) API PCI Payments role
  • Your server receives and accepts webhooks.

Enable your account to receive additional data

To check the eligibility of a card or store card details, you need additional card data that you receive in a /payments response. However, you must first enable your account to receive additional data, such as:

  • Card eligibility details
  • The card's Bank Identification Number (BIN)
  • Details regarding recurring payouts

To enable your account to receive additional data:

  1. In your Customer Area, go to Developers > Additional data.
  2. Select the fields that you want to include.
    • To get the card eligibility details, under Card, select Card bin payout details.
    • To get the card BIN details, under Card, select Card bin details. Among other parameters, this enables the cardBin in the /payments response.
    • To get the details required to make recurring payouts to a card, under Payment, select Recurring details.
  3. Select Save configuration.

Check if the card is eligible for payouts

If you have enabled your account to receive eligibility details, you can check whether a card is eligible for payouts by making a zero-auth payment. Do the following:

  1. Make a zero-auth payment by creating a POST /payments request, specifying the following parameters:

    Request parameter Required Description
    amount.currency -white_check_mark- Set to the currency that is applicable to the card.
    amount.value -white_check_mark- Set to 0 (zero).
    paymentMethod -white_check_mark- An object that contains the details of the card that you want to pay out to.
    You can only include raw card data in the request if you are fully PCI compliant. Otherwise, use our Card Component to securely collect and encrypt card details.
    merchantAccount -white_check_mark- The identifier of your merchant account.
    reference -white_check_mark- Your unique reference to identify the payment request.
    returnUrl -white_check_mark- The URL to return in case that you must redirect the cardholder.

    The following tabs show how to make a zero-auth payment request using raw or encrypted card data.

  2. In the response, check the following parameters in the additionalData object, which include eligibility information:

    Response parameter Possible values Description for Visa Description for Mastercard
    payoutEligible Y

    Eligible for payouts.

    Eligible for both domestic and cross-border payouts.

    D

    Not applicable

    Only eligible for domestic payouts.

    N or U

    Not eligible for payouts.

    Not eligible for payouts.

    fundsAvailability

    This is only returned if payoutEligible is Y or D
    I

    The card supports fast funds.

    The product type is Prepaid or Debit.

    N

    Otherwise

    Otherwise

Store card details

You must store card details using tokenization if:

  • You want to make recurring payouts to the card.
  • You are not fully PCI compliant, which means that you cannot process raw card details.

To tokenize and store card details:

  1. Make a POST /payments request, specifying the following parameters:

    Request parameter Required Description
    amount.currency -white_check_mark- Set to the currency that is applicable to the card.
    amount.value -white_check_mark- Set to 0 (zero) to combine with a zero-auth payment.
    paymentMethod -white_check_mark- An object that contains the details of the card that you want to pay out to.
    You can only include raw card data in the request if you are fully PCI compliant. Otherwise, use our Card Component to securely collect and encrypt card details.
    billingAddress -white_check_mark- An object that contains the address details of the cardholder.
    enablePayOut -white_check_mark- Set to true.
    merchantAccount -white_check_mark- The identifier of your merchant account.
    recurringProcessingModel -white_check_mark- Specifies the type of recurring payment.
    — For one-off payouts: set to CardOnFile.
    — For recurring payouts: set to Subscription.
    reference -white_check_mark- Your unique reference to identify the payment request.
    returnUrl -white_check_mark- The URL to return in case that you must redirect the cardholder.
    shopperReference -white_check_mark- Your unique reference to identify the cardholder.
    storePaymentMethod -white_check_mark- Set to true.

    The following tabs show examples that combine a zero-auth payment request with creating a token that represents the card details.

    The token is created after a successful payment authorization. This ensures that the payment details are linked to an active, chargeable account.

  2. Find the token in the additionalData.recurring.recurringDetailReference parameter. This parameter is included in:

    The following tabs show examples for authorized payment responses that include the token.

  3. In your system, store the following parameters together, so that the token is associated with the cardholder:

    • additionalData.recurring.recurringDetailReference
    • shopperReference

    You must provide these values when making a card payout request.

Next steps