# Kotani Pay ## Docs - [Generate API Key](https://manual.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 - [Human Verification](https://manual.kotanipay.com/v3/api-reference/authentication/human-verify.md): Complete human verification for magic link requests that were flagged as potentially suspicious - [Authentication Login](https://manual.kotanipay.com/v3/api-reference/authentication/login.md): Login to your integrator account. This endpoint allows you to login to your account - [Refresh Access Token](https://manual.kotanipay.com/v3/api-reference/authentication/refresh-token.md): This endpoint is used to refresh the access token using a valid refresh token - [Create Bulk Payment Batches](https://manual.kotanipay.com/v3/api-reference/bulk-payments/create-batches.md) - [Get Bulk Payment Batch by ID](https://manual.kotanipay.com/v3/api-reference/bulk-payments/get-batch.md) - [Get Batch Payments](https://manual.kotanipay.com/v3/api-reference/bulk-payments/get-batch-payments.md) - [Get Bulk Payment Statistics](https://manual.kotanipay.com/v3/api-reference/bulk-payments/get-statistics.md) - [Get Transaction Details](https://manual.kotanipay.com/v3/api-reference/bulk-payments/get-transaction.md) - [Get Available Wallets](https://manual.kotanipay.com/v3/api-reference/bulk-payments/get-wallets.md) - [Get Bulk Payment Batches](https://manual.kotanipay.com/v3/api-reference/bulk-payments/list-batches.md) - [Get Paginated Transactions](https://manual.kotanipay.com/v3/api-reference/bulk-payments/list-transactions.md) - [Preview Bulk Payment Batches](https://manual.kotanipay.com/v3/api-reference/bulk-payments/preview-batches.md) - [Process Bulk Payment Batch](https://manual.kotanipay.com/v3/api-reference/bulk-payments/process-batch.md) - [Validate CSV File](https://manual.kotanipay.com/v3/api-reference/bulk-payments/validate-csv.md) - [Get Available Banks](https://manual.kotanipay.com/v3/api-reference/country-support/banks.md): Returns a list of all supported banks with optional filtering by currency or search term. Banks are sourced from the centralized bank data registry. - [Get Supported Countries](https://manual.kotanipay.com/v3/api-reference/country-support/countries.md): Returns a list of all supported countries with their configurations. Supports filtering by service type, currency, country code, and active status. Data is aggregated from the Provider Registry for real-time accuracy. The isEnabled flag indicates whether the authenticated integrator has this service… - [Get Country Details](https://manual.kotanipay.com/v3/api-reference/country-support/country-details.md): Returns comprehensive details about a specific country including supported currencies, networks, and service availability. The isEnabled flag indicates whether the authenticated integrator has each service enabled and providers attached. - [Get Deposit Service Configuration](https://manual.kotanipay.com/v3/api-reference/country-support/deposit-services.md): Returns all countries that support deposit (onramp) services with their configurations. - [Get Available Networks](https://manual.kotanipay.com/v3/api-reference/country-support/networks.md): Returns all active mobile money networks available in a specific country, aggregated from all providers. Indicates if network selection is required. - [Get Withdraw Service Configuration](https://manual.kotanipay.com/v3/api-reference/country-support/withdraw-services.md): Returns all countries that support withdraw (offramp) services with their configurations. - [Generate Invoice](https://manual.kotanipay.com/v3/api-reference/cross-border/generate-invoice.md): Generate Invoice - [Get Invoice](https://manual.kotanipay.com/v3/api-reference/cross-border/get-invoice.md): Get Invoice - [Pay Invoice](https://manual.kotanipay.com/v3/api-reference/cross-border/pay-invoice.md): Pay Invoice - [Get Paid Invoice Status](https://manual.kotanipay.com/v3/api-reference/cross-border/pay-invoice-status.md): Get Paid Invoice Status - [Create Mobile Money Customer](https://manual.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://manual.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://manual.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://manual.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://manual.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. - [Validate Bank Account](https://manual.kotanipay.com/v3/api-reference/customers/validate-bank.md): Validates a bank account number format for a given country and bank code. Returns validation status, bank information, and whether the country is supported. - [Validate Mobile Money Account](https://manual.kotanipay.com/v3/api-reference/customers/validate-mobile-money.md): Validates a phone number in any format (with or without country code). Returns validation status, country information, formatted number, and whether the country is supported for mobile money. - [Bank Checkout Deposit](https://manual.kotanipay.com/v3/api-reference/deposits/bank-checkout.md): Customer Completed transaction using Checkout Url - [Bank Checkout Deposit Status](https://manual.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://manual.kotanipay.com/v3/api-reference/deposits/card.md): Customer Completed transaction using Checkout Url - [Card Deposit Status](https://manual.kotanipay.com/v3/api-reference/deposits/card-status.md): An integrator can use this endpoint to check the status of a deposit - [Create Crypto Bridge Deposit](https://manual.kotanipay.com/v3/api-reference/deposits/crypto-bridge.md): Enables cross-border transactions using blockchain as settlement rail. Provider initiates the transaction with a pre-generated payment invoice. Flow: Fiat collection → Crypto payment → Settlement to recipient. Supports Lightning Network, Solana, Base, Ethereum, and other chains. Supports mobile mone… - [Get Crypto Bridge Deposit Status](https://manual.kotanipay.com/v3/api-reference/deposits/crypto-bridge-status.md): Retrieve detailed status of a crypto bridge transaction including all stages: deposit collection, crypto payment, and settlement. - [Crypto Bridge Provider Settlement Webhook](https://manual.kotanipay.com/v3/api-reference/deposits/crypto-bridge-webhook-provider-settlement.md): Receives settlement status updates from settlement provider. Requires signature validation. Statuses: SETTLING, COMPLETED, FAILED. For FAILED status, initiates refund process using configured refund method. - [Deposit On-Chain (Receive Crypto)](https://manual.kotanipay.com/v3/api-reference/deposits/deposit-on-chain.md): Crypto deposits are where a customer's mobile money wallet account is deducted a specific fiat amount which is then converted to a specified stablecoin amount and sent to the integrator's specified public wallet address. - [Get Deposit On-Chain Status](https://manual.kotanipay.com/v3/api-reference/deposits/deposit-on-chain-status.md): This endpoint will be used to get the status of the deposit onchain request - [Get Supported Chains & Tokens](https://manual.kotanipay.com/v3/api-reference/deposits/deposit-on-chain-supported-chains.md): This endpoint will be used to get the supported chains for deposit onchain - [Initiate Deposit](https://manual.kotanipay.com/v3/api-reference/deposits/initiate.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 - [Deposit via Mobile Money](https://manual.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://manual.kotanipay.com/v3/api-reference/deposits/mobile-money-status.md): An integrator can use this endpoint to check the status of a deposit - [Check Deposit Status](https://manual.kotanipay.com/v3/api-reference/deposits/status.md): An integrator can use this endpoint to check the status of a deposit - [Create Integrator Account](https://manual.kotanipay.com/v3/api-reference/integrator/create.md): This endpoint will help you create an integrator - [Get Integrator](https://manual.kotanipay.com/v3/api-reference/integrator/get.md): This endpoint is used to retrieve an integrator details - [Update Webhook Configuration](https://manual.kotanipay.com/v3/api-reference/integrator/update-webhook.md): Allows an integrator to update their default webhook URL, secret, and event subscriptions. - [API Reference](https://manual.kotanipay.com/v3/api-reference/introduction.md): Kotani Pay API endpoints for digital asset transactions using local payment channels - [Create KYC Address](https://manual.kotanipay.com/v3/api-reference/kyc/create-address.md): This api will create a new kyc address - [Create KYC Basic Details](https://manual.kotanipay.com/v3/api-reference/kyc/create-basic-details.md): This api will create a new kyc basic details - [Create KYC Document](https://manual.kotanipay.com/v3/api-reference/kyc/create-document.md): This api will create a new kyc document - [Get KYC Status](https://manual.kotanipay.com/v3/api-reference/kyc/get-status.md): This api will get kyc status - [Get Integrator KYC Users](https://manual.kotanipay.com/v3/api-reference/kyc/list-integrator-users.md): This api will get all integrator kyc users - [Cancel Offramp Transaction](https://manual.kotanipay.com/v3/api-reference/offramp/cancel.md): This endpoint will cancel the offramp transaction. - [Create Offramp Request](https://manual.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://manual.kotanipay.com/v3/api-reference/offramp/get-status.md): This endpoint will return the status of the withdrawal request. - [Get Offramp Transactions](https://manual.kotanipay.com/v3/api-reference/offramp/list-transactions.md): This endpoint will return all offramp transactions for the integrator. - [Get Refund Status](https://manual.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://manual.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://manual.kotanipay.com/v3/api-reference/offramp/status.md): This endpoint will return the status of the withdrawal request. - [Create Onramp](https://manual.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://manual.kotanipay.com/v3/api-reference/onramp/crypto.md): This endpoint will send token to any crypto wallet - [Get Crypto Onramp Status](https://manual.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://manual.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://manual.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://manual.kotanipay.com/v3/api-reference/onramp/status.md): This endpoint will be used to get the status of the transaction - [Initiate Payout](https://manual.kotanipay.com/v3/api-reference/payouts/initiate.md): This api will withdraw fiat from the integrator’s fiat wallet to the customer’s mobile money wallet. - [Check Payout Status](https://manual.kotanipay.com/v3/api-reference/payouts/status.md): This endpoint will return the status of the withdrawal request. - [Get Crypto Bridge Rate](https://manual.kotanipay.com/v3/api-reference/rates/crypto-bridge-rate.md): Get a rate quote for crypto bridge transactions (fiat to crypto conversion). This endpoint generates a rate_id that must be used in the crypto bridge deposit request. Rate is valid for 60 seconds and can only be used once. Currently supports: KES -> Lightning (MSAT) - [Get Fiat to Fiat Exchange Rate](https://manual.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://manual.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://manual.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://manual.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://manual.kotanipay.com/v3/api-reference/rates/onramp-rate.md): An integrator can use this endpoint to get the exchange rate between two currencies - [Health Check](https://manual.kotanipay.com/v3/api-reference/system/health.md): This endpoint is used to check for the health of the application - [Payment Providers](https://manual.kotanipay.com/v3/api-reference/system/providers.md): This Api Handles fetching of payment providers - [Create Crypto Wallet](https://manual.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://manual.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://manual.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://manual.kotanipay.com/v3/api-reference/wallets/fiat/create.md): This endpoint will create a fiat wallet for the integrator. - [Get Fiat Wallet](https://manual.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://manual.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://manual.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://manual.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://manual.kotanipay.com/v3/api-reference/wallets/fiat/update.md): This endpoint will update the fiat wallet created by the integrator. - [Bank Withdrawal](https://manual.kotanipay.com/v3/api-reference/withdrawals/bank.md): Send money from integrator wallet to customer bank account. Supports Kenya and SA. - [Bank Withdrawal Status](https://manual.kotanipay.com/v3/api-reference/withdrawals/bank-status.md): This Api Handles payout to bank, currently only supports SA Banks - [Bank Withdrawal](https://manual.kotanipay.com/v3/api-reference/withdrawals/bank-v2.md): This Api Handles payout to bank, currently only supports SA Banks - [Lipa na M-Pesa Withdrawal](https://manual.kotanipay.com/v3/api-reference/withdrawals/lipa-na-mpesa.md): Send money from integrator wallet to customer via Lipa na M-Pesa STK Push or to a business shortcode. - [Mobile Money Withdrawal](https://manual.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://manual.kotanipay.com/v3/api-reference/withdrawals/mobile-money-status.md): This endpoint will return the status of the withdrawal request. - [Paybill Withdrawal](https://manual.kotanipay.com/v3/api-reference/withdrawals/paybill.md): Send money from integrator wallet to a Paybill number with account reference. - [Supporting Banks](https://manual.kotanipay.com/v3/api-reference/withdrawals/supporting-banks.md): This Api Handles fetching of supporting banks - [Development Guide](https://manual.kotanipay.com/v3/development.md): Development best practices for Kotani Pay API v3 integration - [Error Handling](https://manual.kotanipay.com/v3/essentials/error-handling.md): Understanding Kotani Pay API error responses and how to handle them - [Rate Limits](https://manual.kotanipay.com/v3/essentials/rate-limits.md): Understanding Kotani Pay API rate limits and best practices - [Transaction Statuses](https://manual.kotanipay.com/v3/essentials/transaction-statuses.md): Understand all transaction status codes used across Kotani Pay API endpoints - [Webhook Notifications](https://manual.kotanipay.com/v3/essentials/webhooks.md): Receive real-time notifications about transaction status updates and other events. - [Bulk Payments Flow](https://manual.kotanipay.com/v3/flows/bulk-payments-flow.md): Bulk payments allow integrators to disburse funds to multiple recipients simultaneously via CSV upload. Process hundreds or thousands of payments in one transaction with automatic validation, processing, and tracking. - [Crypto Bridge Flow (Cross-Border Remittance)](https://manual.kotanipay.com/v3/flows/crypto-bridge-flow.md): Complete sequence diagrams for crypto bridge transactions — fiat-to-crypto-to-fiat cross-border remittances via Lightning Network. - [Deposit Flows](https://manual.kotanipay.com/v3/flows/deposit-flow.md): Complete sequence diagrams for all deposit transaction types - [Offramp Flow (Sell Crypto)](https://manual.kotanipay.com/v3/flows/offramp-flow.md): This document shows the complete offramp flow for converting crypto to fiat and disbursing to users via different payment methods. - [Onramp Flow (Fiat → Crypto)](https://manual.kotanipay.com/v3/flows/onramp-flow.md): This document shows the complete onramp flow for converting fiat to crypto, including payment collection and crypto delivery. - [Payment Links Flow](https://manual.kotanipay.com/v3/flows/payment-links-flow.md): Payment links allow integrators to collect payments without building a full checkout experience. Create a link once, share it anywhere, and start accepting payments via multiple methods. - [Withdrawal Flows](https://manual.kotanipay.com/v3/flows/withdrawal-flow.md): Disburse funds to mobile money wallets (M-PESA, MTN Money, Airtel Money, etc.) - [Kotani Pay API v3](https://manual.kotanipay.com/v3/overview.md): Digital asset transactions using local payment channels - [Quickstart](https://manual.kotanipay.com/v3/quickstart.md): Get started with Kotani Pay API v3 in minutes - [Run in Postman](https://manual.kotanipay.com/v3/run-in-postman.md): Fork our complete API collection and start testing immediately ## OpenAPI Specs - [openapi](https://manual.kotanipay.com/api-reference/openapi.json)