openapi: 3.0.1 info: title: Paystack Accept Payments Balance Split API description: Initialize, verify, charge, and manage one-time card, bank, USSD, mobile money, and QR payments. The core API for accepting payments through Paystack across Africa. version: 1.0.0 contact: name: Paystack Support url: https://support.paystack.com email: support@paystack.com license: name: Apache 2.0 url: https://www.apache.org/licenses/LICENSE-2.0.html servers: - url: https://api.paystack.co description: Base API endpoint security: - bearerAuth: [] tags: - name: Split paths: /split: post: tags: - Split summary: Create Split operationId: split_create requestBody: content: application/x-www-form-urlencoded: schema: $ref: '#/paths/~1split/post/requestBody/content/application~1json/schema' application/json: schema: type: object required: - name - type - subaccounts - currency properties: name: description: Name of the transaction split type: string type: description: The type of transaction split you want to create. type: string enum: - percentage - flat subaccounts: description: A list of object containing subaccount code and number of shares type: array items: $ref: '#/paths/~1split~1%7Bid%7D~1subaccount~1add/post/requestBody/content/application~1json/schema' currency: description: The transaction currency type: string enum: - NGN - GHS - ZAR - USD bearer_type: description: This allows you specify how the transaction charge should be processed type: string enum: - subaccount - account - all-proportional - all bearer_subaccount: description: This is the subaccount code of the customer or partner that would bear the transaction charge if you specified subaccount as the bearer type type: string responses: '201': $ref: '#/paths/~1plan/get/responses/200' '401': $ref: '#/paths/~1plan/get/responses/401' default: description: Server error get: tags: - Split summary: List Splits operationId: split_list parameters: - name: name in: query schema: type: string - name: active in: query schema: type: string - name: sort_by in: query schema: type: string - name: from in: query schema: type: string - name: to in: query schema: type: string - name: perPage in: query schema: type: string - name: page in: query schema: type: string responses: '200': $ref: '#/paths/~1plan/get/responses/200' '401': $ref: '#/paths/~1plan/get/responses/401' '404': $ref: '#/paths/~1plan/get/responses/401' default: description: Server error /split/{id}: parameters: - name: id in: path required: true schema: type: string get: tags: - Split summary: Fetch Split operationId: split_fetch responses: '200': $ref: '#/paths/~1plan/get/responses/200' '401': $ref: '#/paths/~1plan/get/responses/401' '404': $ref: '#/paths/~1plan/get/responses/401' default: description: Server error put: tags: - Split summary: Update Split operationId: split_update requestBody: content: application/x-www-form-urlencoded: schema: $ref: '#/paths/~1split~1%7Bid%7D/put/requestBody/content/application~1json/schema' application/json: schema: type: object properties: name: description: Name of the transaction split type: string active: description: Toggle status of split. When true, the split is active, else it's inactive type: boolean bearer_type: description: This allows you specify how the transaction charge should be processed type: string enum: - subaccount - account - all-proportional - all bearer_subaccount: description: This is the subaccount code of the customer or partner that would bear the transaction charge if you specified subaccount as the bearer type type: string responses: '200': $ref: '#/paths/~1plan/get/responses/200' '401': $ref: '#/paths/~1plan/get/responses/401' '404': $ref: '#/paths/~1plan/get/responses/401' default: description: Server error /split/{id}/subaccount/add: post: tags: - Split summary: Add Subaccount to Split operationId: split_addSubaccount requestBody: content: application/x-www-form-urlencoded: schema: $ref: '#/paths/~1split~1%7Bid%7D~1subaccount~1add/post/requestBody/content/application~1json/schema' application/json: schema: type: object properties: subaccount: description: Subaccount code of the customer or partner type: string share: description: The percentage or flat quota of the customer or partner type: string parameters: - name: id in: path required: true schema: type: string example: application/json responses: '201': $ref: '#/paths/~1plan/get/responses/200' '401': $ref: '#/paths/~1plan/get/responses/401' default: description: Server error /split/{id}/subaccount/remove: post: tags: - Split summary: Remove Subaccount from split operationId: split_removeSubaccount requestBody: content: application/x-www-form-urlencoded: schema: $ref: '#/paths/~1split~1%7Bid%7D~1subaccount~1add/post/requestBody/content/application~1json/schema' application/json: schema: $ref: '#/paths/~1split~1%7Bid%7D~1subaccount~1add/post/requestBody/content/application~1json/schema' parameters: - name: id in: path required: true schema: type: string example: application/json responses: '201': $ref: '#/paths/~1plan/get/responses/200' '401': $ref: '#/paths/~1plan/get/responses/401' default: description: Server error components: securitySchemes: bearerAuth: type: http scheme: bearer