Skip to content

Non-card Payouts


Non-card Payout Payment Method

A Non-card Payout transaction allows merchants to transfer funds directly to a beneficiary's bank account or mobile wallet. Unlike standard purchase or authorization transactions that collect funds from a customer, a non-card payout pushes funds to the recipient. Common use cases include disbursements, withdrawals, seller payments, and payroll.

Non-card payouts are initiated via the Direct API and are processed asynchronously — the transaction may initially return a PENDING status, with the final result delivered via webhook.

Integration Type Limitation

Non-card payouts are only supported via the Direct API integration. Hosted Payment Page (HPP) and Embedded Fields (EF) integration types are not supported for non-card payout transactions.


Key Characteristics

  1. Push Payment

    • A non-card payout sends funds to a beneficiary, rather than collecting funds from a customer.
    • This is an initial transaction type — it does not require a parent transaction.
  2. Beneficiary-Based

    • Instead of payment card details, the request requires a beneficiary object specifying the destination type (e.g., bank_account) and the relevant account details.
    • For INR payouts, the beneficiary must include an IFSC code (Indian Financial System Code) to identify the destination bank branch.
  3. No 3D Secure Authentication

    • Non-card payout transactions do not require 3D Secure authentication.
    • As a result, browser_info is not required in the request.
  4. Terminal ID Specification

    • The terminal_id must be specified in the request. The terminal must be configured to support non-card payout transactions (feature: TRX_TYPE_PAYOUT).
  5. Asynchronous Processing


Request Requirements

Field Required Notes
terminal_id Yes Must support non-card payout transactions
reference Yes Unique non-card payout reference per terminal (max 40 chars). Idempotent — duplicate references with the same amount/currency will return the existing transaction.
description Yes Human-readable non-card payout description (max 100 chars)
currency Yes ISO 4217 currency code (e.g., INR, EUR, USD)
amount Yes Amount in minor units, as an integer (e.g., 10000 = 100.00 INR). Decimal or fractional values such as 100.00 or "100.00" are rejected at request validation.
beneficiary.type Yes Beneficiary type: bank_account or mobile_money
beneficiary.data Yes Beneficiary details (see below)
customer No Customer details
metadata No Arbitrary key-value metadata
customer_ip No Customer IP address (defaults to request IP)
return_url No URL to redirect after non-card payout completes (approved, declined, canceled, or error)
options No Provider-specific options

Beneficiary Data — Bank Account (INR)

When processing INR non-card payouts to Indian bank accounts, the beneficiary object must include the following fields:

Field Required Description
account_number Yes Beneficiary bank account number
account_name Yes Name of the account holder
ifsc Yes IFSC code (Indian Financial System Code) — identifies the bank branch
bank_code No Bank code
bank_name No Name of the bank
bank_branch No Branch name
bank_address No Bank address
bank_city No Bank city
bank_state No Bank state
mobile No Beneficiary mobile number

Processing Flow

sequenceDiagram
    participant Merchant
    participant Gateway
    participant PSP

    Merchant->>Gateway: POST /api/transactions/payout
    Gateway->>Gateway: Validate request & terminal
    Gateway->>Gateway: Resolve payment provider
    Gateway->>PSP: Submit payout
    PSP-->>Gateway: Processing result (PENDING/APPROVED/DECLINED)
    Gateway-->>Merchant: Transaction response

    Note over PSP,Gateway: Asynchronous settlement

    PSP->>Gateway: Callback with final status
    Gateway->>Merchant: Webhook notification (APPROVED/DECLINED)

Supported Transactions

Transaction Type Supported Description
PAYOUT Yes Transfer funds to a beneficiary bank account or wallet
REFUND No Not applicable for non-card payouts
CAPTURE No Not applicable (single-step flow)
VOID No Not supported

Supported Currency

Currency Code Description
Indian Rupee INR Supported for bank account non-card payouts with IFSC

Additional currencies may be supported depending on the configured payment provider. Contact support for details.


Transaction Statuses

Status Description Final State
PENDING Non-card payout submitted and awaiting provider confirmation No
APPROVED Non-card payout successfully processed and funds transferred Yes
DECLINED Non-card payout rejected by the provider or bank Yes

Important Notes

  • The reference field is idempotent per terminal. Sending the same reference with the same amount and currency returns the existing transaction. Different amount/currency values will result in a validation error.
  • For INR non-card payouts, the ifsc field is mandatory in the beneficiary data. Ensure the IFSC code is valid and corresponds to the correct bank branch.
  • Account numbers are masked in API responses (only the last 4 digits are visible) for security purposes.
  • Always subscribe to webhooks to receive the final non-card payout status, as non-card payouts are typically processed asynchronously.