Eko Platform Services Logo

    POSTInitiate Transaction

    Execute a DigiKhata wallet transfer to a recipient after OTP verification.

    POST/customer/payment/ppi-digikhata

    Initiates the money transfer from the sender's DigiKhata wallet to the recipient. Returns the financial response envelope with tx_status, transaction id (tid), bank reference number, fee, and updated balance.

    Body parameters

    initiator_idstringRequired

    Registered mobile number of the API user (see Platform Credentials).

    example: 9962981729

    user_codestringRequired

    User code of the retailer/agent the service is run for.

    example: 20810200

    client_ref_idstringoptional

    Unique reference id per API call, generated by your system.

    example: REQ-20260101-001

    recipient_idintegerRequired

    Unique ID generated while adding the recipient.

    example: 10017680

    amountintegerRequired

    Amount to be transferred (INR).

    example: 110

    timestampstringRequired

    Request timestamp (ISO 8601).

    example: 2025-01-21T07:07:20.562Z

    currencystringRequired

    Currency. Must be INR.

    example: INR

    customer_idstringRequired

    Sender's 10-digit mobile number.

    example: 8999999992

    channelintegerRequired

    Transfer channel. Defaults to 2 (NEFT); 0 for IMPS.

    example: 2

    otpstringoptional

    OTP received from Send Transaction OTP.

    example: 123456

    otp_ref_idstringoptional

    otp_ref_id received from Send Transaction OTP.

    example: zCISyglexo0Pjqp4YrS2ssweuD9v1c3aLKGxjTW8wU7An8Wem1UyNws5830yh7q/sf5J4R3BY=

    beneficiary_idstringoptional

    Beneficiary ID generated while getting the recipient details.

    example: 4202888

    service_codeintegeroptional

    Fixed service code. Defaults to 80.

    example: 80

    latlongstringoptional

    Geographic coordinates of the user's location.

    example: 28.63,77.22

    statestringoptional

    State parameter. Defaults to 1.

    example: 1

    Headers

    developer_keystringRequired

    Static API key issued to your account after KYC.

    secret-keystringRequired

    Dynamic per-request signature: base64(HMAC-SHA256(timestamp, base64(access_key))).

    secret-key-timestampstringRequired

    Current time in milliseconds since UNIX epoch, used to compute secret-key. Must match server time.

    content-typestringRequired

    application/json

    example: application/json

    Responses

    • statusnumber

      Primary success indicator (0 = success).

    • messagestring

      Human-readable response / error message.

    • response_status_idnumber

      Granular status id; see the shared error-codes table.

    • response_type_idnumber

      A unique id for every possible response shape (success or error) — useful for client logic branching and analytics.

    • tx_statusstring

      Transaction state: 0=Success, 1=Fail, 2=Awaited, 3=Refund Pending, 4=Refunded, 5=On Hold.

    • txstatus_descstring

      Human-readable transaction status.

    • dataobject

      API-specific response payload.

      • tidstring

        Eko transaction ID.

      • tx_statusstring

        Transaction status (0 = success).

      • txstatus_descstring

        Human-readable transaction status.

      • bank_ref_numstring

        Bank/UTR reference number for the transfer.

      • amountstring

        Transferred amount (INR).

      • feestring

        Fee charged for the transfer (INR).

      • balancestring

        Sender's wallet balance after the transfer (INR).

      • channel_descstring

        Channel used (IMPS/NEFT).

      • recipient_namestring

        Recipient's name.