Transaction RFI Examples

This article walks through how a client responds to RFIs. For a list of RFI types and definitions, see Transaction RFI Types.

Example RFI flow

Step 1: Nium sends a Webhook Event

The client is expected to consume this event to figure out if there is any change in thecomplianceStatus of the transaction.

Step 2: Client Fetches 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: Client reviews the rfiDetails field

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 and rfiStatus) help identify the RFIs.
  • descriptionand remarks parameters help identify why an RFI was raised.
  • transactionEntityType parameter helps identify who the RFI is for - DEBTOR or CREDITOR.
  • 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 and 42306dfe-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 returning RFI_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-f47f7f72b9a0the information should be a piece of data; no documentation is required. This is detailed in the type field with the response returning data.

Data Based RFIs

ADDRESS

Request Body for ADDRESS in the Respond to Transactions RFI request

{
    "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"
        }
    ]
}

ADDRESS RFI details in the Fetch Transactions 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": "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"
        }
      ]
    }
  ]
}

BANK_NAME

Request Body for BANK_NAME in the Respond to Transactions RFI request

{
    "rfiResponseRequest": [
        {
            "rfiResponseInfo": {
                "bankName": "State Bank of Mauritius"
            },
            "rfiHashId": "52a3c254-0efd-444d-a144-f0075eca0722"
        }
    ]
}

BANK_NAME RFI details in the Fetch Transactions response

Similar response structures can be used for other RFIs like:

  • FIRST_NAME
  • MIDDLE_NAME
  • LAST_NAME
  • INDUSTRY_TYPE
  • IS_PEP
  • NATIONALITY
{
  "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"
        }
      ]
    }
  ]
}

DATE_OF_BIRTH

Request Body for DATE_OF_BIRTH in the Respond to Transactions RFI request

{
    "rfiResponseRequest": [
        {
            "rfiResponseInfo": {
                "dateOfBirth": "1986-10-24"
            },
            "rfiHashId": "52a3c254-0efd-444d-a144-f0075eca0722"
        }
    ]
}

DATE_OF_BIRTH RFI Details in the Fetch Transactions response

{
  "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"
        }
      ]
    }
  ]
}

EMPLOYMENT_STATUS

Request Body for EMPLOYMENT_STATUS in the Respond to Transactions RFI request

{
    "rfiResponseRequest": [
        {
            "rfiResponseInfo": {
                "employmentStatus": "Salaried"
            },
            "rfiHashId": "52a3c254-0efd-444d-a144-f0075eca0722"
        }
    ]
}

EMPLOYMENT_STATUS RFI Details in the Fetch Transactions response

Similar response structures can be used for other RFIs like:

  • POSITION
  • REASON_FOR_TRANSFER
  • REMITTER_BENEFICIARY_RELATIONSHIP
  • SOURCE_OF_FUNDS
  • THIRD_PARTY_FUNDING
{
  "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"
        }
      ]
    }
  ]
}

TM_OTHER_DATA

Request Body for OTHER_DATA in the Respond to Transactions RFI request

{
    "rfiResponseRequest": [
        {
            "rfiResponseInfo": {
                "additionalInfo": {
                  "otherData": "Our organisation is a subsidiary of the US Govt. Agency"
            },
            "rfiHashId": "52a3c254-0efd-444d-a144-f0075eca0722"
        }
    ]
}

TM_OTHER_DATA RFI Details in the Fetch Transactions response

{
  "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"
        }
      ]
    }
  ]
}

Document based RFIs

DRIVER_LICENCE

Request Body for DRIVER_LICENCE in the Respond to Transactions RFI request

{
    "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"
        }
    ]
}

DRIVER_LICENCE RFI Details in the Fetch Transactions response

A similar response structure can also be used for other RFIs, including:

  • PASSPORT
  • SALARY_STATEMENT
  • BANK_STATEMENT
{
  "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"
        }
      ]
    }
  ]
}

INVOICE

Request Body for INVOICE in the Respond to Transactions RFI request

{
    "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"
        }
    ]
}

INVOICE RFI Details in the Fetch Transactions response

Similar response structure can be used for other RFIs like APPLICANT_AUTHORITY_LETTER, GOVERNMENT_DOCUMENTand PERSONAL_IMAGE.

{
  "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"
        }
      ]
    }
  ]
}

OTHERS

Request Body for OTHERS in the Respond to Transactions RFI request

{
    "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"
        }
    ]
}

OTHERS RFI Details in the Fetch Transactions response

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"
        }
      ]
    }
  ]
}