Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.gr4vy.com/llms.txt

Use this file to discover all available pages before exploring further.

Adyen is a global payment technology company founded in 2006 in Amsterdam, Netherlands. The company provides a single platform for accepting payments across online, mobile, and in-store channels for major enterprises worldwide including Uber, Spotify, and Microsoft. Konbini is a popular cash-based payment method in Japan. The buyer receives a payment voucher during checkout and then pays in cash at a participating convenience store. Konbini payments via Adyen are processed through eContext and are supported at Lawson, FamilyMart, Mini Stop, and Seicomart.

Setup

Please follow the common Adyen instructions to get set up with Konbini. Next, make sure to enable Konbini as a payment method on your configured account.

Supported countries

Konbini (Convenience Stores) supports transactions from buyers in JP.

Supported currencies

Konbini (Convenience Stores) supports processing payments in JPY.

Features

Konbini payments via Adyen support the following features:
  • Direct capture - Capture funds at the time of the transaction
  • Refunds - Refund transactions in full
  • Partial refunds - Refund a portion of the original transaction amount
  • Settlement reporting - Reconcile transactions against Adyen settlement reports

Limitations

The following features are not supported by this connector:
  • Delayed capture - Authorization and capture happen together
  • Partial capture - Cannot capture a portion of the authorized amount
  • Void - Cannot cancel a transaction once the voucher is issued
  • Payment method tokenization - Cannot store the payment method for reuse
  • Zero auth - Zero-amount verification transactions are not supported

Integration

For Konbini, the default integration for Adyen is through a redirect to a hosted payments page. Konbini is a cash payment method. After the voucher is issued, the buyer pays in cash at a convenience store, which can take up to three days. The payment is confirmed out of band, so rely on webhooks to detect the final status rather than the buyer returning to your site.

Redirect integration

Start by creating a new transaction with the following required fields.
var transaction = await client.Transactions.CreateAsync(
    transactionCreate: new TransactionCreate()
    {
        Amount = 1299,
        Currency = "JPY",
        Country = "JP",
        PaymentMethod =
            TransactionCreatePaymentMethod.CreateCheckoutSessionWithUrlPaymentMethodCreate(
                new RedirectPaymentMethodCreate()
                {
                    Method = "konbini",
                    RedirectUrl = "https://example.com/callback",
                }
            ),
    }
);
After the transaction is created, the API response includes payment_method.approval_url.
{
  "type": "transaction",
  "id": "ea1efdd0-20f9-44d9-9b0b-0a3d71e9b625",
  "payment_method": {
    "type": "payment-method",
    "approval_url": "https://cdn.sandbox.spider.gr4vy.app/connectors/adyen/apm.html?token=..."
  },
  "method": "konbini"
}
Present the approval_url to the buyer so they can enter their phone number and receive a voucher reference. The buyer then takes the voucher to a participating convenience store and pays in cash. Because Konbini payments settle out of band, the buyer is not redirected back to Gr4vy after paying. Rely on webhooks to detect the final status, for example capture_succeeded once the store processes the cash payment, or a failure state if the voucher expires.

Direct integration

Adyen provides web, Android and iOS SDKs for a direct integration. For these flows you should indicate the platform by setting an appropriate integration_client when creating the transaction, and then build a client-side integration that uses the POST /transactions/:transaction_id/session API to initialize the Adyen SDK. To start, create a new transaction with the appropriate integration_client.
var transaction = await client.Transactions.CreateAsync(
  transactionCreate: new TransactionCreate()
  {
    Amount = 1299,
    Currency = "JPY",
    Country = "JP",
    IntegrationClient = "ios",
    PaymentMethod =
      TransactionCreatePaymentMethod.CreateCheckoutSessionWithUrlPaymentMethodCreate(
        new RedirectPaymentMethodCreate()
        {
          Method = "konbini",
          RedirectUrl = "https://example.com/callback",
        }
      ),
  }
);
For mobile, set integration_client to ios or android and use your app deep link for redirect_url (for example, yourapp://). After the transaction is created, the API response includes a session_token which can be used to get the session data for that transaction.
POST /transactions/:transaction_id/session?token=:session_token
This session data provides the sessionId and sessionData required to load the Adyen SDK. Refer to the common Adyen integration guidance for a worked example of initializing the Adyen SDK with this session data. As with the redirect integration, the buyer pays in cash at a convenience store after the voucher is issued, so the final status arrives via webhook rather than an immediate response.

Testing

Adyen has instructions on how to test Konbini.