NRE Payouts — KYC / KYB

Field requirements for creating NRE customers (Non-Resident External account holders). NRE customers are processed through a dedicated NRE-compliant payouts rail; the standard crypto-offramp and trade-finance flows cannot handle NRE accounts.

NRE customers are processed through a dedicated NRE-compliant payouts rail. Use the create-customer flow with purpose: 'nre'. The grouped tables below list every accepted field for each supported (type, party) combination. Send only the fields relevant to your combination; unknown or unrelated fields are ignored.

Individual senders carry the full identity-document, contact, and address payload for compliance. Front + back scans of the chosen identity document are optional at create time — uploaded separately via POST /uploadCustomerDocument and referenced on createCustomer via the documents map, or attached later via updateCustomer. The offramp partner ultimately requires them for KYC, so a payout attempted before scans are attached will be rejected by the partner with the field-level reason surfaced as failure_reason on the payout. Individual receivers can be created with just nationality — names, contact fields, addresses, and relation_code / bank_account_type_code are all optional and default to family / savings when omitted; the bank's branch address is resolved from the IFSC at payout-initiation time. Business customers are not permitted on the NRE flow at all.

How NRE differs

NRE accounts require a dedicated NRE-compliant payouts rail. The standard crypto-offramp and trade-finance flows cannot handle NRE customers — the payouts service routes create-customer requests with purpose='nre' to the appropriate NRE rail automatically.

Individual — sender

Apply when type = 'individual' and party = 'sender'. The sender is the natural person initiating the NRE payout — the partner uses these fields for KYC and compliance.

FieldTypeRequiredDescription
nationalitystring (ISO 3166-1 alpha-2)YesTwo-letter country code for the sender's nationality (e.g. US, AE).
first_namestringYesSender's legal first name as it appears on the identity document.
middle_namestringNoSender's middle name if present on the identity document.
last_namestringYesSender's legal last name as it appears on the identity document.
date_of_birthstring (YYYY-MM-DD)YesSender's date of birth in ISO 8601 format.
mobile_numberstringYesSender's mobile number without the country/dial code (e.g. 9876543210).
isd_codestringYesInternational Subscriber Dialing code for the sender's mobile number (e.g. +91, +971).
emailstringNoSender's email address. Optional — not required by the NRE payout rail.
present_addressobjectYesSender's current residential address. Shape: { address_line, city, country_code, address_type? }.
present_address.address_linestringYesStreet address line.
present_address.citystringYesCity or town name.
present_address.country_codestring (ISO 3166-1 alpha-2)YesTwo-letter country code.
present_address.address_typepresent | permanentNoOptional address-type qualifier passed through to the remittance partner. Defaults to 'present' on the present_address slot and 'permanent' on the permanent_address slot.
permanent_addressobjectNoSender's permanent address. Same shape as present_address. Defaults to present_address when omitted.
identity_document_typepassport | localid | emirates_id | national_id | driving_licenseYesType of identity document used to identify the sender for the NRE payout.
identity_document_numberstringYesDocument number that corresponds to the chosen identity_document_type.
identity_document_issued_onstring (YYYY-MM-DD)NoDate the identity document was issued.
identity_document_valid_throughstring (YYYY-MM-DD)NoDate the identity document expires.
identity_document_issued_country_codestring (ISO 3166-1 alpha-2)NoTwo-letter country code of the country that issued the identity document.
identity_document_image_frontstring (document_id)NoOptional. document_id returned by POST /uploadCustomerDocument for the front-side scan of the sender's identity document. Submitted via the documents map: { identity_document_image_front: <document_id> }. Allowed file types: PDF, JPEG, PNG (max 4 MB). The offramp partner ultimately requires this for KYC; you may onboard the customer without it and attach later via updateCustomer.
identity_document_image_backstring (document_id)NoOptional. document_id returned by POST /uploadCustomerDocument for the back-side scan of the sender's identity document. Submitted via the documents map: { identity_document_image_back: <document_id> }. Allowed file types: PDF, JPEG, PNG (max 4 MB). For document types with no back side (e.g. passport), upload the same scan twice.

Individual — receiver

Apply when type = 'individual' and party = 'receiver'. The receiver is the settlement beneficiary — only nationality is required because the partner does not run KYC against the receiver record (the per-payout beneficiary name is taken from the payout body itself).

FieldTypeRequiredDescription
nationalitystring (ISO 3166-1 alpha-2)YesTwo-letter country code for the receiver's nationality (e.g. IN).
first_namestringNoReceiver's legal first name. Optional — supplied for record-keeping; the payout-time beneficiary_name is what the partner uses.
middle_namestringNoReceiver's middle name.
last_namestringNoReceiver's legal last name.
date_of_birthstring (YYYY-MM-DD)NoReceiver's date of birth in ISO 8601 format.
mobile_numberstringNoReceiver's mobile number without the country/dial code. Used for settlement notifications when present.
isd_codestringNoInternational Subscriber Dialing code for the receiver's mobile number (e.g. +91). Required when mobile_number is provided.
emailstringNoReceiver's email address. Optional — not consumed by the NRE rail.
present_addressobjectNoReceiver's current residential address. Shape: { address_line, city, country_code, address_type? }. When omitted, the bank's branch address is fetched automatically from the IFSC code at payout-initiation time (via the razorpay IFSC API).
present_address.address_linestringNoStreet address line. Required when present_address is supplied.
present_address.citystringNoCity or town name. Required when present_address is supplied.
present_address.country_codestring (ISO 3166-1 alpha-2)NoTwo-letter country code. Required when present_address is supplied.
present_address.address_typepresent | permanentNoOptional address-type qualifier passed through to the remittance partner. Defaults to 'present' on the present_address slot and 'permanent' on the permanent_address slot.
permanent_addressobjectNoReceiver's permanent address. Same shape as present_address. Defaults to present_address when omitted.
relation_codestringNoRelationship of the receiver to the sender. Defaults to 'family' when omitted. Allowed canonical values: family. Partner-specific numeric codes are mapped to the canonical name at the integration boundary, so merchants only need to pass the canonical value.
bank_account_type_codesavings | currentNoType of the receiver's bank account that funds will be paid out to. Defaults to 'savings' when omitted.

Business — sender

Not supported

Business customers are not permitted on the NRE flow. The createCustomer API rejects type = 'business' + purpose = 'nre' with INVALID_CUSTOMER_COMBINATION. NRE payouts only support natural-person senders.

Business — receiver

Not supported

Business customers are not permitted on the NRE flow. The createCustomer API rejects type = 'business' + purpose = 'nre' with INVALID_CUSTOMER_COMBINATION. NRE payouts only support natural-person receivers.