Skip to Content

Create Checkout

POST/checkouts

Description

Create a new checkout session for a one-time stablecoin payment. Returns a checkout object containing a checkout_url where you should redirect your customer to complete the payment.

⏱️

By default, checkouts expire after 24 hours. You can customize this with the expires_at parameter.

Headers

HeaderDescriptionRequired
AuthorizationBearer token with your API keyyes
Content-Typeapplication/jsonyes

Request Body

NameTypeDescriptionRequired
amountnumberPayment amount in the smallest currency unit (e.g., cents for USD).yes
currencystringThree-letter ISO currency code for pricing (e.g., "USD", "EUR"). The customer will pay the equivalent in their chosen stablecoin.yes
descriptionstringDescription of the payment shown to the customer.no
success_urlstringURL to redirect the customer after successful payment.yes
cancel_urlstringURL to redirect the customer if they cancel the checkout.no
customer_emailstringCustomer email for payment receipt.no
metadataobjectCustom key-value pairs to attach to the checkout.no
expires_atstringISO 8601 timestamp for when the checkout should expire.no
payment_modestringPayment mode: "direct" (funds sent directly to your settlement wallet) or "two_step" (funds held for capture/refund via signed requests). Defaults to "direct".no

Example Request

const response = await fetch('https://checkout.exodus.com/checkouts', {
  method: 'POST',
  headers: {
    Authorization: 'Bearer sk_live_xxxxxxxxxxxxxxxx',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    amount: 5000,
    currency: 'USD',
    description: 'Premium Plan - Monthly',
    payment_mode: 'two_step',
    success_url: 'https://yoursite.com/success',
    cancel_url: 'https://yoursite.com/cancel',
    customer_email: '[email protected]',
    metadata: {
      order_id: '12345',
      product_name: 'Premium Plan',
    },
  }),
});

Response

SUCCESSFUL CHECKOUT CREATION
{
  "id": "chk_1234567890abcdef",
  "object": "checkout",
  "amount": 5000,
  "currency": "USD",
  "description": "Premium Plan - Monthly",
  "payment_mode": "two_step",
  "status": "pending",
  "checkout_url": "https://checkout.exodus.com/pay/chk_1234567890abcdef",
  "success_url": "https://yoursite.com/success",
  "cancel_url": "https://yoursite.com/cancel",
  "customer_email": "[email protected]",
  "metadata": {
    "order_id": "12345",
    "product_name": "Premium Plan"
  },
  "expires_at": "2024-01-16T12:00:00Z",
  "created_at": "2024-01-15T12:00:00Z"
}

Error Responses

VALIDATION ERROR
{
  "error": {
    "type": "validation_error",
    "message": "Amount must be greater than 0",
    "param": "amount"
  }
}

Start building

XO

Request Demo

Schedule a call with our team

Select a product
Arrow right

Start building
Grateful

Contact Us

We're here to help