Skip to main content

Requesting a Recurring Payment

Before each recurring payment, you must send a pre‑debit notification to the customer. This ensures they are informed and prepared for the upcoming charge, and it is required by NPCI/RBI regulations.

Important: The subscription payment can only proceed once the pre-debit notification has been successfully sent and a mandatory wait period of at-least 24 hours has been completed

Requirements

  • API credentials - Ensure you have your EBANX integration key. If not, complete the Merchant Signup Form.
  • Familiarity with EBANX Direct - This setup follows the same general structure as other payment methods, with a few unique parameters. See EBANX Direct for more info.

Instructions

To request a recurring payment, follow the steps below.

  1. Request UPI Autopay recurring payment



    Requesting a recurring payment with UPI Autopay is very straightforward. It follows the usual standards of /ws/direct payment requests, with the addition of specific parameters related to the enrollment.

    These parameters link the payment to the corresponding enrollment, ensuring that the recurring payment is properly processed.

    Check the fields below:

    ParameterRequirementsDescription
    integration_keyRequiredYour EBANX integration key.
    payment.nameRequiredFull name of the payer.
    payment.emailRequiredCustomer email.
    payment.phone_numberRequiredCustomer contact number.
    payment.countryRequiredTwo-letter country code. Set to IN for India.
    payment.merchant_payment_codeRequiredUnique code for the payment.
    payment.currency_codeRequiredSet to INR.
    payment.amount_totalRequiredPayment amount.
    payment.addressRequiredCustomer address (Max characters: 100).
    payment.street_numberRequiredCustomer street/Landmark information (Max characters: 30).
    payment.cityRequiredCustomer City (Max characters: 80).
    payment.stateRequiredCustomer state (Characters: 2-80).(Either state abbreviation or full name, ex: “DL” or “Delhi”. State List (https://docs.ebanx.com/docs/resources/country-state-codes/) for reference).
    payment.zipcodeRequiredPostal code. Must be a 6-digit number (Characters: 6).
    payment.enrollment.merchant_enrollment_codeRequiredUnique identifier associated with the enrollment.

    Check the example:

    curl -X POST \
    --location 'https://sandbox.ebanx.com/ws/direct' \
    --header 'Content-Type: application/json' \
    --data '{
    "integration_key": "{{integration_key}}",
    "payment": {
    "name": "John Doe",
    "email": "email@example.com",
    "country": "IN",
    "phone_number": "0987654321",
    "zipcode": "100200",
    "address": "a street",
    "street_number": "100",
    "street_complement": "Koramangala",
    "city": "Bangalore",
    "state": "MH",
    "payment_type_code": "upi-collect-autopay",
    "merchant_payment_code": "{{unique_payment_code}}",
    "currency_code": "INR",
    "amount_total": 1000,
    "enrollment": {
    "merchant_enrollment_code": "{{unique_enrollment_code}}",
    }
    }
    }'

    Important : Please pass us the unique merchant_enrollment_code associated with the enrollment for which the subsequent charge is requested . A successful request will return a JSON response like the one below. The UPI Autopay payment will have a pending (PE) status and will be confirmed later by the customer's bank.

    {
    "payment": {
    "hash": "66a22a492540fe35c3d6479aa88551d844ea66de7c193bd1",
    "country": "IN",
    "merchant_payment_code": "{{unique_payment_code}}",
    "status": "PE",
    "open_date": "2025-08-02 13:00:00",
    "amount_br": "1000.00",
    "amount_ext": "1000.00",
    "amount_iof": "0.00",
    "currency_rate": "1.0000",
    "currency_ext": "INR",
    "due_date": "2024-07-28",
    "instalments": "1",
    "payment_type_code": "upi-collect-autopay",
    "customer": {
    "email": "email@example.com",
    "name": "John Doe"
    },
    },
    "status": "SUCCESS"
    }
    note

    Recurring payment failure: In case a recurring payment fails, the output action differs depending on the enrollment frequency set

    a. For Periodic Enrollments (e.g., monthly, weekly):

    • Step 1: The merchant must initiate a one-time UPI payment request to recover the failed recurring charge.
    • Step 2: The next scheduled recurring payment can continue as usual under the same enrollment — no need to re-enroll the customer.

    b. For On-Demand Enrollments (ondemand): The merchant must restart the debit cycle:

    • Step 1 : Send a recurring payment request again (ws/direct)
    • Step 2 : Ebanx will send PDN and wait for 24 hours to execute payment
  2. Monitor payment for status changes

    Notifications

    Status

  3. Congratulations!

    You have succesfully integrated UPI Autopay Recurring Payment.

    Now, for each new billing cycle, simply repeat these steps!

    For more information, refer to the
    Direct API reference guidechevron_right

tip

The recurring debit logic has to be maintained on your end, EBANX does not control the frequency of the deductions.

Still need help?

Help Image

We hope this article was helpful. If you still have questions, you can explore the following options: