SelectwinDOCS
Checkouts sessions

List Sessions

GET
/v1/checkouts/sessions

Authorization

SelectKeyAuth
selectkey<token>

API key for all authenticated requests. Send your key in the selectkey header (e.g. sandbox sl_test_…, production sl_live_…).

In: header

Query Parameters

limit?number

Maximum number of items to return

offset?number

Number of items to skip

sort?string

Sort order for results

daterange?string

Filter to a single calendar day; the API expands this to the start and end of that day for the relevant timestamp field.

daterangegt?string

Lower bound (exclusive): include only records whose date field is strictly after this value.

daterangegte?string

Lower bound (inclusive): include only records whose date field is on or after this value.

daterangelt?string

Upper bound (exclusive): include only records whose date field is strictly before this value.

daterangelte?string

Upper bound (inclusive): include only records whose date field is on or before this value.

status?string

Filter checkout sessions by lifecycle status

id?string

Filter by checkout session public ID

source?string

Origin channel or entry point of the session

transactionId?string

Linked transaction public ID, if the session produced a transaction

linkId?string

Filter sessions originated from a specific checkout link

customerId?string

Filter sessions tied to a specific customer

externalTransactionId?string

External transaction reference (gateway/PSP id)

integrationId?string

External integration identifier (e.g. WooCommerce order id)

integrationType?string

External integration platform slug

online?boolean

Filter sessions currently flagged as online (active live socket)

recoverySent?boolean

Filter sessions that already received a recovery (abandoned cart) message

firstInitialization?boolean

Filter sessions that have never been re-initialized

domainAmbient?string

Filter sessions by domain ambient (live vs test mode)

domainHost?string

Filter sessions by the host that served the checkout

language?string

Filter sessions by client language (BCP-47 or short code)

totalAmountGte?number

Minimum session total amount (cents, inclusive)

totalAmountLte?number

Maximum session total amount (cents, inclusive)

renewalCountGte?integer

Minimum number of session renewals (inclusive)

renewalCountLte?integer

Maximum number of session renewals (inclusive)

paymentmethodselected?string

Filter sessions by the payment method the customer selected

paymentstepgte?integer

Minimum payment funnel step (inclusive)

paymentsteplte?integer

Maximum payment funnel step (inclusive)

attemptcountgte?integer

Minimum number of payment attempts (inclusive)

attemptcountlte?integer

Maximum number of payment attempts (inclusive)

completedAtGte?string

Completion timestamp lower bound (inclusive)

completedAtLte?string

Completion timestamp upper bound (inclusive)

abandonedAtGte?string

Abandonment timestamp lower bound (inclusive)

abandonedAtLte?string

Abandonment timestamp upper bound (inclusive)

updatedAtGte?string

Last update timestamp lower bound (inclusive)

updatedAtLte?string

Last update timestamp upper bound (inclusive)

expiresAtGte?string

Expiration timestamp lower bound (inclusive)

expiresAtLte?string

Expiration timestamp upper bound (inclusive)

lastVisitAtGte?string

Last visit timestamp lower bound (inclusive)

lastVisitAtLte?string

Last visit timestamp upper bound (inclusive)

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/v1/checkouts/sessions?limit=20&offset=0&sort=descending&daterange=2026-01-01T00%3A00%3A00Z&daterangegt=2026-01-01T00%3A00%3A00Z&daterangegte=2026-01-01T00%3A00%3A00Z&daterangelt=2026-01-01T00%3A00%3A00Z&daterangelte=2026-01-01T00%3A00%3A00Z&status=active&id=sess_abc123&source=payment_link&transactionId=tra_xyz789&linkId=lin_abc123&customerId=cus_abc123&externalTransactionId=ext_98765&integrationId=1024&integrationType=woocommerce&online=true&recoverySent=false&firstInitialization=true&domainAmbient=live&domainHost=checkout.example.com&language=pt-BR&totalAmountGte=1000&totalAmountLte=9999999&renewalCountGte=0&renewalCountLte=10&paymentmethodselected=pix&paymentstepgte=1&paymentsteplte=3&attemptcountgte=1&attemptcountlte=5&completedAtGte=2026-01-01T00%3A00%3A00Z&completedAtLte=2026-01-01T00%3A00%3A00Z&abandonedAtGte=2026-01-01T00%3A00%3A00Z&abandonedAtLte=2026-01-01T00%3A00%3A00Z&updatedAtGte=2026-01-01T00%3A00%3A00Z&updatedAtLte=2026-01-01T00%3A00%3A00Z&expiresAtGte=2026-01-01T00%3A00%3A00Z&expiresAtLte=2026-01-01T00%3A00%3A00Z&lastVisitAtGte=2026-01-01T00%3A00%3A00Z&lastVisitAtLte=2026-01-01T00%3A00%3A00Z"
{
  "offset": 0,
  "limit": 20,
  "total": 1,
  "page": 1,
  "data": [
    {
      "object": "checkout.session",
      "id": "sess_a1b2c3d4e5f6789012ab",
      "status": "active",
      "source": "api",
      "totalAmount": 46523,
      "online": false,
      "transactionId": null,
      "abandonedAt": null,
      "completedAt": null,
      "updatedAt": "2026-06-08T12:00:00.000Z",
      "createdAt": "2026-06-08T12:00:00.000Z"
    }
  ],
  "hasMore": false
}
{
  "error": {
    "status": "Bad Request",
    "statusCode": 400,
    "category": "validation",
    "message": "Validation errors occurred",
    "details": "One or more parameters are invalid or out of range. Please check the parameters and try again.",
    "params": [
      {
        "payment[currency]": "currency must be one of [BRL]"
      },
      {
        "amount": "amount is required"
      }
    ],
    "code": "invalidParameters",
    "resource": "client"
  }
}
{
  "error": {
    "status": "Unauthorized",
    "statusCode": 401,
    "category": "authentication",
    "message": "Unauthorized",
    "details": "Authentication failed. The provided API key is invalid or does not have permission to operate.",
    "code": "unauthorized"
  }
}
{
  "error": {
    "status": "Forbidden",
    "statusCode": 403,
    "category": "authorization",
    "message": "Forbidden",
    "details": "Access denied. This may be due to IP blocks, domain restrictions, or insufficient permissions.",
    "code": "forbidden"
  }
}
{
  "error": {
    "status": "Not Found",
    "statusCode": 404,
    "category": "client",
    "message": "Not Found",
    "details": "The requested resource was not found on the server.",
    "code": "notFound"
  }
}
{
  "error": {
    "status": "Unprocessable Entity",
    "statusCode": 422,
    "category": "validation",
    "message": "Unprocessable Entity",
    "details": "The request was understood, but contains invalid data that could not be processed.",
    "code": "unprocessableEntity"
  }
}
{
  "error": {
    "status": "Too Many Requests",
    "statusCode": 429,
    "category": "rate_limit",
    "message": "Too Many Requests",
    "details": "The number of requests exceeded the limit allowed for the IP or user.",
    "retryAfterMinutes": 60,
    "code": "tooManyRequests"
  }
}
{
  "error": {
    "status": "Internal Server Error",
    "statusCode": 500,
    "category": "server",
    "message": "Server error.",
    "details": "An internal server error occurred. Please try again later.",
    "code": "serverError",
    "resource": "server"
  }
}