Live demo of agent247 on Digio's docs — click the orange button at the bottom right to start.

Create/Amend Mandate Request

Create or amend a mandate that is used for user to authenticate using Net-Banking or Debit Card or Aadhaar or Physical Nach.

To view error codes, click here

Digio Apis

Getting started with Digio Rest Apis

API SERVER

SELECTED: http://localhost:8080
AUTHENTICATION
No API key applied
General ⦂

Create Mandate Request

post {BASE_URL}/v3/client/mandate/create_form

This is used to create a mandate that is used for user to authenticate using Net-Banking or Debit Card or Aadhaar or Physical NACH

Requires Base 64 encoded clientId:clientSecret in Authorization header
REQUEST
REQUEST BODY application/json
object
Single line description
Field
Type
Description
corporate_config_id *
string

Corporate profile created from dashboard has below info and is auto populated during user authentication.
Utility Code
Service provider name
Sponsor bank name
Sponsor bank
Sponsor bank ifsc

mandate_type *
enum

Type of mandate to be created

Allowed: CREATE
- mandate_data*
object

Data attributes of mandate.

mandate_creation_date_time
date-time

Optional parameter, if not provided system date will be used

destination_bank_id
string

IFSC/MICR code of Destination Bank
IFSC Max len = 11, Alphanumeric
MICR Max len = 9, All numeric

destination_bank_name
string

Name of Destination Bank
Max len = 140

customer_ref_number
string

Reference number maintained by Corporate
e.g.: Customer_id, Loan account number, Folio number, Insurance policy number etc
Max len = 20, ALPHA and NUMERIC allowed
Note : Please pass this attribute unique for each mandate created, as many sponsor banks consider it as a unique identifier at their end.

Pattern: ^[0-9A-Za-z]{0,}$
management_category *
enum

Choose Category code from below (any one)
Please ensure this is as per the management category enabled for your utility code with NPCI
'C001':B2B Corporate
'B001':Bill Payment Credit card
'D001':Destination Bank Mandate
'E001':Education fees
'I001':Insurance Premium
'I002':Insurance other payment
'L099':Legacy One Crore and Above
'L002':Loan amount security
'L001':Loan installment payment
'M001':Mutual Fund Payment
'U099':Others
'F001':Subscription Fees
'T002':TReDS
'T001':Tax Payment
'U001':Utility Bill Payment Electricity
'U003':Utility Bill payment Gas Supply Cos
'U005':Utility Bill payment mobile telephone broadband
'U006':Utility Bill payment water
'S001':Small Value Mandate

Allowed: C001┃B001┃D001┃E001┃I001┃I002┃L099┃L002┃L001┃M001┃U099┃F001┃F001┃T001┃U001┃U003┃U005┃U006┃S001
is_recurring *
boolean

Pass false if its a one-time debit

Default: false
frequency *
enum

If is_recurring : true, pass debit frequency.
Note: Choose one from below, commensurate with your use case category (management category) eg: L001 (Loan Installment should have a defined frequency that is commensurate with the EMI schedule agreed upon with the customer eg: Monthly). Incorrect frequency passed for a management category, may lead to mandate registration failure and is at the destination bank's discretion.

Allowed: Adhoc┃IntraDay┃Daily┃Weekly┃Monthly┃BiMonthly┃Quarterly┃Semiannually┃Yearly
first_collection_date *
date-time

Date for First Debit in yyyy-mm-dd ; means the date from which you want the mandate to be registered

final_collection_date
date-time

Date for Last Debit in yyyy-mm-dd
Maximum allowed limit for final_collection_date is 40 yrs .

Note: If Final collection date is not passed then DIGIO will set this to default 40 yrs

collection_amount *
number

This is for fixed amount mandate EMI amount eg: 5500.50
Note: Mandate amount limit is 1,00,00,000 for physical/API/Esign mandate variant as per Circular No. NACH/2023-24/NACH/003 w.e.f. 15 Sep, 2023
Either of collection_amount or maximum_amount is mandatory

Constraints: Min 1┃Max 10000000
maximum_amount *
number

Maximum amount that may be collected from the customer's account, per instruction eg: 5500.50
Note: Mandate amount limit is 1,00,00,000 for physical/API/Esign mandate variant as per Circular No. NACH/2023-24/NACH/003 w.e.f. 15 Sep, 2023
Either of collection_amount or maximum_amount is mandatory

Constraints: Min 1┃Max 10000000
customer_name *
string

Recommended that the name is same as per Destination Bank records.

