openapi: 3.0.3 info: title: Ozow Banks API description: Ozow (formerly i-Pay) is a South African instant EFT / "Pay by Bank" payment gateway. Merchants create a payment request server-side, redirect the customer to the Ozow secure bank-selection flow, and receive a server-to-server notification plus browser redirect on completion. All write requests are authenticated with an ApiKey header and a SHA512 HashCheck computed by concatenating the request fields in documented order, appending the merchant PrivateKey, lower-casing, and hashing. Transactions are ZAR-only (CountryCode ZA, CurrencyCode ZAR). termsOfService: https://ozow.com/terms-and-conditions contact: name: Ozow Support email: support@ozow.com url: https://hub.ozow.com/docs version: '1.0' servers: - url: https://api.ozow.com description: Production - url: https://stagingapi.ozow.com description: Staging / sandbox (also driven by the IsTest flag) tags: - name: Banks description: Retrieve the list of supported banks for the payment flow. paths: /GetBanks: get: operationId: getBanks tags: - Banks summary: Get supported bank list description: Returns the list of banks Ozow supports for the given site and country, for merchants who render their own bank-selection UI. security: - ApiKey: [] parameters: - name: siteCode in: query required: true schema: type: string - name: countryCode in: query required: true schema: type: string default: ZA responses: '200': description: List of supported banks. content: application/json: schema: type: array items: $ref: '#/components/schemas/Bank' components: schemas: Bank: type: object properties: id: type: string name: type: string abbreviation: type: string countryCode: type: string securitySchemes: ApiKey: type: apiKey in: header name: ApiKey description: Merchant API key issued in the Ozow merchant dashboard (dash.ozow.com). Sent alongside a SHA512 HashCheck field computed with the merchant PrivateKey. BearerToken: type: http scheme: bearer description: OAuth-style bearer token obtained from the Ozow token endpoint, used by the Refunds and Payouts APIs. Tokens are reusable until expiry.