Welcome to Zuora Product Documentation

Explore our rich library of product information

KaKaoPay payments for Adyen Integration v2.0

Follow these steps to implement a KaKaoPay payment flow for one-time or recurring payments.

KaKaoPay is one of the most popular e-wallets in Korea. Zuora's Adyen Integration v2.0 supports KaKaoPay transactions in KRW currency. You can implement a hosted payment page through Payment Pages 2.0 to support KaKaoPay one-time payment and recurring payment using stored token.

One-time payment flow

On the hosted payment page, a QR code is displayed. End customers can follow the instructions on the page to complete the authorization. The following table describes the workflows after Zuora receives a successful or failed response from the Adyen asynchronous payment API.

ResponseWorkflow
Successful response
  1. Zuora creates the following items:
    • A payment with Payment status = Processed and Gateway State = Submitted
    • A KaKaoPay payment method record
  2. Click Continue to KakaoPay / 카카오페이로 계속하기.
  3. A QR code is displayed. Your customers can follow the instructions in the dialog to complete the authorization within about one hour. This timer is defined and handled by Adyen,​​ and not Zuora.
  4. At the backend, Zuora listens to the callback result from Adyen and KaKaoPay:
    • Based on the returned callback result, the KaKaoPay payment results are returned to the callback function of Zuora's hosted payment page.
    • Zuora updates Gateway State according to the returned webhook:
      • If AUTHORIZATION is true, Gateway State is set to Settled.
      • If AUTHORIZATION is false or OFFER_CLOSED is true, Gateway State is set to FailedToSettle.
    • In case of a timeout, Zuora displays the error callback result returned from Adyen on the hosted payment page.

Failed response

Zuora throws an error on the hosted payment page with the error response message received from Adyen.

The created KaKaoPay payment method can be retrieved through the Zuora UI and API operations. You can also retrieve the following token information in the Electronic Payment Methods section of the customer account page. Token ID and Second Token ID will be used in subsequent recurring payments.

Zuora UI fieldValue
Token IDshopperReference
Second Token IDrecurringDetail
Third Token IDfirst payment merchantReference

After a payment is processed, the Reference ID field is populated with a UUID and mapped to pspReference. If you want Reference ID to be populated with the payment number mapped to the merchantReference field in Adyen, submit a ticket at Zuora Global Support.

Recurring payments flow

Recurring payments are processed with the stored tokens. For details about the recurring payment flow for the end customers, see Adyen's documentation.

Supported and unsupported features

The following table lists the supported and unsupported operations and features for KaKaoPay on Adyen Integration v2.0:

SupportedUnsupported
  • One-time payment processing
  • Recurring payment processing
  • Standalone payment method validation
  • Payment method creation without making a one-time payment
  • Referenced refund
  • Real-Time Reconciliation
  • Support idempotency for retrying the following transaction request:
    • Payment
    • Refund
  • Payment cancel (void)
  • Non-referenced refund
  • Batch Gateway Reconciliation
  • Delayed Capture
  • Stored Credential Transactions framework and the sharing NTI feature
  • Creation of KaKaoPay payment method through UI or API operation