Constraints: 0 to 40 chars
Pattern: ^[0-9A-Za-z]{1,}[0-9A-Za-z\s.]{0,}$
scheme_ref_number
string

Additional Reference number maintained by Corporate for the reconciliation
E.g: Loan account number, Folio number, Insurance policy number etc
ALPHANUMERIC allowed.

Constraints: Max 20 chars
Pattern: ^[0-9A-Za-z]{0,}$
customer_mobile
string

Customer Mobile number

Constraints: 0 to 34 chars
customer_email
string

Customer Email address

Constraints: 0 to 50 chars
customer_account_number *
string

Customer bank account number. Should be all numeric

Constraints: 8 to 18 chars
customer_account_type *
enum

Note: CC/NRI/Joint not supported

Allowed: SAVINGS┃CURRENT┃OTHER
expire_in_days
integer

Please pass this value to allow the end user to be able to submit the mandate image (in case of physical mandate) or perform eSign authentication within ‘X’ days. X you can pass as the value.

Constraints: Min 1┃Max 90
Default: 10
auth_mode
enum

Authentication mode for mandate.

Allowed: API┃ESIGN┃PHYSICAL
sub_user_identifier
string

If mandate needs to be reflected to specific sub-user

customer_identifier
string

User email or mobile

notify_customer
boolean

Set true to send notification to customer with a gateway link to authenticate/sign the mandate. Else, false

Default: false
Allowed: true┃false
generate_access_token
boolean

If true, will receive an access_token object in response. access_token used to bypass first factor authentication in SDKs.

Default: false
include_authentication_url
boolean

Pass True if authentication link is required in response payload based on above customer’s identifier

RESPONSE
application/json
object
Single line description
Field
Type
Description
id
string

Unique ID to identify mandates provided by Digio.

mandate_id
string

Unique ID to identify mandates provided by Digio.

state
enum

This depicts the current state of mandate

Allowed: partial┃signed┃expired┃auth_success┃auth_failed┃cancelled┃revoked
type
enum

The type for mandate which was requested

Allowed: CREATE
- bank_details
object

Details with the bank

shared_with_bank
string

Bank Email ID

bank_name
string

Name of the Bank

state
enum

State with the bank

Allowed: SIGNED┃TRANSFER_FAILED┃TRANSFER_SUCCESS┃REJECT_SPO_BANK┃ACCEPTED_SPO_BANK┃AWAITING_ACK┃NACK_RECEIVED┃ACK_RECEIVED┃AWAITING_RES┃REGISTER_FAILED┃REGISTER_SUCCESS┃REVOKED
- sub_user
object

Sub user details, if the request was containing sub-user identifier.

id
string

Sub-user id

identifier_value
string

Identifier used for sub-user

identifier
enum

Type of identifier

Allowed: EMAIL┃MOBILE
email_id
string

Sub-user's email id if registered.

mobile
string

Sub-user's mobile number

created_at
date-time

Timestamp of when the request was create at

mode
enum

Authentication mode for mandate.

Allowed: API┃ESIGN┃PHYSICAL
- service_provider_details
object
service_provider_name
string

Name of service provider

service_provider_utility_code
string

Utility code for the given corporate config

authentication_url
string

If include_authentication_url was true in the request object then this object is populated.

- access_token
object
created_at
date-time

'yyyy-mm-dd hh:mm:ss': Timestamp of generation

updated_at
date-time

'yyyy-mm-dd hh:mm:ss': Timestamp of update

entity_id
string

Unique identifier of the parent entity the access token belongs to

id
string

Unique identifier referencing an access token

valid_till
date-time

DateTime at which the access token expires. New token can be generated when expired with the access token generation API mentioned in the document.

application/json
object
Single line description
Field
Type
Description
details
string

Details about the exception. Usually contains the exception id for reference.

code
string

Error code

message
string

Description of the error

Digio Apis

Getting started with Digio Rest Apis

API SERVER

SELECTED: http://localhost:8080
AUTHENTICATION
No API key applied
General ⦂

Amend Mandate Request

post {BASE_URL}/v3/client/mandate/create_form

This API is used to amend a mandate

Requires Base 64 encoded clientId:clientSecret in Authorization header
REQUEST
REQUEST BODY application/json
object
Single line description
Field
Type
Description
corporate_config_id *
string

Corporate profile created from dashboard has below info and is auto populated during user authentication.
Utility Code
Service provider name
Sponsor bank name
Sponsor bank
Sponsor bank ifsc

