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

# Check transaction status

> Poll the status of a previously submitted airtime transfer.



## OpenAPI

````yaml /openapi/airtime.json post /v1/transaction-status
openapi: 3.0.3
info:
  title: Beem Airtime API
  version: 1.0.0
  description: >-
    Airtime top-up, transaction status, credit balance, and customer callbacks.
    Transfer and status endpoints are served by the Airtime API; credit balance
    is served by the shared Topup service (use app_name=AIRTIME or USSD).
  contact:
    name: Beem
    url: https://beem.africa
    email: support@beem.africa
servers:
  - url: https://apiairtime.beem.africa
    description: Airtime API — transfer & transaction status
  - url: https://apitopup.beem.africa/v1
    description: Topup API — credit balance (shared across products)
security: []
tags: []
paths:
  /v1/transaction-status:
    post:
      summary: Check transaction status
      description: Poll the status of a previously submitted airtime transfer.
      operationId: getTransactionStatus
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                transaction_id:
                  description: Transaction ID returned from POST /v1/transfer
                  anyOf:
                    - type: string
                    - type: number
                      format: float
              additionalProperties: false
              required:
                - transaction_id
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    description: Transaction status code (100 = successful)
                    type: integer
                  message:
                    description: Human-readable status message
                    type: string
                  args:
                    type: object
                    properties:
                      timestamp:
                        description: Transaction timestamp (ISO 8601)
                        type: string
                      transaction_id:
                        description: Beem transaction ID
                        anyOf:
                          - type: string
                          - type: number
                            format: float
                      reference_id:
                        description: Client reference ID from the original transfer request
                        nullable: true
                        anyOf:
                          - type: string
                          - type: number
                            format: float
                      dest_addr:
                        description: Recipient mobile number
                        type: string
                      amount:
                        description: Airtime amount transferred
                        anyOf:
                          - type: string
                          - type: number
                            format: float
                    additionalProperties: false
                    required:
                      - timestamp
                      - transaction_id
                      - dest_addr
                additionalProperties: false
                required:
                  - code
                  - message
                  - args
        '400':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    description: Error code
                    type: integer
                  message:
                    description: Error message
                    type: string
                additionalProperties: false
                required:
                  - code
                  - message
        default:
          description: Successful response
      security:
        - basicAuth: []
        - accessToken: []
components:
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: 'Beem API credentials: API key as username, API secret as password.'
    accessToken:
      type: apiKey
      in: header
      name: Authorization
      description: >-
        Access token only. Send as Authorization: <token> — do not use a Bearer
        prefix.

````