Payments with 3DS Split

In the page Create Payment with Payment Method Split, you can understand how the split workflow actually works and how you can integrate it into your site. In this section, you can also understand how to support 3DS card verification.

  • Integrate Split payment method solution. (Only available for DIRECT workflow)
  • Enable 3DS in your Yuno dashboard and indicate in your CARD routing for which scenarios you want your customers to be able to use it.

How does it work?

  1. Create a checkout_session to initiate the payment workflow.
  2. Create your payment using the split payment method integration. If 3DS is enabled in your Yuno routing section, you'll get a payment with status PENDING/WAITING_ADDITIONAL_STEP with the corresponding 3DS transactions with a CREATED status.
    1. Info needed in the request:
      1. Card data
      2. Callback_url in case a 3DS challenge is required
    2. Response - 3DS transaction:
      1. sdk_action_required: 3DS
      2. sdk_token
      3. sdk_collect_url
  3. With the fields obtained in the previous step (token and collect_url), initialize the Yuno's SDK 3DS() function to capture the sdk_session_id.
  4. After initializing the SDK, for each card, consume the complete endpoint to see wether or not your customer needs an additional 3DS challenge. If it doesn't, we'll continue with the payment and notify the final result.
    1. Info needed in the request
      1. payment and transaction_codes
      2. sdk_session_id
    2. Response: Updated 3DS transaction (with an redirect_url in case a 3DS challenge is required)
  5. If the transactions requires a 3DS verification challenge, we will return a required_action set as redirect and an init_url for you to redirect your customers in order to complete the challenge. There will be as many redirect_urls as 3DS challenges required. If both cards require a 3DS challenge, you'll get two different urls to redirect your customer.
  6. After the 3DS challenge is finished, the user will be redirected to the callback_url defined in the payment.
  7. Finally, by webhooks you'll receive the result of the 3DS challenge and the final payment result.

Transactions

A 3DS transaction behaves similar to a regular purchase transaction. It has different states that represent how the authorization is going. Once the 3DS transaction is SUCCEEDED, we'll to go to the processor and generate a PURCHASE transaction to charge the client.

StatusDescription
CREATEDPayment is created and waiting for Yuno's SDK session id.
PENDINGChallenge is required and the init_url is returned by Yuno
IN_PROCESSChallenge is being completed by the user
SUCCEEDEDChallenge is completed correctly
DECLINEDChallenge is completed and declined by the bank
ERRORAn error occurred while redirecting to the users challenge