---
updatedAt: 2025-11-11T00:10:21.000Z
agentTools:
  projectIndex: https://docs.interswitchgroup.com/llms.txt
---

# Generate Token [bulk]

# OpenAPI definition

```json
{
  "openapi": "3.1.0",
  "info": {
    "title": "ipg",
    "version": "1.0"
  },
  "servers": [
    {
      "url": "https://sandbox.interswitchng.com"
    }
  ],
  "components": {
    "securitySchemes": {
      "sec0": {
        "type": "oauth2",
        "flows": {}
      }
    }
  },
  "security": [
    {
      "sec0": []
    }
  ],
  "paths": {
    "/cardless-service/api/v1/cardless-services/batch-token": {
      "post": {
        "summary": "Generate Token [bulk]",
        "description": "",
        "operationId": "generate-token-bulk",
        "parameters": [
          {
            "name": "Content-Type",
            "in": "header",
            "schema": {
              "type": "string",
              "default": "application/json"
            }
          },
          {
            "name": "Authorization",
            "in": "header",
            "schema": {
              "type": "string",
              "default": "Bearer eyJhbGciOiJSUzI1NiJ9.eyJmaXJzdE5hbWUiOiJEZWJvcmFoIiwibGFzdE5hbWUiOiJBZHViaWFybyIsImF1ZCI6WyJjYXJkbGVzcy1zZXJ2aWNlIiwicGFzc3BvcnQiLCJwcm9qZWN0LXgtY29uc3VtZXIiXSwidXNlcl9uYW1lIjoiZGFkdWJpYXJvQGludGVyc3dpdGNoLmNvbSIsInNjb3BlIjpbInByb2ZpbGUiXSwibW9iaWxlTm8iOiIyMzQ4MTI0ODg4NDM2IiwiZXhwIjozMDIyOTQxNjU3LCJqdGkiOiIxMGRjNzllZC03NmZiLTRmYTYtYmU5Yy03MjkwZmE5NzMwMTkiLCJlbWFpbCI6ImRhZHViaWFyb0BpbnRlcnN3aXRjaC5jb20iLCJjbGllbnRfaWQiOiJwcm9qZWN0LXgtYXBwIn0.bUG_FlxK2Wiyy6DZnSlVlosj7LfMaqzxXM_NysmOnAelvguWEv9-dE9v_R6eufZ6vCpUWIgK5ESXKVbEANoV6vauwZEps3rTzLmTtvX2_z0sq5dSKqG3Lswc5V6Q14bTKH6sxMuCvgVQ7dz5K23UJFv1Q6Wd2cuiy2pOnTe3Y-c8FD3rmEp7Bo3xsxcsL5_9GEyWvCVvGbo0ZsHoNYjJmRe-7PJl4LKy3ODKtChrgjeow7oYlgTxFezWiDvcD2hFn3JLOzuPisX-HqnZNAsBV5l_xheuQmkFESmmP6t7FgDYWnaKZIjCF__kkxK4e-lXhImYP1jDak1k7ctNm1uhlg"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "subscriberId",
                  "paymentMethodCode",
                  "frontEndPartnerId",
                  "ttid",
                  "pinBlock",
                  "macData",
                  "referenceId",
                  "beneficiaryNumber",
                  "entries",
                  "batchSize",
                  "paymentMethodIdentifier",
                  "defaultOneTimePin"
                ],
                "properties": {
                  "subscriberId": {
                    "type": "string",
                    "description": "Customer ID. E.g. 2348012233220",
                    "default": "2348124888436"
                  },
                  "paymentMethodCode": {
                    "type": "string",
                    "description": "A unique Identifier of payment instrument issuer e.g. GTMM, FBN"
                  },
                  "frontEndPartnerId": {
                    "type": "string",
                    "description": "A unique Identifier of App developer e.g. GTMM"
                  },
                  "tokenLifeTimeInMinutes": {
                    "type": "string",
                    "description": "The time this Paycode token should expire"
                  },
                  "amount": {
                    "type": "string",
                    "description": "Transaction amount. If payWithMobileChannel is ATM, this is Mandatory, if it is POS the purchase amount (the amount entered during transaction with Paycode) cannot be higher than this value"
                  },
                  "ttid": {
                    "type": "string",
                    "description": "Terminal Transaction ID. A unique generated id sent from the client application."
                  },
                  "oneTimePin": {
                    "type": "string",
                    "description": "The one time PIN to be used to cashout Paycode at ATM. This value is Mandatory for ATM Cashout"
                  },
                  "secure": {
                    "type": "string",
                    "description": "This contains payment method code authorization information. This field is Mandatory if the payment method authenticated by PIN.",
                    "default": "71b0d20108a09638251a7ea9dec2e01f542481b294a5cd7fc6ae2ec3751c7f575106f4ad526950f6ec72a4b1d3f33687645187ce3b1529dc4f5f8c5dc0df9b14f31b8f4ff75dd7dfcd96f0822d7e4aa99a926e5eb41e8d2556549a72c83716f6a1de7ec23a4b09faf6fec1096bd71e7ab067b6efdd6138a4251d552d3c9fa5c4a5b0f03eac58d268f666557e39b27914aaddd054d298aafa058d52bc582cd6e1f321a263f2d4a40c11dcbe4bc8a856810c05bb468482c7cbaa16e755c10a95e287c3badfc062c4f05b506d2f3a294c49d3f0fd8ed2ec5a5b51be3b208a3d76c941ee0fba4c92dab625e08c7531e58f1896f8aaf6bcd52b3f2846df0f098ecb0d"
                  },
                  "transactionRef": {
                    "type": "string",
                    "description": "Unique transaction reference. To be used as unique identifier in call to cancel token."
                  },
                  "additionalInfo": {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "default": "bulk"
                      }
                    }
                  },
                  "channel": {
                    "type": "string",
                    "description": "Paycode channel. This can either be ATM, POS, Agent and WEB."
                  },
                  "pinBlock": {
                    "type": "string",
                    "description": "This contains the encrypted payment method PIN. This field is Mandatory if the payment method is authenticated by PIN"
                  },
                  "macData": {
                    "type": "string",
                    "description": "This contains the MAC of some sensitive data. This field is Mandatory if the payment method is authenticated by PIN"
                  },
                  "referenceId": {
                    "type": "string",
                    "description": "Unique reference id. To be used as unique identifier to each bulk token generation request"
                  },
                  "beneficiaryNumber": {
                    "type": "string",
                    "description": "Mobile number of token beneficiary"
                  },
                  "entries": {
                    "type": "array",
                    "description": "This array contains the amount, beneficiaryNumber and oneTimePin for each token"
                  },
                  "batchSize": {
                    "type": "string",
                    "description": "This shows the total number of token intended to generate. NB. Only a maximum of 10 token can be generated at a time."
                  },
                  "paymentMethodIdentifier": {
                    "type": "string",
                    "default": "189E7A8944084E0EAB41A6D11AF5B76A"
                  },
                  "defaultOneTimePin": {
                    "type": "string",
                    "default": "1234"
                  },
                  "currency": {
                    "type": "string",
                    "default": "566"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "200",
            "content": {
              "text/plain": {
                "examples": {
                  "Result": {
                    "value": "{\n“numberOfEntries”: 10,\n“paymentTokens”: [\n{\n“phoneNumber”: “08021111111”,\n“payCode”: “12601555803”,\n“smsStatus”: “Not Sent”,\n“expiry”: “1440”,\n“surcharge”: 10000\n},\n{\n“phoneNumber”: “08021111112”,\n“payCode”: “12601531357”,\n“smsStatus”: “Not Sent”,\n“expiry”: “1440”,\n“surcharge”: 10000\n},\n{\n“phoneNumber”: “08021111113”,\n“payCode”: “12601382917”,\n“smsStatus”: “Not Sent”,\n“expiry”: “1440”,\n“surcharge”: 10000\n},\n{\n“phoneNumber”: “08021111114”,\n“payCode”: “12601216456”,\n“smsStatus”: “Not Sent”,\n“expiry”: “1440”,\n“surcharge”: 10000\n},\n{\n“phoneNumber”: “08021111115”,\n“payCode”: “12607585608”,\n“smsStatus”: “Not Sent”,\n“expiry”: “1440”,\n“surcharge”: 10000\n},\n{\n“phoneNumber”: “08021111116”,\n“payCode”: “12605587175”,\n“smsStatus”: “Not Sent”,\n“expiry”: “1440”,\n“surcharge”: 10000\n},\n{\n“phoneNumber”: “08021111117”,\n“payCode”: “12605531312”,\n“smsStatus”: “Not Sent”,\n“expiry”: “1440”,\n“surcharge”: 10000\n},\n{\n“phoneNumber”: “08021111118”,\n“payCode”: “12601247388”,\n“smsStatus”: “Not Sent”,\n“expiry”: “1440”,\n“surcharge”: 10000\n}\n]\n\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "400",
            "content": {
              "application/json": {
                "examples": {
                  "Result": {
                    "value": "{}"
                  }
                },
                "schema": {
                  "type": "object",
                  "properties": {}
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": []
      }
    }
  },
  "x-readme": {
    "headers": [],
    "explorer-enabled": true,
    "proxy-enabled": true
  },
  "x-readme-fauxas": true
}
```