Integration Overview

You can integrate Ivy Payments with minimum effort by creating a Checkout Session. The process provides a seamless user experience:

  1. Create a Checkout Session to get a unique URL
  2. Redirect your user to this URL to complete payment
  3. Receive the user back at your application after payment completion

The entire payment journey is handled within the Ivy Checkout interface.

Creating a Checkout Session

Basic Requirements

To create a CheckoutSession, send a POST request to the Create a CheckoutSession endpoint. Here are the essential parameters needed:

price
object
required

The price object containing the payment amount and currency.

referenceId
string
required

A unique reference ID, typically your internal transfer ID.

successCallbackUrl
string
required

The URL where users are redirected after successful payment completion.

errorCallbackUrl
string
required

The URL where users are redirected if they close or cancel the Checkout.

guest
boolean

Optional but recommended to set as true. When false, users must provide their email before payment. See Guest Mode below for details.

incentiveMode
string

Optional. Choose between white_label or sustainable. Defaults to sustainable. Set to white_label for a clean flow without user incentives.

Example Implementation

Response Fields

The API response includes these key fields:

redirectUrl
string
required

The URL where you should redirect your user to complete payment.

id
string
required

A unique Ivy identifier for this checkout session.

referenceId
string
required

Your provided reference ID, useful for tracking the transaction in your system.

For a complete list of response parameters, see the API Reference.

Payment Flow

User Redirection

After receiving the API response, redirect your user to the provided redirectUrl. They’ll complete their payment in the Ivy Checkout interface.

Status Tracking

When a user completes payment successfully:

  1. The checkoutSession status is closed
  2. A new order object is created containing:
    • All fields from the original checkoutSession
    • An additional status field tracking payment progress

Users are redirected with these query parameters:

referenceId
string
required

Your original reference ID from checkout creation

order-id
string

The Ivy order ID (only included for successful payments)

Set up Webhooks to receive real-time status updates. See Payment Status for detailed tracking information.

Settlement Options

Settlement with Ivy

Ideal for e-commerce and marketplace applications. Ivy handles:

  • Receiving incoming payments
  • Batched transfers to your bank account
  • User payouts and refunds

Learn more in our Settlement Account section.

Direct Settlement

Suited for PSPs, top-up payments, and P2P transfers. You maintain control over:

  • Destination bank account for incoming funds
  • User payout process
  • Settlement timing and batching

Advanced Configuration

Payment Scheme Selection

Control the speed vs. cost tradeoff of transfers:

  • instant_only: Use only instant payment rails
  • instant_preferred: Prioritize instant rails but allow fallback
  • standard: Use only standard (free but slower) rails

If not specified, the default scheme is determined by your merchant dashboard settings.

Guest Mode

Guest mode simplifies the payment process for non-recurring users by removing the email requirement.

To enable guest mode, set guest: true when creating your checkout session.

With guest mode off, returning users can either: - Stay logged in between sessions - Log in again to skip bank selection


Next Steps