Checkouts

Checkouts are specific to the Embedded Widget and Inqud Hosted Page flows. In contrast, if you opt for an API-only integration, the process involves only requests, with no checkouts.

Checkout constitutes a request from the merchant to the end user for the payment of a monetary amount, which can be optionally predefined, and is usually expressed in USD or other fiat currencies. In this process, the end user is granted the flexibility to choose the blockchain and cryptocurrency through which they wish to make the payment.

A checkout can be initiated by the merchant either through the Inqud API or manually via the app's user interface.

Checkout flow

After creating a Checkout, there are two methods available to present it to the end user:

  • Redirect: Direct your user to the Inqud Hosted page specifically designed for this purpose.

  • Widget: Embed the Inqud Widget on your website and initiate it by specifying the Checkout ID.

Integrate Redirect flow:

βš™οΈpageInqud Hosted

Integrate Widget to your website:

βš™οΈpageEmbedded Widget

Checkout Types

Fixed Price Checkout: In this type, the merchant initiates a checkout by specifying the amount that the end-user is required to pay. This amount can be set in either fiat or cryptocurrencies.

No Price Checkout: For a No Price Checkout, the merchant sets up a checkout without specifying a particular amount. This approach allows the end user to pay an arbitrary amount, as long as it falls within the minimum and maximum limits established by Inqud.

Fixed Price Checkout

  1. Merchant Checkout Creation: The merchant sets up a checkout by specifying details: name, amount, and currency.

    • Example: "Apple iPhone 15 Pro (256 GB) - Black Titanium, 1399 USD."

  2. Checkout Display: The merchant then displays the created checkout on their website through the widget or provides a link to an Inqud hosted page for the checkout.

  3. User Selects Cryptocurrency: The end user views the checkout details and selects their preferred cryptocurrency for payment.

    • Example: The user chooses BTC.

  4. Inqud Calculates Approximate Amount: Inqud computes an approximate amount to be paid in the selected cryptocurrency.

    • Example: Approximately 0.037627 BTC.

  5. Payment Initiation: The end user clicks 'pay', and the Inqud widget displays the exact amount to be paid, the cryptocurrency type, the payment address, and a payment window timer.

    • Example: "0.037627 BTC to tb1qppgscyazkppucrqe7vvsha0zf7h68c2tmy6dwr, with a 60-minute window."

  6. User Completes Payment: The user sends the exact amount to the provided address.

  7. Transaction Registration and Status Update: Inqud registers the incoming transaction, conducts necessary checks, and updates the Checkout status accordingly.

  8. Notification to Merchant: Inqud notifies the merchant's system of any checkout status changes via a web hook.

  9. Final Status Display to User: The Inqud widget shows the final status to the end user. In a redirect flow, it displays a 'return to merchant website' button. If it’s an embedded widget, it executes the registered JavaScript callbacks.

No Price Checkout

  1. Merchant Checkout Creation: The merchant sets up a checkout by specifying details: name.

    • Example: "Game Balance Top Up"

  2. Checkout Display: The merchant then displays the created checkout on their website through the widget or provides a link to an Inqud hosted page for the checkout.

  3. User Selects Cryptocurrency: The end user views the checkout details and selects their preferred cryptocurrency for payment.

    • Example: The user chooses BTC.

  4. Inqud Shows Limits: Widget shows payment limits for selected crypto currency

    Example: Minimum 0.01 BTC, Maximum 1 BTC

Checkout Statuses

NEW: This status is assigned when a Checkout is created, but the end user has not yet selected a preferred payment cryptocurrency.

REQUEST_CREATED: This status indicates that the user has chosen their preferred cryptocurrency for payment but has not yet initiated a blockchain transaction, or such a transaction has not been detected by the Inqud system.

PAYMENT_DETECTED: The user's payment has been made, and the transaction is detected but is still pending processing by the system.

EXPIRED: This status is used when the user either has not selected a preferred payment cryptocurrency or has not completed the payment, and the checkout expiration time has elapsed.

CONFLICT: This status arises when a user-initiated transaction is detected and processed, but issues are identified. These could be discrepancies in the payment amount or failures in compliance checks, such as Anti-Money Laundering (AML) regulations. For more specific details on the issue, a 'Reason' substatus is provided:

  • UNDERPAID: Indicates the user has paid less than the expected amount.

  • OTHER: Covers various other potential issues with the payment that are not specifically categorized.

SUCCESS: This status denotes that the end user's transaction has been detected, successfully processed, and all requisite checks have been cleared. Moreover, the transaction amount meets the specifications of the request.

Last updated