Skip to main content
POST
/
v1
/
checkout
/
sessions
curl --request POST \ --url https://api-sandbox.y.uno/v1/checkout/sessions \ --header 'Content-Type: application/json' \ --header 'account-code: <api-key>' \ --header 'private-secret-key: <api-key>' \ --header 'public-api-key: <api-key>' \ --data ' { "account_id": "{{account_id}}", "merchant_order_id": "1717681150", "payment_description": "Test Cards", "country": "CO", "customer_id": "{{customer_id}}", "callback_url": "https://www.example.com", "amount": { "currency": "COP", "value": 8000 }, "alternative_amount": { "currency": "USD", "value": 2 }, "metadata": [ { "key": "ID", "value": "123456" } ], "recurring_payment": { "description": "Monthly subscription", "management_url": "https://example.com/manage", "billing_agreement": "BA-123", "regular_billing": { "label": "Monthly", "amount": "9.99", "interval_unit": "month", "interval_count": 1 }, "trial_billing": { "label": "Free trial", "amount": "0.00", "interval_unit": "month", "interval_count": 1 } } } '
{ "merchant_order_id": "1717681150", "checkout_session": "d313047b-4f96-44ef-bbad-caf1d7ba4c2b", "country": "US", "payment_description": "Test Cards", "customer_id": "a577ad8f-08f1-4590-9cf1-e7679b15ee84", "callback_url": "https://www.example.com/callback", "amount": { "currency": "USD", "value": 520 }, "created_at": "2024-06-06T13:39:10.932297Z", "metadata": null, "workflow": "SDK_CHECKOUT", "installments": { "plan_id": null, "plan": null } }
This request creates a checkout session using the unique identifier generated when the customer resource was created.
If your workflow requires sending the additional_data object, it can be sent as part of the checkout session.

Authorizations

public-api-key
string
header
required

Your public API key from the Yuno Dashboard

private-secret-key
string
header
required

Your private secret key (server-side only)

account-code
string
header
required

Your account identifier. The alias X-Account-Code is also accepted.

Body

application/json
amount
object
required
Example:
{ "currency": "BRL", "value": 100 }
country
string
required

ISO 3166-1 alpha-2 country code

Pattern: ^[A-Z]{2}$
Example:

"BR"

merchant_order_id
string
required

Your unique order identifier

Example:

"order-001"

account_id
string
required

Your Yuno account identifier. Same value as the account-code header.

Example:

"your-account-id"

payment_description
string
required

Description of the payment. Required for checkout session creation.

Example:

"Premium subscription - March 2026"

customer_id
string<uuid>

Optional existing customer ID

Example:

"c9d0e1f2-3a4b-5c6d-7e8f-9a0b1c2d3e4f"

workflow
enum<string>

Integration workflow type

Available options:
SDK_CHECKOUT,
SDK_LITE,
SDK_SEAMLESS,
SDK_HEADLESS,
DIRECT
Example:

"SDK_CHECKOUT"

callback_url
string<uri>

URL to receive server-side payment notifications

Example:

"https://merchant.com/webhooks/yuno"

return_url
string<uri>

URL to redirect the customer after payment completion (required for 3DS, PIX, and redirect-based methods)

Example:

"https://merchant.com/checkout/complete"

metadata
object

Custom key-value pairs for storing additional information. Keys and values must be strings. Maximum 50 keys, each key max 40 characters, each value max 500 characters.

Example:
{
  "order_source": "web",
  "campaign": "spring-2026"
}
recurring_payment
object

Optional configuration for recurring payments and subscriptions

Response

Checkout session created successfully

checkout_session
string<uuid>

The checkout session identifier

Example:

"a1b2c3d4-e5f6-7890-abcd-ef1234567890"

amount
object
Example:
{ "currency": "BRL", "value": 100 }
country
string

ISO 3166-1 alpha-2 country code

Example:

"BR"

merchant_order_id
string

Your unique order identifier

Example:

"order-20260301-001"

status
string

Session status

Example:

"ACTIVE"

created_at
string<date-time>

Session creation timestamp

Example:

"2026-03-01T14:30:00.000Z"

payment_methods
object[]

Available payment methods for this session

callback_url
string<uri>

URL to receive server-side payment notifications

Example:

"https://merchant.com/webhooks/yuno"

return_url
string<uri>

URL to redirect the customer after payment completion (required for 3DS, PIX, and redirect-based methods)

Example:

"https://merchant.com/checkout/complete"