canonical: https://jentic.com/apis/airtel.africa/airtel-africa

# Airtel Africa API

Jentic publishes the only available OpenAPI specification for Airtel Africa API, keeping it validated and agent-ready. Airtel Africa runs mobile money and telecom services across more than a dozen sub-Saharan markets. The two documented endpoints accept a payment from a mobile money customer and return the current status of a previously created payment. Authentication uses an API key passed in the X-API-Key header.

## For AI agents

Initiate Airtel Money payments and check payment status across Airtel Africa's mobile money markets.

## Scope

Does not handle card payments, FX conversion, KYC verification, or telecom airtime top-ups - use for Airtel Money payment creation and status lookup only.

## Capabilities

- Create a mobile money payment request via POST /payments
- Look up the current status of a previously initiated payment via GET `/payments/{id}`
- Support payment flows across Airtel Africa's mobile money operating countries
- Receive status transitions such as pending, successful, or failed for a created payment

## Use cases

### Mobile Money Checkout

Accept payment from an Airtel Money wallet during checkout by issuing POST /payments with the amount, currency, and customer's mobile number. Airtel returns a payment ID; poll GET `/payments/{id}` or wait for an out-of-band callback to confirm the payment cleared. Works across Airtel Africa's operating countries that support mobile money.

Example prompt: Create a payment for KES 1500 to mobile number 254700000000 and return the payment ID

### Payment Status Reconciliation

Reconcile orders against Airtel Money payments by polling GET `/payments/{id}` until the status reaches a terminal state (successful or failed). Useful for back-office reconciliation, customer support tools that need to confirm payment receipt, and order-fulfilment systems that gate shipping on payment success.

Example prompt: Look up payment ID 'pmt-abc-123' and return its current status and last updated timestamp

### Agent-Initiated Mobile Money Charge via Jentic

An agent processes a mobile money charge by searching Jentic for the create-payment operation, loading the schema, and executing under the X-API-Key header managed by Jentic. The agent never sees the raw API key. Status checks are likewise exposed through Jentic for closing the loop.

Example prompt: Search Jentic for 'create an airtel money payment', load the operation, and execute it with amount, currency, and customer mobile number

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/payments` | Create an Airtel Money payment |
| GET | `/payments/{id}` | Get the status of a payment |

## Key resources

- **Payments** — Create a mobile money payment and look up its status by ID

## Why Jentic

- **Setup:** Wiring Airtel Africa by hand means constructing its X-API-Key header, building payment payloads, and writing your own retry logic for money movement. Through Jentic you install once, import Airtel Africa from the API Directory, store the key once, and your agent calls it.
- **Permission scoping:** Airtel Africa creates a payment from a request body and reads it back at `/payments/{id}`, so scope your agent by operation: limit it to the operations it needs, such as creating a payment and checking its status, and leave out either if the agent does not need it.
- **Credential handling:** Your Airtel Africa API key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'create an airtel money payment' or 'check payment status', and Jentic returns the matching operation with its body and path schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Flutterwave** — Pan-African payment aggregator that bundles Airtel Money, M-Pesa, cards, and bank transfers
- **Paystack** — African payments aggregator with strong Nigeria, Ghana, and South Africa coverage
- **MTN** — Pair Airtel Money with MTN Mobile Money to cover the largest mobile money networks across Africa

## FAQ

### Why is there no official OpenAPI spec for Airtel Africa API?

Airtel Africa does not publish a public OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Airtel Africa API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the Airtel Africa API use?

Airtel Africa uses an API key passed in the X-API-Key header on every request. Through Jentic the key is stored encrypted and the header is injected at execution time so the raw key never enters the agent context.

### Can I create an Airtel Money payment with this API?

Yes. POST /payments accepts amount, currency, and the customer's mobile number and returns a payment ID. The payment then transitions through pending into a terminal status retrievable via GET `/payments/{id}.`

### What are the rate limits for the Airtel Africa API?

Airtel Africa applies per-key throttling that varies by partner agreement; the developer portal at developers.airtel.africa is authoritative. Treat HTTP 429 as a backoff-and-retry signal and avoid bursty checkout patterns.

### How do I check a payment's status through Jentic?

Install with pip install jentic, search for 'check airtel money payment status', load the GET `/payments/{id}` operation, and execute with the payment id. Jentic injects the X-API-Key header automatically.

### Which countries does the Airtel Africa API cover?

Airtel Money operates across 14+ sub-Saharan African markets including Kenya, Uganda, Tanzania, Nigeria, Zambia, Malawi, and Rwanda. Coverage and currency support depend on the partner agreement and per-country regulatory rules.

### Can I limit what my agent is allowed to do with the Airtel Africa API?

Yes. Because you run Jentic One yourself, your own rules decide which Airtel Africa operations your agent can call and which credentials it can use. The API exposes just two operations, creating a payment with POST /payments and checking its status with GET `/payments/{id}`, so you can restrict the agent to only the ones it needs. For example, you can allow status lookups while withholding payment creation, or the reverse, depending on the task.
