Skip to content
Merxian

checkout.created

A checkout session was created.

On this page
Typecheckout.created
CauseYou created a checkout session, or a buyer opened a payment link.
PayloadThe checkout_session object in data.object
SubscriptionOn by default for a new endpoint.

When to use it

Use it to record sessions that a payment link creates. For sessions that you create, the API response has the same information.

Payload

The fields of data.object. The envelope is the same for every event.

  • idstring

    The checkout session ID, cs_….

  • objectstring

    Always checkout_session.

  • statusstring

    The state of the session.

    One of: open, payment_pending, completed, expired, cancelled

  • currencystring

    The ISO 4217 currency code. An empty string when the session has no transaction yet.

  • amountsobject

    Amounts in minor units. All 0 when the session has no transaction yet.

    Child attributes of amounts
    • subtotalinteger

      The sum of the line subtotals.

    • discountinteger

      The discount.

    • netinteger

      The amount before tax, after the discount.

    • taxinteger

      The tax.

    • totalinteger

      The amount to pay.

    • refundedinteger

      The amount refunded so far.

  • customerobjectCan be absentCan be null

    The buyer, when the session has one.

    Child attributes of customer
    • idstring

      The customer ID, cus_….

    • emailstringCan be absentCan be null

      The buyer email.

    • namestringCan be absentCan be null

      The buyer name.

  • transaction_idstringCan be absentCan be null

    The transaction of the session, txn_….

  • client_reference_idstringCan be absentCan be null

    The clientReferenceId that you set on the session.

  • created_atstring (date-time)

    When the session was created.

  • completed_atstring (date-time)Can be absentCan be null

    When the buyer completed payment.

Example

checkout.created · request body
{
  "id": "whevt_7Kd2VpXn4TqB9mLzR",
  "object": "event",
  "type": "checkout.created",
  "created_at": "2026-09-14T09:24:53Z",
  "api_version": "2026-08-01",
  "account_id": "acct_5Rn8bQ2xW7mK4tLzP",
  "data": {
    "object": {
      "id": "cs_6HvB2nQx9LmT4kWpR",
      "object": "checkout_session",
      "status": "open",
      "currency": "EUR",
      "amounts": {
        "subtotal": 12000,
        "discount": 0,
        "net": 12000,
        "tax": 2280,
        "total": 14280,
        "refunded": 0
      },
      "customer": {
        "id": "cus_2Lp7XcN4vB8mQ1tKd",
        "email": "ada@example.com",
        "name": "Ada Example"
      },
      "transaction_id": "txn_0F8mQ2rXbT4kL9pZa",
      "client_reference_id": "A-1042",
      "created_at": "2026-09-14T09:21:07Z",
      "completed_at": null
    }
  }
}

Other checkout events: checkout.completed, checkout.expired.

Try refund, payment.succeeded,POST /v1/transactions, orIdempotency-Key.