Interswitch · Capability

Interswitch Airtime Recharge API — Quickteller

Direct airtime and e-pin recharge for MTN, Airtel, Glo, and 9mobile via the Quickteller airtime category.

Interswitch Airtime Recharge API — Quickteller is a Naftiko capability published by Interswitch, one of 12 capabilities the APIs.io network indexes for this provider. It bundles 3 operations across the GET and POST methods rooted at /v1/airtime.

The capability includes 2 read-only operations and 1 state-changing operation. Lead operation: List airtime telco billers. Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko.

Tagged areas include Interswitch, Airtime, and Quickteller.

Run with Naftiko InterswitchAirtimeQuickteller

What You Can Do

GET
Listairtimetelcos
/v1/airtime/telcos
GET
Listairtimedenominations
/v1/airtime/billers/{billerId}/denominations
POST
Rechargeairtime
/v1/airtime/recharge

MCP Tools

interswitch-list-airtime-telcos

List airtime telco billers.

read-only idempotent
interswitch-list-airtime-denominations

List denominations for a telco.

read-only idempotent
interswitch-recharge-airtime

Submit a direct airtime recharge.

Capability Spec

airtime-recharge-quickteller.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Interswitch Airtime Recharge API — Quickteller
  description: Direct airtime and e-pin recharge for MTN, Airtel, Glo, and 9mobile via the Quickteller airtime category.
  tags:
  - Interswitch
  - Airtime
  - Quickteller
  created: '2026-05-24'
  modified: '2026-05-24'
binds:
- namespace: env
  keys:
    INTERSWITCH_BEARER_TOKEN: INTERSWITCH_BEARER_TOKEN
capability:
  consumes:
  - type: http
    namespace: airtime-recharge-quickteller
    baseUri: https://sandbox.interswitchng.com
    resources:
    - name: airtime-telcos
      path: /api/v2/quickteller/categorys/4/billers
      operations:
      - name: listAirtimeTelcos
        method: GET
        description: List airtime telco billers (category 4).
        outputRawFormat: json
        outputParameters: [{ name: result, type: array, value: $. }]
    - name: airtime-denominations
      path: /api/v2/quickteller/billers/{billerId}/paymentitems
      operations:
      - name: listAirtimeDenominations
        method: GET
        description: List airtime denominations for a telco.
        outputRawFormat: json
        outputParameters: [{ name: result, type: array, value: $. }]
        inputParameters:
        - { name: billerId, in: path, type: integer, required: true }
    - name: recharge
      path: /api/v2/quickteller/payments/advices
      operations:
      - name: rechargeAirtime
        method: POST
        description: Submit a direct airtime recharge.
        outputRawFormat: json
        outputParameters: [{ name: result, type: object, value: $. }]
        inputParameters:
        - { name: body, in: body, type: object, required: true }
    authentication:
      type: apikey
      key: Authorization
      value: 'Bearer {{env.INTERSWITCH_BEARER_TOKEN}}'
      placement: header
  exposes:
  - type: rest
    namespace: airtime-recharge-quickteller-rest
    port: 8080
    resources:
    - path: /v1/airtime/telcos
      name: airtime-telcos
      operations:
      - method: GET
        name: listAirtimeTelcos
        call: airtime-recharge-quickteller.listAirtimeTelcos
        outputParameters: [{ type: array, mapping: $. }]
    - path: /v1/airtime/billers/{billerId}/denominations
      name: airtime-denominations
      operations:
      - method: GET
        name: listAirtimeDenominations
        call: airtime-recharge-quickteller.listAirtimeDenominations
        with: { billerId: rest.path.billerId }
        outputParameters: [{ type: array, mapping: $. }]
    - path: /v1/airtime/recharge
      name: recharge
      operations:
      - method: POST
        name: rechargeAirtime
        call: airtime-recharge-quickteller.rechargeAirtime
        with: { body: rest.body }
        outputParameters: [{ type: object, mapping: $. }]
  - type: mcp
    namespace: airtime-recharge-quickteller-mcp
    port: 9090
    transport: http
    tools:
    - name: interswitch-list-airtime-telcos
      description: List airtime telco billers.
      hints: { readOnly: true, destructive: false, idempotent: true }
      call: airtime-recharge-quickteller.listAirtimeTelcos
      outputParameters: [{ type: array, mapping: $. }]
    - name: interswitch-list-airtime-denominations
      description: List denominations for a telco.
      hints: { readOnly: true, destructive: false, idempotent: true }
      call: airtime-recharge-quickteller.listAirtimeDenominations
      with: { billerId: tools.billerId }
      outputParameters: [{ type: array, mapping: $. }]
    - name: interswitch-recharge-airtime
      description: Submit a direct airtime recharge.
      hints: { readOnly: false, destructive: false, idempotent: false }
      call: airtime-recharge-quickteller.rechargeAirtime
      with: { body: tools.body }
      outputParameters: [{ type: object, mapping: $. }]