Skip to main content

Payouts overview

The Payouts (Fund Transfer) APIs let your application initiate NEFT and IMPS transfers programmatically. You pre-fund a disbursement balance with Omniware and then call the Fund Transfer API to move money out.

Prerequisites

  1. Maintain a disbursement balance

    Your Omniware disbursement account must hold sufficient funds. Load funds from one of your whitelisted source bank accounts (see Fund loading whitelisting).

  2. Get your API key + salt

    Issued at onboarding. The Payouts product uses the same hash algorithm as Payments — see Hash calculation.

  3. Decide transfer rails

    IMPS for amounts ≤ ₹2 lakh and 24×7 instant credit; NEFT for anything above, or when IMPS is unavailable.

All endpoints

EndpointPurpose
Fund TransferInitiate a payout.
Fund Transfer StatusReconcile a prior payout by your reference number.
Get BalanceCheck the current disbursement balance.
Get StatementPull credits + debits over a date range.
Whitelist source account (merchant)Approve a source bank account to load funds for this merchant.
Whitelist source account (team)Approve a source account across all merchants in the team.
S2S callbackReceive payout outcomes server-to-server.
Credit notificationReceive notifications when an e-collect virtual account is funded.

Status model

StatusMeaningAction
PROCESSINGDisbursement in progress.Query status until terminal.
INCOMPLETESame as PROCESSING.Query status until terminal.
PENDINGSame as PROCESSING.Query status until terminal.
SENT_TO_BENEFICIARYInitiated from source bank; awaiting confirmation.Query status until terminal.
SUCCESSSettled at the beneficiary.Terminal. Mark paid.
FAILED / FAILUREBank rejected the disbursement. See error_message.Terminal. Mark failed; retry with a fresh merchant_reference_number if needed.
RETURNED_FROM_BENEFICIARYBeneficiary's bank rejected the credit.Terminal. Funds returned to your disbursement balance.

Full status reference: Disbursement statuses.