# Kotani Pay ## Docs - [API Keys](https://documentation.kotanipay.com/v3/api-keys.md): How to generate API keys from the dashboard or via the API, and the two key types - [Generate API Key](https://documentation.kotanipay.com/v3/api-reference/authentication/generate-key.md): This endpoint is used to generate an the API Key which can be used to authorize transactions and more - [Authentication Login](https://documentation.kotanipay.com/v3/api-reference/authentication/login.md): Login to your integrator account. This endpoint allows you to login to your account - [Update Webhook Configuration](https://documentation.kotanipay.com/v3/api-reference/authentication/update-webhook-config.md): Allows an integrator to update their default webhook URL, secret, and event subscriptions. - [Create Bulk Payment Batches](https://documentation.kotanipay.com/v3/api-reference/bulk-payments/create-batches.md) - [Get Bulk Payment Batch by ID](https://documentation.kotanipay.com/v3/api-reference/bulk-payments/get-batch.md) - [Get Batch Payments](https://documentation.kotanipay.com/v3/api-reference/bulk-payments/get-batch-payments.md) - [Get Bulk Payment Statistics](https://documentation.kotanipay.com/v3/api-reference/bulk-payments/get-statistics.md) - [Get Transaction Details](https://documentation.kotanipay.com/v3/api-reference/bulk-payments/get-transaction.md) - [Get Available Wallets](https://documentation.kotanipay.com/v3/api-reference/bulk-payments/get-wallets.md) - [Get Bulk Payment Batches](https://documentation.kotanipay.com/v3/api-reference/bulk-payments/list-batches.md) - [Get Paginated Transactions](https://documentation.kotanipay.com/v3/api-reference/bulk-payments/list-transactions.md) - [Preview Bulk Payment Batches](https://documentation.kotanipay.com/v3/api-reference/bulk-payments/preview-batches.md) - [Process Bulk Payment Batch](https://documentation.kotanipay.com/v3/api-reference/bulk-payments/process-batch.md) - [Validate CSV File](https://documentation.kotanipay.com/v3/api-reference/bulk-payments/validate-csv.md) - [Generate Invoice](https://documentation.kotanipay.com/v3/api-reference/cross-border/generate-invoice.md): Generate Invoice - [Get Invoice](https://documentation.kotanipay.com/v3/api-reference/cross-border/get-invoice.md): Get Invoice - [Pay Invoice](https://documentation.kotanipay.com/v3/api-reference/cross-border/pay-invoice.md): Pay Invoice - [Get Paid Invoice Status](https://documentation.kotanipay.com/v3/api-reference/cross-border/pay-invoice-status.md): Get Paid Invoice Status - [Create Mobile Money Customer](https://documentation.kotanipay.com/v3/api-reference/customers/mobile-money/create.md): An integrator can use this endpoint to create the customers who will be either receiving or sending money using mobile money. - [Get Mobile Money Customer](https://documentation.kotanipay.com/v3/api-reference/customers/mobile-money/get.md): An integrator can use this endpoint to get the customer who will be either receiving or sending money using mobile money by passing customer key. - [Get Customer by Phone](https://documentation.kotanipay.com/v3/api-reference/customers/mobile-money/get-by-phone.md): An integrator can use this endpoint to get the customer who will be either receiving or sending money using mobile money by passing phone number. - [List Mobile Money Customers](https://documentation.kotanipay.com/v3/api-reference/customers/mobile-money/list.md): An integrator can use this endpoint to get all the customers who will be either receiving or sending money using mobile money. - [Update Mobile Money Customer](https://documentation.kotanipay.com/v3/api-reference/customers/mobile-money/update.md): An integrator can use this endpoint to update the customers who will be either receiving or sending money using mobile money. - [Bank Checkout Deposit](https://documentation.kotanipay.com/v3/api-reference/deposits/bank-checkout.md): Customer Completed transaction using Checkout Url - [Bank Checkout Deposit Status](https://documentation.kotanipay.com/v3/api-reference/deposits/bank-checkout-status.md): An integrator can use this endpoint to check the status of a deposit - [Card Deposit](https://documentation.kotanipay.com/v3/api-reference/deposits/card.md): Customer Completed transaction using Checkout Url - [Card Deposit Status](https://documentation.kotanipay.com/v3/api-reference/deposits/card-status.md): An integrator can use this endpoint to check the status of a deposit - [Deposit On-Chain (Receive Crypto)](https://documentation.kotanipay.com/v3/api-reference/deposits/deposit-on-chain.md) - [Get Deposit On-Chain Status](https://documentation.kotanipay.com/v3/api-reference/deposits/deposit-on-chain-status.md) - [Get Supported Chains & Tokens](https://documentation.kotanipay.com/v3/api-reference/deposits/deposit-on-chain-supported-chains.md) - [Deposit via Mobile Money](https://documentation.kotanipay.com/v3/api-reference/deposits/mobile-money.md): An integrator’s customers can initiate a deposit from their respective mobile money wallets. An STK push will be sent to the customer and the respective amount will be deducted from their mobile money wallets and deposited into the integrator’s fiat wallet - [Get Deposit Mobile Money Status](https://documentation.kotanipay.com/v3/api-reference/deposits/mobile-money-status.md): An integrator can use this endpoint to check the status of a deposit - [Create Integrator Account](https://documentation.kotanipay.com/v3/api-reference/integrator/create.md): This endpoint will help you create an integrator - [Get Integrator](https://documentation.kotanipay.com/v3/api-reference/integrator/get.md): This endpoint is used to retrieve an integrator details - [API Reference](https://documentation.kotanipay.com/v3/api-reference/introduction.md): Kotani Pay API endpoints for digital asset transactions using local payment channels - [Create KYC Address](https://documentation.kotanipay.com/v3/api-reference/kyc/create-address.md): This api will create a new kyc address - [Create KYC Basic Details](https://documentation.kotanipay.com/v3/api-reference/kyc/create-basic-details.md): This api will create a new kyc basic details - [Create KYC Document](https://documentation.kotanipay.com/v3/api-reference/kyc/create-document.md): This api will create a new kyc document - [Get KYC Status](https://documentation.kotanipay.com/v3/api-reference/kyc/get-status.md): This api will get kyc status - [Get Integrator KYC Users](https://documentation.kotanipay.com/v3/api-reference/kyc/list-integrator-users.md): This api will get all integrator kyc users - [Cancel Offramp Transaction](https://documentation.kotanipay.com/v3/api-reference/offramp/cancel.md): This endpoint will cancel the offramp transaction. - [Create Offramp Request](https://documentation.kotanipay.com/v3/api-reference/offramp/create.md): This endpoint will create a offramp request for a customer. If the fiat transfer fails after successful crypto receipt, an automatic refund will be initiated after 5 minutes. Use the refund-status endpoint to check refund status. - [Get Offramp Status (by Reference ID)](https://documentation.kotanipay.com/v3/api-reference/offramp/get-status.md): This endpoint will return the status of the withdrawal request. - [Get Offramp Transactions](https://documentation.kotanipay.com/v3/api-reference/offramp/list-transactions.md): This endpoint will return all offramp transactions for the integrator. - [Get Refund Status](https://documentation.kotanipay.com/v3/api-reference/offramp/refund-status.md): Get the status of an onchain refund. Refunds are automatically initiated 5 minutes after a failed transaction if the crypto was successfully received but fiat transfer failed. - [Retry Failed Refund](https://documentation.kotanipay.com/v3/api-reference/offramp/retry-refund.md): Retry a failed crypto refund for an offramp transaction. Gas/fund errors can be retried up to 10 times, other errors up to 4 times. Refunds marked for manual intervention cannot be retried through this endpoint. - [Get Offramp Status](https://documentation.kotanipay.com/v3/api-reference/offramp/status.md): This endpoint will return the status of the withdrawal request. - [Create Onramp](https://documentation.kotanipay.com/v3/api-reference/onramp/create.md): You can create an onramp request with either mobile money or bank checkout - [Send Token to Crypto Wallet](https://documentation.kotanipay.com/v3/api-reference/onramp/crypto.md): Retry multiple failed crypto refunds by providing an array of reference IDs. Gas/fund errors can be retried up to 10 times, other errors up to 4 times. Refunds marked for manual intervention will be skipped. - [Get Crypto Onramp Status](https://documentation.kotanipay.com/v3/api-reference/onramp/crypto-status.md): This endpoint will be used to get the status of the transaction - [Get Crypto Onramp Status (by Reference ID)](https://documentation.kotanipay.com/v3/api-reference/onramp/get-crypto-status.md): This endpoint will be used to get the status of the transaction - [Get Onramp Status (by Reference ID)](https://documentation.kotanipay.com/v3/api-reference/onramp/get-status.md): This endpoint will be used to get the status of the transaction - [Get Onramp Status](https://documentation.kotanipay.com/v3/api-reference/onramp/status.md): This endpoint will be used to get the status of the transaction - [Get Fiat to Fiat Exchange Rate](https://documentation.kotanipay.com/v3/api-reference/rates/fiat-to-fiat.md): An integrator can use this endpoint to get the exchange rate between two fiat currencies - [Get All Exchange Rates](https://documentation.kotanipay.com/v3/api-reference/rates/get-all-rates.md): An integrator can use this endpoint to get all the exchange rates available - [Get Exchange Rate](https://documentation.kotanipay.com/v3/api-reference/rates/get-rate.md): An integrator can use this endpoint to get the exchange rate between two currencies - [Get Offramp Exchange Rate](https://documentation.kotanipay.com/v3/api-reference/rates/offramp-rate.md): An integrator can use this endpoint to get the exchange rate between two currencies - [Get Onramp Exchange Rate](https://documentation.kotanipay.com/v3/api-reference/rates/onramp-rate.md): An integrator can use this endpoint to get the exchange rate between two currencies - [Incoming SMS Webhook](https://documentation.kotanipay.com/v3/api-reference/sms/incoming.md): Webhook endpoint for AfricasTalking incoming SMS messages. - [Register SMS Webhook](https://documentation.kotanipay.com/v3/api-reference/sms/register-webhook.md): Register a webhook client to receive SMS notifications - [Send SMS](https://documentation.kotanipay.com/v3/api-reference/sms/send.md): Send a standard SMS message - [Health Check](https://documentation.kotanipay.com/v3/api-reference/system/health.md): This endpoint is used to check for the health of the application - [Payment Providers](https://documentation.kotanipay.com/v3/api-reference/system/providers.md): This Api Handles fetching of payment providers - [Create Crypto Wallet](https://documentation.kotanipay.com/v3/api-reference/wallets/crypto/create.md): The crypto wallet will contain the specified chain and coins an integrator desires to hold and one can create as many wallets as needed. - [Get Crypto Wallet](https://documentation.kotanipay.com/v3/api-reference/wallets/crypto/get.md): This endpoint will return the crypto wallet created by the integrator by passing the wallet id. - [List Crypto Wallets](https://documentation.kotanipay.com/v3/api-reference/wallets/crypto/list.md): This endpoint will return all the crypto wallets created by the integrator. - [Create Fiat Wallet](https://documentation.kotanipay.com/v3/api-reference/wallets/fiat/create.md): This endpoint will create a fiat wallet for the integrator. - [Get Fiat Wallet](https://documentation.kotanipay.com/v3/api-reference/wallets/fiat/get.md): This endpoint will return the fiat wallet created by the integrator. - [Get Wallet by Currency](https://documentation.kotanipay.com/v3/api-reference/wallets/fiat/get-by-currency.md): This endpoint will return the fiat wallet created by the integrator. Optionally filter by country using the "country" query parameter. - [List Fiat Wallets](https://documentation.kotanipay.com/v3/api-reference/wallets/fiat/list.md): This endpoint will return all the fiat wallets created by the integrator. - [Transfer Deposit Balance](https://documentation.kotanipay.com/v3/api-reference/wallets/fiat/transfer-deposit-balance.md): This endpoint will transfer the deposit balance of the fiat wallet to the main balance. - [Update Fiat Wallet](https://documentation.kotanipay.com/v3/api-reference/wallets/fiat/update.md): This endpoint will update the fiat wallet created by the integrator. - [Bank Withdrawal Status](https://documentation.kotanipay.com/v3/api-reference/withdrawals/bank-status.md): This Api Handles payout to bank, currently only supports SA Banks - [Bank Withdrawal](https://documentation.kotanipay.com/v3/api-reference/withdrawals/bank-v2.md): This Api Handles payout to bank, currently only supports SA Banks - [Mobile Money Withdrawal](https://documentation.kotanipay.com/v3/api-reference/withdrawals/mobile-money.md): This api will withdraw fiat from the integrator’s fiat wallet to the customer’s mobile money wallet. - [Mobile Money Withdrawal Status](https://documentation.kotanipay.com/v3/api-reference/withdrawals/mobile-money-status.md): This endpoint will return the status of the withdrawal request. - [Supporting Banks](https://documentation.kotanipay.com/v3/api-reference/withdrawals/supporting-banks.md): This Api Handles fetching of supporting banks - [Accessing the Dashboard](https://documentation.kotanipay.com/v3/dashboard-login.md): How to log in to the Kotani Pay dashboard, reset your password via OTP, and navigate the interface - [Development Guide](https://documentation.kotanipay.com/v3/development.md): Environments, authentication, request structure, and error handling for the Kotani Pay API v3 - [Balances & Settlement](https://documentation.kotanipay.com/v3/essentials/balances-and-settlement.md): How deposit and payout balances work, how to move funds between them, and how to settle your earnings - [Error Handling](https://documentation.kotanipay.com/v3/essentials/error-handling.md): HTTP status codes and error response format for the Kotani Pay API - [Offramp Refunds](https://documentation.kotanipay.com/v3/essentials/offramp-refunds.md): How Kotani Pay returns crypto to integrators when a fiat disbursement fails after on-chain receipt. - [Rate Limits](https://documentation.kotanipay.com/v3/essentials/rate-limits.md): How the Kotani Pay API rate limits requests and what to expect when you exceed them - [Request Signing](https://documentation.kotanipay.com/v3/essentials/request-signing.md): Protect outbound API requests with HMAC-SHA256 signatures when secure mode is enabled on your account. - [Transaction Statuses](https://documentation.kotanipay.com/v3/essentials/transaction-statuses.md): Understand all transaction status codes used across Kotani Pay API endpoints - [Webhook Notifications](https://documentation.kotanipay.com/v3/essentials/webhooks.md): Receive real-time notifications about transaction status updates and other events. - [Bulk Payments Flow](https://documentation.kotanipay.com/v3/flows/bulk-payments-flow.md): How to disburse funds to many recipients at once — validate a CSV, assign wallets, and track batch processing - [Deposit Flow](https://documentation.kotanipay.com/v3/flows/deposit-flow.md): How to collect payments from customers via mobile money, bank checkout, or card - [Offramp Flow (Crypto → Fiat)](https://documentation.kotanipay.com/v3/flows/offramp-flow.md): How to convert crypto to fiat — customer sends crypto, Kotani Pay disburses fiat via mobile money or bank - [Onramp Flow (Fiat → Crypto)](https://documentation.kotanipay.com/v3/flows/onramp-flow.md): How to convert fiat to crypto — customer pays via mobile money or bank, Kotani Pay sends crypto to their wallet - [Payment Links Flow](https://documentation.kotanipay.com/v3/flows/payment-links-flow.md): How to create a hosted payment page and collect payments via mobile money, bank, card, or crypto - [Settlement Flow](https://documentation.kotanipay.com/v3/flows/settlement-flow.md): Settlement lifecycle, batch and merge flows, webhook events, and schedule rules - [Withdrawal Flow](https://documentation.kotanipay.com/v3/flows/withdrawal-flow.md): How to disburse funds to customers via mobile money or bank transfer - [Kotani Pay API v3](https://documentation.kotanipay.com/v3/overview.md): Digital asset transactions using local payment channels - [Quickstart](https://documentation.kotanipay.com/v3/quickstart.md): Get started with Kotani Pay API v3 in minutes ## OpenAPI Specs - [openapi](https://documentation.kotanipay.com/api-reference/openapi.json)