# Pesepay > Pesepay is a Zimbabwean payment gateway. It accepts EcoCash, InnBucks, Omari, PayGo, Zimswitch and Visa/Mastercard card payments in USD and Zimbabwe dollars, through a hosted checkout page or a direct server-to-server API. Key things to know before writing any Pesepay integration: - **Request and response bodies are encrypted, not plain JSON.** Every integration endpoint takes `{"payload": ""}`, where the payload is your JSON body encrypted with AES-256-CBC. The key is your 32-character application encryption key and the IV is the **first 16 characters of that same key**. Responses are encrypted the same way and must be decrypted. - **There are two different keys.** The *integration key* goes in the `authorization` header. The *encryption key* is used only for the payload cipher above. They are not interchangeable. - **Card payments are redirect-only.** Visa, Mastercard and Zimswitch have no seamless/direct integration — they must go through the hosted checkout. Only mobile-money methods work in the seamless flow. - **Zimbabwe dollars are addressed by two distinct currency codes**, which are not aliases: `ZiG` holds EcoCash and PayGo, `ZWG` holds Zimswitch and Omari. `GET /currencies/active` returns only `ZiG`, so a currency list built from that endpoint silently omits the `ZWG` methods. - **Seamless make-payment is `POST /v2/payments/make-payment`** in both production and sandbox. The v1 path is deprecated in production and does not exist in sandbox. - **Result callbacks are unsigned and unencrypted, and are never retried.** Do not trust callback contents; confirm every payment by calling check-payment-status with the reference number. - **The sandbox is USD-only** and exposes just EcoCash, Visa and Mastercard, with different amount limits from production. InnBucks, Omari, Zimswitch, PayGo and any Zimbabwe dollar checkout cannot be tested there. - **The published SDKs target production only.** They hardcode the production base URL with no sandbox override, so sandbox work has to be done over raw HTTP. ## Documentation Sets - [Abridged documentation](https://developers.pesepay.com/llms-small.txt): a compact version of the documentation for Pesepay, with non-essential content removed - [Complete documentation](https://developers.pesepay.com/llms-full.txt): the full documentation for Pesepay - [API reference](https://developers.pesepay.com/_llms-txt/api-reference.txt): every endpoint, field, error and data model, without the guides - [Payment methods](https://developers.pesepay.com/_llms-txt/payment-methods.txt): per-method codes, currencies, amount limits, required fields and failure modes - [Getting started](https://developers.pesepay.com/_llms-txt/getting-started.txt): onboarding, the quickstart, both payment flows and the encryption scheme ## Notes - The complete documentation includes all content from the official documentation - The content is automatically generated from the same source as the official documentation