RFI Examples
This guide walks through how clients respond to RFIs. For a list of RFI types and definitions, see Transaction RFI Types.
Step 1: Review webhook
The client is expected to consume the Transaction Compliance Status event to figure out if there is any change in thecomplianceStatus
of the transaction.
Step 2: Fetch the transaction
The client is expected to call the Get Transaction API after receiving the webhook event.
Next, the client must review the complianceStatus
field of the event to figure out the current compliance status of the transaction.
If complianceStatus
returns RFI_REQUESTED
, then the client should consume the information contained in rfiDetails
field in the Fetch Transaction response.
Step 3: Review rfiDetails
The rfiDetails
field is an array of objects, each containing the details of the RFI request. The client should review the details inside these objects:
- The RFI's unique identifiers (
rfiHashId
,rfiId
andrfiStatus
) help identify the RFIs. description
andremarks
parameters help identify why an RFI was raised.transactionEntityType
parameter helps identify who the RFI is for -DEBTOR
orCREDITOR
.- Use the
type
,documentType
&requiredData
field to respond to the RFI.
Example Response
{
"rfiDetails": [
{
"rfiHashId": "9d6676fb-e6b9-435f-9c4b-f47f7f72b9a0",
"rfiId": "ff18e4f5-0eb2-4eb7-a57b-2e6fe7efd975",
"rfiStatus": "RFI_REQUESTED",
"description": "address",
"mandatory": true,
"type": "data",
"documentType": "NA",
"remarks": "Please provide the remitter's address as we couldn't locate the one submitted during the payout request",
"transactionEntityType": "DEBTOR",
"requiredData": [
{
"label": "Post Code",
"value": "postcode",
"type": "data"
},
{
"label": "Country",
"value": "country",
"type": "data"
},
{
"label": "State",
"value": "state",
"type": "data"
},
{
"label": "City",
"value": "city",
"type": "data"
},
{
"label": "Address Line2",
"value": "addressLine2",
"type": "data"
},
{
"label": "Address Line1",
"value": "addressLine1",
"type": "data"
}
]
},
{
"rfiHashId": "42306dfe-32e8-49db-b33a-ba3718be1b85",
"rfiId": "ff18e4f5-0eb2-4eb7-a57b-2e6fe7efd975",
"rfiStatus": "RFI_REQUESTED",
"description": "bankName",
"mandatory": true,
"type": "data",
"documentType": "NA",
"remarks": "Please provide the name of the remitter's bank",
"transactionEntityType": "DEBTOR",
"requiredData": [
{
"label": "Bank Name",
"value": "bankName",
"type": "data"
}
]
},
{
"rfiHashId": "29eb2280-a52a-418b-8749-bdc29f9c0623",
"rfiId": "ff18e4f5-0eb2-4eb7-a57b-2e6fe7efd975",
"rfiStatus": "RFI_RESPONDED",
"description": "dateOfBirth",
"mandatory": true,
"type": "data",
"documentType": "NA",
"remarks": "Please provide the date of birth for the remitter since the dob submitted earlier doesn't match with the govt. records",
"transactionEntityType": "DEBTOR",
"requiredData": [
{
"label": "Date Of Birth",
"value": "dateOfBirth",
"type": "data"
}
]
}
]
}
Based on the above Get Transaction response snippet, we can identify that,
- The RFIs with the following unique IDs needs a response:
rfiId
=ff18e4f5-0eb2-4eb7-a57b-2e6fe7efd975
rfiHashId
=9d6676fb-e6b9-435f-9c4b-f47f7f72b9a0
and42306dfe-32e8-49db-b33a-ba3718be1b85
rfiStatus
=RFI_REQUESTED
- The RFIs with the following unique IDs have already been responded to and doesn't need further action from the client. This is detailed in the
rfiStatus
field with the response returningRFI_RESPONDED
.rfiId
=ff18e4f5-0eb2-4eb7-a57b-2e6fe7efd975
rfiHashId
=29eb2280-a52a-418b-8749-bdc29f9c0623
- The RFI with
rfiHashId
=9d6676fb-e6b9-435f-9c4b-f47f7f72b9a0
has been raised to collect the debtor's address (remitter in case of a Payout Transaction) because the compliance agent found an inconsistency. - While responding to the RFI with
rfiId
=ff18e4f5-0eb2-4eb7-a57b-2e6fe7efd975
&rfiHashId
=9d6676fb-e6b9-435f-9c4b-f47f7f72b9a0
the information should be a piece of data; no documentation is required. This is detailed in thetype
field with the response returningdata
.
Data Based RFIs
RFI description | Required field |
---|---|
address | Respond to RFI |
bankName | Respond to RFI |
dateOfBirth | Respond to RFI |
employmentStatus | Respond to RFI |
otherData | Respond to RFI |
ADDRESS
Response with RFI
{
"rfiDetails": [
{
"rfiHashId": "9d6676fb-e6b9-435f-9c4b-f47f7f72b9a0",
"rfiId": "ff18e4f5-0eb2-4eb7-a57b-2e6fe7efd975",
"rfiStatus": "RFI_REQUESTED",
"description": "address",
"mandatory": true,
"type": "data",
"documentType": "NA",
"remarks": "r",
"transactionEntityType": "DEBTOR",
"requiredData": [
{
"label": "Post Code",
"value": "postcode",
"type": "data"
},
{
"label": "Country",
"value": "country",
"type": "data"
},
{
"label": "State",
"value": "state",
"type": "data"
},
{
"label": "City",
"value": "city",
"type": "data"
},
{
"label": "Address Line2",
"value": "addressLine2",
"type": "data"
},
{
"label": "Address Line1",
"value": "addressLine1",
"type": "data"
}
]
}
]
}
Request to answer RFI
{
"rfiResponseRequest": [
{
"rfiResponseInfo": {
"address":{
"addressLine1": "High Street 101, 56th Avenue",
"addressLine2": "Hyung County",
"state":null,
"city": "Singapore",
"country": "SG",
"postcode": "28046"
},
"rfiHashId": "52a3c254-0efd-444d-a144-f0075eca0722"
}
]
}
BANK_NAME
Similar response structures can be used for other RFIs like:
FIRST_NAME
MIDDLE_NAME
LAST_NAME
INDUSTRY_TYPE
IS_PEP
NATIONALITY
Response with RFI
{
"rfiDetails": [
{
"rfiHashId": "42306dfe-32e8-49db-b33a-ba3718be1b85",
"rfiId": "ff18e4f5-0eb2-4eb7-a57b-2e6fe7efd975",
"rfiStatus": "RFI_REQUESTED",
"description": "bankName",
"mandatory": true,
"type": "data",
"documentType": "NA",
"remarks": "r",
"transactionEntityType": "DEBTOR",
"requiredData": [
{
"label": "Bank Name",
"value": "bankName",
"type": "data"
}
]
}
]
}
Request to answer RFI
{
"rfiResponseRequest": [
{
"rfiResponseInfo": {
"bankName": "State Bank of Mauritius"
},
"rfiHashId": "52a3c254-0efd-444d-a144-f0075eca0722"
}
]
}
DATE_OF_BIRTH
Response with RFI
{
"rfiDetails": [
{
"rfiHashId": "29eb2280-a52a-418b-8749-bdc29f9c0623",
"rfiId": "ff18e4f5-0eb2-4eb7-a57b-2e6fe7efd975",
"rfiStatus": "RFI_REQUESTED",
"description": "dateOfBirth",
"mandatory": true,
"type": "data",
"documentType": "NA",
"remarks": "r",
"transactionEntityType": "DEBTOR",
"requiredData": [
{
"label": "Date Of Birth",
"value": "dateOfBirth",
"type": "data"
}
]
}
]
}
Request to answer RFI
{
"rfiResponseRequest": [
{
"rfiResponseInfo": {
"dateOfBirth": "1986-10-24"
},
"rfiHashId": "52a3c254-0efd-444d-a144-f0075eca0722"
}
]
}
EMPLOYMENT_STATUS
Similar response structures can be used for other RFIs like:
POSITION
REASON_FOR_TRANSFER
REMITTER_BENEFICIARY_RELATIONSHIP
SOURCE_OF_FUNDS
THIRD_PARTY_FUNDING
Response with RFI
{
"rfiDetails": [
{
"rfiHashId": "2bd9f61e-444e-4f9b-ab38-a32589f5a62c",
"rfiId": "ff18e4f5-0eb2-4eb7-a57b-2e6fe7efd975",
"rfiStatus": "RFI_REQUESTED",
"description": "employmentStatus",
"mandatory": true,
"type": "data",
"documentType": "NA",
"remarks": "r",
"transactionEntityType": "DEBTOR",
"requiredData": [
{
"label": "Employment Status",
"value": "employmentStatus",
"type": "data"
}
]
}
]
}
Request to answer RFI
{
"rfiResponseRequest": [
{
"rfiResponseInfo": {
"employmentStatus": "Salaried"
},
"rfiHashId": "52a3c254-0efd-444d-a144-f0075eca0722"
}
]
}
TM_OTHER_DATA
Response with RFI
{
"rfiDetails": [
{
"rfiHashId": "2bd9f61e-444e-4f9b-ab38-a32589f5a62c",
"rfiId": "ff18e4f5-0eb2-4eb7-a57b-2e6fe7efd975",
"rfiStatus": "RFI_REQUESTED",
"description": "otherData",
"mandatory": true,
"type": "data",
"documentType": "NA",
"remarks": "Please mention the relation of your organisation with the US Govt. Agency",
"transactionEntityType": "DEBTOR",
"requiredData": [
{
"label": "Other Data",
"value": "otherData",
"type": "data"
}
]
}
]
}
Request to answer RFI
{
"rfiResponseRequest": [
{
"rfiResponseInfo": {
"additionalInfo": {
"otherData": "Our organisation is a subsidiary of the US Govt. Agency"
},
"rfiHashId": "52a3c254-0efd-444d-a144-f0075eca0722"
}
]
}
Document based RFIs
RFI description | Request example |
---|---|
driverLicence | Respond to RFI |
Invoice | Respond to RFI |
others | Respond to RFI |
DRIVER_LICENCE
A similar response structure can also be used for other RFIs, including:
PASSPORT
SALARY_STATEMENT
BANK_STATEMENT
Response with RFI
{
"rfiDetails": [
{
"rfiHashId": "2ee641b9-1a58-440b-b25b-a01e7e09c7c2",
"rfiId": "ff18e4f5-0eb2-4eb7-a57b-2e6fe7efd975",
"rfiStatus": "RFI_REQUESTED",
"description": "driverLicence",
"mandatory": true,
"type": "document",
"documentType": "POA",
"remarks": "r",
"transactionEntityType": "DEBTOR",
"requiredData": [
{
"label": "Driving Licence Document",
"value": "identificationDocument",
"type": "document"
},
{
"label": "Driving Licence Issuing Date",
"value": "identificationIssuingDate",
"type": "data"
},
{
"label": "Issuing Authority",
"value": "identificationIssuingAuthority",
"type": "data"
},
{
"label": "Driving Licence Number",
"value": "identificationValue",
"type": "data"
}
]
}
]
}
Request to answer RFI
{
"rfiResponseRequest": [
{
"rfiResponseInfo": {
identificationDoc: {
"identificationType": "DRIVER_LICENCE",
"identificationValue": "DL2194381",
"identificationIssuanceAuthority": "ACT Road Users Services",
"identificationIssuingDate": "2029-10-29",
"identificationDocument": [
{
"fileName": "Driver's Licence Front.jpg",
"fileType": "image/jpg",
"document": "iVBORw0KGgoAAAANSUhEUgAAAAgAAAAIAQMAAAD+wSzIAAAABlBMVEX///+/v7+jQ3Y5AAAADklEQVQI12P4AIX8EAgALgAD/aNpbtEAAAAASUVORK5CYII"
},
{
"fileName": "Driver's Licence Back.jpg",
"fileType": "image/jpg",
"document": "iVBORw0KGgoAAAANSUhEUgAAAAgAAAAIAQMAAAD+wSzIAAAABlBMVEX///+/v7+jQ3Y5AAAADklEQVQI12P4AIX8EAgALgAD/aNpbtEAAAAASUVORK5CYII"
}
]
},
"rfiHashId": "52a3c254-0efd-444d-a144-f0075eca0722"
}
]
}
INVOICE
Similar response structure can be used for other RFIs like:
APPLICANT_AUTHORITY_LETTER
GOVERNMENT_DOCUMENT
PERSONAL_IMAGE
Response with RFI
{
"rfiDetails": [
{
"rfiHashId": "5bbb5e72-151a-4998-b76e-4f210db22c3c",
"rfiId": "ff18e4f5-0eb2-4eb7-a57b-2e6fe7efd975",
"rfiStatus": "RFI_REQUESTED",
"description": "Invoice",
"mandatory": true,
"type": "document",
"documentType": "NA",
"remarks": "Please provide the copy of the Invoice not more than 90 days old",
"transactionEntityType": "DEBTOR",
"requiredData": [
{
"label": "Invoice",
"value": "identificationDocument",
"type": "document"
}
]
}
]
}
Request to answer RFI
{
"rfiResponseRequest": [
{
"rfiResponseInfo": {
identificationDoc: {
"identificationType": "INVOICE",
"identificationDocument": [
{
"fileName": "Invoice-Page1.jpg",
"fileType": "image/jpg",
"document": "iVBORw0KGgoAAAANSUhEUgAAAAgAAAAIAQMAAAD+wSzIAAAABlBMVEX///+/v7+jQ3Y5AAAADklEQVQI12P4AIX8EAgALgAD/aNpbtEAAAAASUVORK5CYII"
},
{
"fileName": "Invoice-Page2.jpg",
"fileType": "image/jpg",
"document": "iVBORw0KGgoAAAANSUhEUgAAAAgAAAAIAQMAAAD+wSzIAAAABlBMVEX///+/v7+jQ3Y5AAAADklEQVQI12P4AIX8EAgALgAD/aNpbtEAAAAASUVORK5CYII"
},
{
"fileName": "Invoice-Page3.jpg",
"fileType": "image/jpg",
"document": "iVBORw0KGgoAAAANSUhEUgAAAAgAAAAIAQMAAAD+wSzIAAAABlBMVEX///+/v7+jQ3Y5AAAADklEQVQI12P4AIX8EAgALgAD/aNpbtEAAAAASUVORK5CYII"
}
]
},
"rfiHashId": "52a3c254-0efd-444d-a144-f0075eca0722"
}
]
}
OTHERS
Response with RFI
Similar response structure can be used for other RFIs like APPLICANT_AUTHORITY_LETTER
{
"rfiDetails": [
{
"rfiHashId": "5bbb5e72-151a-4998-b76e-4f210db22c3c",
"rfiId": "ff18e4f5-0eb2-4eb7-a57b-2e6fe7efd975",
"rfiStatus": "RFI_REQUESTED",
"description": "others",
"mandatory": true,
"type": "document",
"documentType": "NA",
"remarks": "Please provide the copy of the CEO's Letters",
"transactionEntityType": "DEBTOR",
"requiredData": [
{
"label": "Other Document",
"value": "identificationDocument",
"type": "document"
}
]
}
]
}
Request to answer RFI
{
"rfiResponseRequest": [
{
"rfiResponseInfo": {
identificationDoc: {
"identificationType": "OTHERS",
"identificationDocument": [
{
"fileName": "CEOLetter-Page1.jpg",
"fileType": "image/jpg",
"document": "iVBORw0KGgoAAAANSUhEUgAAAAgAAAAIAQMAAAD+wSzIAAAABlBMVEX///+/v7+jQ3Y5AAAADklEQVQI12P4AIX8EAgALgAD/aNpbtEAAAAASUVORK5CYII"
},
{
"fileName": "CEOLetter-Page2.jpg",
"fileType": "image/jpg",
"document": "iVBORw0KGgoAAAANSUhEUgAAAAgAAAAIAQMAAAD+wSzIAAAABlBMVEX///+/v7+jQ3Y5AAAADklEQVQI12P4AIX8EAgALgAD/aNpbtEAAAAASUVORK5CYII"
},
{
"fileName": "CEOLetter-Page3.jpg",
"fileType": "image/jpg",
"document": "iVBORw0KGgoAAAANSUhEUgAAAAgAAAAIAQMAAAD+wSzIAAAABlBMVEX///+/v7+jQ3Y5AAAADklEQVQI12P4AIX8EAgALgAD/aNpbtEAAAAASUVORK5CYII"
}
]
},
"rfiHashId": "52a3c254-0efd-444d-a144-f0075eca0722"
}
]
}