Interswitch Bulk Transfers API

The Bulk Transfers API from Interswitch — 1 operation(s) for bulk transfers.

OpenAPI Specification

interswitch-bulk-transfers-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Interswitch Recharge Airtime Bulk Transfers 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: Bulk Transfers
paths:
  /quicktellerservice/api/v5/transactions/BulkTransfer:
    post:
      tags:
      - Bulk Transfers
      summary: Send Bulk Transfer
      description: Disburse to up to thousands of recipients in a single request.
      operationId: sendBulkTransfer
      parameters:
      - in: header
        name: terminalId
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkTransferRequest'
      responses:
        '200':
          description: Batch accepted.
          content:
            application/json:
              schema:
                type: object
                properties:
                  batchId:
                    type: string
                  responseCode:
                    type: string
                  acceptedCount:
                    type: integer
                  rejectedCount:
                    type: integer
components:
  schemas:
    SingleTransferRequest:
      type: object
      required:
      - transferCode
      - mac
      - initiatingEntityCode
      - initiation
      - termination
      - sender
      properties:
        transferCode:
          type: string
        mac:
          type: string
          description: SHA-512 hash of canonical transfer fields.
        initiatingEntityCode:
          type: string
          example: PBL
        initiation:
          type: object
          properties:
            amount:
              type: integer
            currencyCode:
              type: string
            channel:
              type: string
            paymentMethodCode:
              type: string
              example: CA
        termination:
          type: object
          properties:
            amount:
              type: integer
            currencyCode:
              type: string
            accountReceivable:
              type: object
              properties:
                accountNumber:
                  type: string
                accountType:
                  type: string
            entityCode:
              type: string
              description: Recipient bank entity code.
            countryCode:
              type: string
            paymentMethodCode:
              type: string
              example: AC
        sender:
          type: object
          properties:
            phone:
              type: string
            email:
              type: string
              format: email
            firstName:
              type: string
            lastName:
              type: string
    BulkTransferRequest:
      type: object
      required:
      - batchReference
      - items
      properties:
        batchReference:
          type: string
        initiatingEntityCode:
          type: string
        items:
          type: array
          items:
            $ref: '#/components/schemas/SingleTransferRequest'
  securitySchemes:
    InterswitchAuth:
      type: apiKey
      in: header
      name: Authorization