mandate_type *
enum

Type of mandate to be created

Allowed: AMEND
- mandate_data
object

Data attributes of mandate.

original_mandate_id *
string

UMRN of the original mandate

Constraints: 20 to 20 chars
amendment_reason *
enum

Reason for amendment
A001: On Customer Request
M036: Represent with CBS account number

Allowed: A001┃M036
frequency *
enum

If is_recurring : true, pass debit frequency.
Note: Choose one from below, commensurate with your use case category (management category) eg: L001 (Loan Installment should have a defined frequency that is commensurate with the EMI schedule agreed upon with the customer eg: Monthly). Incorrect frequency passed for a management category, may lead to mandate registration failure and is at the destination bank's discretion.

Allowed: Adhoc┃IntraDay┃Daily┃Weekly┃Monthly┃BiMonthly┃Quarterly┃Semiannually┃Yearly
first_collection_date *
date-time

Date for First Debit in yyyy-mm-dd ; means the date from which you want the mandate to be registered

final_collection_date
date-time

Date for Last Debit in yyyy-mm-dd
Maximum allowed limit for final_collection_date is 40 yrs .

Note: If Final collection date is not passed then DIGIO will set this to default 40 yrs

collection_amount *
number

This is for fixed amount mandate EMI amount eg: 5500.50
Note: Mandate amount limit is 1,00,00,000 for physical/API/Esign mandate variant as per Circular No. NACH/2023-24/NACH/003 w.e.f. 15 Sep, 2023
Either of collection_amount or maximum_amount is mandatory

Constraints: Min 1┃Max 10000000
maximum_amount *
number

Maximum amount that may be collected from the customer's account, per instruction eg: 5500.50
Note: Mandate amount limit is 1,00,00,000 for physical/API/Esign mandate variant as per Circular No. NACH/2023-24/NACH/003 w.e.f. 15 Sep, 2023
Either of collection_amount or maximum_amount is mandatory

Constraints: Min 1┃Max 10000000
expire_in_days
integer

Please pass this value to allow the end user to be able to submit the mandate image (in case of physical mandate) or perform eSign authentication within ‘X’ days. X you can pass as the value.

Constraints: Min 1┃Max 90
Default: 10
auth_mode
enum

Authentication mode for mandate.

Allowed: API┃ESIGN┃PHYSICAL
sub_user_identifier
string

If mandate needs to be reflected to specific sub-user

customer_identifier
string

User email or mobile

notify_customer
boolean

Set true to send notification to customer with a gateway link to authenticate/sign the mandate. Else, false

Default: false
Allowed: true┃false
include_authentication_url
boolean

Pass True if authentication link is required in response payload based on above customer’s identifier

RESPONSE
application/json
object
Single line description
Field
Type
Description
id
string

Unique ID to identify mandates provided by Digio.

mandate_id
string

Unique ID to identify mandates provided by Digio.

state
enum

This depicts the current state of mandate

Allowed: partial┃signed┃expired┃auth_success┃auth_failed┃cancelled┃revoked
type
enum

The type for mandate which was requested

Allowed: AMEND
- bank_details
object

Details with the bank

shared_with_bank
string

Bank Email ID

bank_name
string

Name of the Bank

state
enum

State with the bank

Allowed: SIGNED┃TRANSFER_FAILED┃TRANSFER_SUCCESS┃REJECT_SPO_BANK┃ACCEPTED_SPO_BANK┃AWAITING_ACK┃NACK_RECEIVED┃ACK_RECEIVED┃AWAITING_RES┃REGISTER_FAILED┃REGISTER_SUCCESS┃REVOKED
- sub_user
object

Sub user details, if the request was containing sub-user identifier.

id
string

Sub-user id

identifier_value
string

Identifier used for sub-user

identifier
enum

Type of identifier

Allowed: EMAIL┃MOBILE
email_id
string

Sub-user's email id if registered.

mobile
string

Sub-user's mobile number

created_at
date-time

Timestamp of when the request was create at

mode
enum

Authentication mode for mandate.

Allowed: API┃ESIGN┃PHYSICAL
- service_provider_details
object
service_provider_name
string

Name of service provider

service_provider_utility_code
string

Utility code for the given corporate config

authentication_url
string

If include_authentication_url was true in the request object then this object is populated.

application/json
object
Single line description
Field
Type
Description
details
string

Details about the exception. Usually contains the exception id for reference.

code
string

Error code

message
string

Description of the error

Was this page helpful?