---
title: "Create Careem Pay Object"
method: POST
path: "/api/basket/careem_pay_object"
tags: ["Basket"]
---

# Create Careem Pay Object

`POST /api/basket/careem_pay_object`

## Request

- Base URL: `https://tickitto.tech` (the document declares no server; this is the origin it was published from)
- URL: `https://tickitto.tech/api/basket/careem_pay_object`
- Auth: API key in header `key`

When using Tickitto as the Merchant of Record, creates and returns an object containing the careem pay details needed for the front-end to handle basket payment.

**Note:* the account associated with the provided key must first be enabled for Careem Pay checkout before this request can succeed.

## Query parameters

- `basket_id` string, required
- `currency` string: Currency for Careem Pay transaction

## Headers

- `X-Correlation-ID` string

## Request body

- CareemCustomer
  - `first_name` string, required: Customer's first name
  - `last_name` string, required: Customer's surname/family name
  - `phone_number` string, required: Customer's phone number in E.164 format
  - `email` string, email, required: Customer's email; must be a valid email
  - `currency` string: Customer's chosen currency
  - `billing_details` BillingDetails
    - `first_name` string
    - `last_name` string
    - `address` BillingAddress
      - `city` string
      - `country` string
      - `line1` string
      - `line2` string
      - `postal_code` string
      - `state` string
  - `agent_pin` string: Agent identifier, currently only used for Intele
  - `ip_location` string: IP location of the customer
  - `careem_user_id` string, required: Careem user id.

## Response `200`

Successful Response

- CareemPayObject
  - `invoice_id` string, required
  - `amount` number, required
  - `currency` string, required
  - `customer` CareemCustomer, required
    - `first_name` string, required: Customer's first name
    - `last_name` string, required: Customer's surname/family name
    - `phone_number` string, required: Customer's phone number in E.164 format
    - `email` string, email, required: Customer's email; must be a valid email
    - `currency` string: Customer's chosen currency
    - `billing_details` BillingDetails
      - `first_name` string
      - `last_name` string
      - `address` BillingAddress
        - `city` string
        - `country` string
        - `line1` string
        - `line2` string
        - `postal_code` string
        - `state` string
    - `agent_pin` string: Agent identifier, currently only used for Intele
    - `ip_location` string: IP location of the customer
    - `careem_user_id` string, required: Careem user id.
  - `additional` object

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `402`: Payment Required
- `404`: Not Found
- `409`: Conflict
- `410`: Gone
- `422`: Unprocessable Entity
- `500`: Internal Server Error

## Changes

- **2026-08-13** `301a3da5eb84`: 1 breaking, 1 info
  - the `amount` response's property type changed from `string` to `number` for status `200`
  - the `amount` response's property pattern `^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$` was removed for the status `200`

[Operation history](https://skmtc.dev/tickitto/apis/tickitto-api/changes/api/basket/careem_pay_object/post.md)

---

[API](https://skmtc.dev/tickitto/apis/tickitto-api.md) - [All operations](https://skmtc.dev/tickitto/apis/tickitto-api/llms.txt) - [OpenAPI document](https://skmtc.dev/tickitto/apis/tickitto-api/revisions/22e674e2f052?raw)
