Interswitch Checkout API

Hosted checkout payment initiation

OpenAPI Specification

interswitch-checkout-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Interswitch Recharge Airtime Checkout API
  description: 'Virtual top-up (direct airtime and data) and e-pin voucher delivery for

    MTN, Airtel, Glo, and 9mobile. Same biller / category / payment-item flow

    as Bills Payment; category ID `4` is reserved for airtime billers and the

    customer''s phone number is supplied as `customer_id` on the payment advice.

    '
  version: '2024-01-01'
servers:
- url: https://sandbox.interswitchng.com
  description: Sandbox
- url: https://saturn.interswitchng.com
  description: Production
security:
- InterswitchAuth: []
tags:
- name: Checkout
  description: Hosted checkout payment initiation
paths:
  /collections/w/pay:
    post:
      tags:
      - Checkout
      summary: Initiate Web Redirect Payment
      description: 'POST an HTML form (`application/x-www-form-urlencoded`) to redirect the

        customer to the Interswitch hosted payment page. After payment, the

        browser is redirected back to `site_redirect_url` with `txnref` in the

        query string. Always confirm the transaction server-side via

        `/collections/api/v1/gettransaction.json` before delivering value.

        '
      operationId: initiateWebRedirectPayment
      requestBody:
        required: true
        content:
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CheckoutRequest'
      responses:
        '302':
          description: Redirect to hosted payment page.
        '400':
          description: Validation error in the submitted form.
components:
  schemas:
    CheckoutRequest:
      type: object
      required:
      - merchant_code
      - pay_item_id
      - txn_ref
      - amount
      - currency
      - cust_email
      - site_redirect_url
      properties:
        merchant_code:
          type: string
          description: Merchant identifier from Quickteller Business.
        pay_item_id:
          type: string
          description: Pay item identifier configured on the merchant account.
        txn_ref:
          type: string
          description: Unique merchant transaction reference.
        amount:
          type: integer
          description: Amount in minor currency units (e.g. kobo for NGN).
        currency:
          type: string
          description: ISO 4217 numeric currency code (e.g. 566 for NGN).
        cust_email:
          type: string
          format: email
        site_redirect_url:
          type: string
          format: uri
  securitySchemes:
    InterswitchAuth:
      type: apiKey
      in: header
      name: Authorization