> ## Documentation Index
> Fetch the complete documentation index at: https://flutterwaveinc.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Retrieve a checkout session

> Retrieve a checkout session.



## OpenAPI

````yaml get /checkout/sessions/{id}
openapi: 3.1.0
info:
  version: '1.0'
  title: Flutterwave APIs
  description: APIs for Enterprise Customers
  contact:
    name: Flutterwave
    email: hi@flutterwavego.com
servers:
  - url: https://developersandbox-api.flutterwave.com
    description: Dev server
security:
  - bearerAuth: []
paths:
  /checkout/sessions/{id}:
    get:
      tags:
        - Checkout
      summary: Retrieve a checkout session
      description: Retrieve a checkout session.
      operationId: checkout_sessions_get
      parameters:
        - $ref: '#/components/parameters/trace_id'
        - in: path
          required: true
          name: id
          schema:
            description: ID of the checkout session.
            type: string
            nullable: false
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    $ref: '#/components/schemas/status'
                  message:
                    type: string
                  data:
                    $ref: '#/components/schemas/checkout_session'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/400'
        '401':
          description: Unauthorised request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/401'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/403'
components:
  parameters:
    trace_id:
      description: >-
        A unique identifier to track this operation. It must be between 12 and
        255 characters in length.
      in: header
      name: X-Trace-Id
      schema:
        type: string
        minLength: 12
        maxLength: 255
      example: acb123e4-f567-4a8b-9c0d-1e2f3a4b5c6d
  schemas:
    '400':
      description: Bad Request
      type: object
      properties:
        status:
          type: string
          nullable: false
          enum:
            - failed
        error:
          type: object
          properties:
            type:
              type: string
              example: REQUEST_NOT_VALID
            code:
              type: string
              example: '10400'
            message:
              type: string
              nullable: true
              example: Request is not valid
            validation_errors:
              type: array
              items:
                type: object
                properties:
                  field_name:
                    type: string
                    example: amount
                  message:
                    type: string
                    example: must not be null
          description: >-
            The request cannot be accepted and is malformed and/or missing
            required parameters.
    '401':
      description: Unauthorized
      type: object
      properties:
        status:
          type: string
          nullable: false
          enum:
            - failed
        message:
          type: string
          nullable: true
          description: Invalid API key provided
          example: UNAUTHORIZED
        error:
          type: object
          properties:
            type:
              type: string
              example: UNAUTHORIZED
            code:
              type: string
              example: '10401'
            message:
              type: string
              example: unauthorized
    '403':
      description: Forbidden
      type: object
      properties:
        status:
          type: string
          nullable: false
          enum:
            - failed
        message:
          type: string
          description: API key doesn't have permission to access this resource
        error:
          type: object
          properties:
            type:
              type: string
              example: FORBIDDEN
            code:
              type: string
              example: '10403'
            message:
              type: string
              example: Forbidden
    status:
      type: string
      nullable: false
      enum:
        - success
        - failed
    checkout_session:
      type: object
      properties:
        id:
          description: ID of the checkout session
          type: string
        amount:
          allOf:
            - $ref: '#/components/schemas/amount'
          description: Amount to be collected from the customer
        currency:
          $ref: '#/components/schemas/currency'
        customer_id:
          description: ID of the customer
          type: string
        checkout_url:
          description: The checkout url to be shared with the customer
          type: string
        redirect_url:
          type: string
          description: Specifies the URL to redirect to after payment.
        reference:
          $ref: '#/components/schemas/reference'
        created_datetime:
          type: string
          format: date-time
        max_retry_attempts:
          description: The maximum number of retry attempts to complete checkout
          type: integer
          default: 3
          minimum: 0
          maximum: 10
        session_duration:
          type: integer
          description: >-
            The session duration (in minutes) to keep active. You can always
            generate a new checkout session if expired
          minimum: 5
          maximum: 2880
    amount:
      type: number
      format: decimal
      description: The payment amount in decimals.
      example: 12.34
      minimum: 0.01
    currency:
      description: ISO 4217 currency code.
      type: string
      example: NGN
      enum:
        - AED
        - AFN
        - ALL
        - AMD
        - ANG
        - AOA
        - AQD
        - ARS
        - AUD
        - AZN
        - BAM
        - BBD
        - BDT
        - BGN
        - BHD
        - BIF
        - BMD
        - BND
        - BOB
        - BRL
        - BSD
        - BWP
        - BYR
        - BZD
        - CAD
        - CDF
        - CHF
        - CLP
        - CNY
        - COP
        - CRC
        - CUP
        - CVE
        - CYP
        - CZK
        - DJF
        - DKK
        - DOP
        - DZD
        - ECS
        - EEK
        - EGP
        - ETB
        - EUR
        - FJD
        - FKP
        - GBP
        - GEL
        - GGP
        - GHS
        - GIP
        - GMD
        - GNF
        - GTQ
        - GYD
        - HKD
        - HNL
        - HRK
        - HTG
        - HUF
        - IDR
        - ILS
        - INR
        - IQD
        - IRR
        - ISK
        - JMD
        - JOD
        - JPY
        - KES
        - KGS
        - KHR
        - KMF
        - KPW
        - KRW
        - KWD
        - KYD
        - KZT
        - LAK
        - LBP
        - LKR
        - LRD
        - LSL
        - LTL
        - LVL
        - LYD
        - MAD
        - MDL
        - MGA
        - MKD
        - MMK
        - MNT
        - MOP
        - MRO
        - MTL
        - MUR
        - MVR
        - MWK
        - MXN
        - MYR
        - MZN
        - NAD
        - NGN
        - NIO
        - NOK
        - NPR
        - NZD
        - OMR
        - PAB
        - PEN
        - PGK
        - PHP
        - PKR
        - PLN
        - PYG
        - QAR
        - RON
        - RSD
        - RUB
        - RWF
        - SAR
        - SBD
        - SCR
        - SDG
        - SEK
        - SGD
        - SKK
        - SLL
        - SOS
        - SRD
        - STD
        - SVC
        - SYP
        - SZL
        - THB
        - TJS
        - TMT
        - TND
        - TOP
        - TRY
        - TTD
        - TWD
        - TZS
        - UAH
        - UGX
        - USD
        - UYU
        - UZS
        - VEF
        - VND
        - VUV
        - XAF
        - XCD
        - XOF
        - XPF
        - YER
        - ZAR
        - ZMK
        - ZWD
        - ZMW
    reference:
      type: string
      pattern: ^[a-zA-Z0-9\-]+$
      minLength: 6
      maxLength: 42
      description: >-
        A custom identifier to track the transaction, This must be unique across
        all your transactions.
      x-pattern-message: must be an alphanumeric string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````