ENACH Mandate Registration

This API allows the platform to initiate a mandate registration using Decentro's ENACH V3 stack.

Overview

This API allows the platform to initiate an ENACH-based registration request. The payer can then authorize the request using one of the supported modes.

  • Debit Card
  • Net banking
  • Aadhaar

📘

Ensure to use only staging credentials & Simulation data only.

Flow

Below is the flow for using this API.

  • The platform can check if the bank is supported using the Supported Banks API.
  • The platform captures the mandate details like amount, frequency, timeframe, etc.
  • The platform initiates a registration request by hitting the endpoints with the mandate details.
  • Decentro validates if the destination bank supports the authorization mode (Debit Card/Netbanking/Aadhaar).
  • The platform receives a shortened link from Decentro if the request is successful.
  • The platform renders the link on their asset (app/website), which is redirected to the NPCI page.
  • The payer authorizes the request using the relevant details
    • Debit card-related details if authorization is Debit Card
    • Netbanking login and OTP (in some cases) if authorization is Netbanking
  • Decentro triggers the registration status callback once the authorization is complete with the status to a pre-configured endpoint.
  • Decentro also redirects the payer to the platform's page basis the redirection URL provided at the time of onboarding.
  • The platform can alternatively check the registration status using the Mandate Registration Status API by passing the Decentro transaction ID received from this API response.

Note: If the link generated by Decentro is successfully initiated (opened), it remains valid for 15 minutes from the time of opening. If the payer uses the link after this time period, the registration will not be successful. This link can only be clicked once.

Registration Statuses

StatusDescription
ActiveMandate registration has been successfully completed, and the mandate is currently active.
InactiveThe mandate registration end date has passed.
PendingMandate registration is still pending completion. The registration process has been initiated but has not been completed.
RejectedMandate is rejected by destination banks or NPCI for various reasons.
Registration_link_expiredThe mandate registration link has expired. This status occurs when the user fails to initiate or open the registration link within the specified timeframe.
Registration_session_timeoutThe user initiated the registration session by clicking on the registration link but did not complete the process. The registration was dropped mid-journey due to inactivity or other reasons.

API Endpoints

Below are the API endpoints to be used by the platform basis the environments.

Request Parameters

Frequency

Below are the frequencies accepted by Decentro under the 'frequency' parameter in the request payload.

  • Adhoc
  • Daily
  • Weekly
  • Monthly
  • Quarterly
  • Semi-Annually
  • Yearly
  • Bi-Monthly

Amount Rule

Below are the values Decentro accepts under the 'amount_rule' parameter in the request payload.

  • Fixed -> Amount to be debited from the user's bank account is fixed. Can not debit more or less than the specified amount.
  • Max -> Amount to be debited from the user's bank account can be less than or equal to the specified amount.

Authentication Mode

Below are the values Decentro accepts under the 'authentication_mode' parameter in the request payload.

  • Debit Card
  • Net banking

Start & End Date

Below are the validations on the date parameters in the request payload.

  • Start date: needs to be a current date or a date in the future
  • End date: needs to be at least 1 day after the start date and can extend up to 40 years

Redirection URL

Redirection URL should always begin with "https://". This is an optional parameter.

If the redirection URL is not passed in the request body, Decentro will redirect to the default URL given by the merchant at the time of onboarding.

Category Codes

Below are the purpose codes the platform will pass in the category_code parameter in the request payload.

NPCI CodeDecentro CodeDescription
A001APIAPI mandate (This is discontinued from NPCI)
C001B2BB2B Corporate
B001CREDBill Payment Credit card
D001MANDDestination Bank Mandate
E001EDUEducation fees
I001PREMInsurance Premium
I002PAYMInsurance other payment
L002LONSLoan amount security
L001LONPLoan installment payment
M001MFMutual Fund Payment
U099OTHOthers
F001SUBSubscription Fees
T002TRETReDS
T001TAXTax Payment
U001ELECUtility Bill Payment Electricity
U003GASUtility Bill payment Gas Supply Cos
U005TELEUtility Bill payment mobile telephone broadband
WATWATUtility Bill payment water

Simulation Data

📘

OTP Validation

  1. Enter any 6-digit random number to validate the OTP.
  2. "111-111" use this 6-digit number to verify the wrong OTP scenario.

📘

Debit Card Validation

  1. Enter a random 12-digit debit card number.
  2. Enter a random 3-digit CVV.
  3. Enter a random debit card expiry date.

Authentication Mode - Debit Card

AmountScenarioMessageError Code
100Wrong account details.Account doesn't exist or invalid account details.AP05
200Registration Successful.Success/ Active-
500Registration Successful.Success/ Active-
300Wrong debit card details.Customer entered the wrong debit card details.AP35
400The Bank account belongs to a minor.Mandates were not registered. The Bank account is of minor.AP16
Random amountOther than the specified amount.Transaction rejected or cancelled by the customerAP23
Cancel buttonUser clicked on the cancel button.Transaction rejected or cancelled by the customer.AP23

Authentication Mode - Net Banking

ScenarioMessageError Code
User clicked on the cancel button.Customer cancelled or rejected the mandate registration.AP23
User acceptedActive/ Success-
Language
Click Try It! to start a request and see the response here!