Submitting RFIs

For situations when Verto needs additional information about a transaction before proceeding, we will send you a webhook notification requesting for further information. You can then proceed to provide the additional information required.

This will be the flow:

  • Verto sends a webhook notification informing you that additional information is required.
  • Submit the required information and documents (invoice).
  • Confirm document submission.

Request for additional information (RFI) webhook notification

Once additional information is required, you will get a webhook notification with the subState = rfi_required.

{
  "payload": {
    "id": 47987,
    "amount": "234017.00",
    "reference": "TO-12022025-4367",
    "state": "requested",
    "subState": "rfi_required",
    "currency": "NGN",
    "paymentId": null,
    "type": "iban_to_wallet",
    "account": {
      "id": 44197,
      "accountNumber": "12345678919",
      "bankName": null,
      "beneficiaryAddress": null,
      "beneficiaryCity": null,
      "beneficiaryCompanyName": "Test",
      "beneficiaryCountryCode": null,
      "beneficiaryEntityType": "company",
      "beneficiaryPostcode": null,
      "beneficiaryEmail": null,
      "country": null,
      "reference": "RP-12022025-406",
      "beneficiaryFirstName": null,
      "beneficiaryLastName": null,
      "nationalId": "ACCTY67",
      "currency": "NGN",
      "clientReference": null,
      "status": "approved"
    },
    "walletId": 28993,
    "clientReference": "null:testsubmorning2:Test:12345678919:ACCTY67",
    "bankingPartner": "Paga",
    "receivingAccount": "9079135413",
    "createdDate": "2025-02-12T06:23:55.000Z",
    "completedDate": null,
    "archivedDate": null,
    "companyId": "4574"
  }
}

You should then proceed to submit the required information.

The subState = null when no RFI is required.

Submit additional information with documents

You can then proceed to submit additional information using the transaction reference of the transaction you got the notification for.

For now only businesses are supported, support for individuals will be rolled out soon.

POST - https://api-payment-sandbox.vertofx.com/payments/{:TO-reference}/documents 
{
    "fileName": "test.png",
    "rfiData": {
        "paymentPurposeId": 27,
        "senderData": {
            "companyEstablishmentDate": "1999-12-22",
            "companyAddress": {
                "addressLine1": "KILLER QUEEN st",
                "city": "PUNE",
                "state": "MH",
                "country": "India",
                "postCode": "330004"
            },
            "companyCountryOfTax": "India",
            "companyIncorporationNumber": "wjkebr5k32jb4k"
        }
    }
}
{
  "link": "string", // An unique link valid for 10 minutes on which will be used to upload the file using the supported formats
  "key": "string" // An unique key that can used in subsequent API calls to link to the uploaded supporting document.

}

{
    "link": "https://s3.eu-central-1.amazonaws.com/private-dev-files.vertofx.dev/p2/client-uploads/payments/1201/rfi_documents/TO-18112025-B4193/test.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=ASIA5QQC6I6LF6KGYDIF%2F20251118%2Feu-central-1%2Fs3%2Faws4_request&X-Amz-Date=20251118T153749Z&X-Amz-Expires=600&X-Amz-Security-Token=IQoJb3JpZ2luX2VjEAAaDGV1LWNlbnRyYWwtMSJHMEUCIHXsOPzwwTOU%2FJxCC01xSCHu5cA64MGC8xgUn%2FA04WB%2FAiEA%2FGog2cJypihxwfxRtqE1j7kjHA983BBvGRYMuT2RrgkqmQMIyf%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FARABGgw5Mjg3OTI4NTY0NzAiDOG0h%2FZTyX79hGmkQCrtArKPySwjZoiPh1Zt8baMgmH0mq5Q4b9%2FzRy8%2FK97tykUObSs9%2FK6p6EPpB%2BjTFxgQN8754bezpSp4jfovdD8j7%2FFMEcH%2Fr4LdUpOfWoLvq9oXxLqZ2%2BLO4TEYrhRzLK1OxVXAK3egY4WCswJX7XLBn1To9SZWiSg6Ee6sNntf6fzjnhoPCCUgsHh60sMJT%2Byz6HJV%2FGO90qvRt4JV8LDz%2F2UwHMfRFNAqiFAmhknEbU%2Bkt93TvyBN32N0%2Fawj5vnxE35ba4nsFypfO5pHGOp7FIRjJBYWKd1niDfm9mYf7HVqzlEgRrFwXllXrix%2FsKkwxKUHXLVxb2lAuSHOwdTlSTC0pAjF9IHvu0yoPVAzKCxyvnASinI5iVaeswR4kskyQoNICdZjNefwrSByuK4rOnCUCYhFYY%2FeLoK6%2FHaMvOKbbgtOx%2BGSavfcS7kggwUGxJzmrJx%2BjtVwEmAv3swtwjScPsDvgXz1IL0TRqKMMil8sgGOp0Bdia7Gc14mOdDncbi8cOi2i0rwvZMVJR9xWjI62qwTqC0nEZw8%2BanF4RDjVrjwbnk2FEH5YTz3NSP7dZM0Daewb09Eda4gAUnJaEqOJPny2Ahs6JKh4tEGGtz79w%2B5DroJeFnHxqyTCvPqQ8%2Ft70IjeRGGWH6RbR6zZvpna9UdVRvhjfaUmQA6Asp%2FZydGZs%2FASBJTN%2FEIzbQAvY01A%3D%3D&X-Amz-Signature=8fb0311706c547c3bc34d8e0d7578bf1d4fbd841bba4ffc47db5488db1f1001a&X-Amz-SignedHeaders=host&x-amz-checksum-crc32=AAAAAA%3D%3D&x-amz-sdk-checksum-algorithm=CRC32&x-id=PutObject",
    "key": "p2/client-uploads/payments/1201/rfi_documents/TO-18112025-B4193/test.png"
}
Request dataDefinitionComment
fileNameThe name of the document you’re uploadingRequired
rfiData.paymentPurposeThe purpose of payment. You can get all the purposes here.Required
rfiData.senderData.companyEstablishmentDateThe date of creation of the sending companyOptional
rfiData.senderData.companyAddressThe address of the sending companyOptional
rfiData.companyCountryOfTaxThe country of tax of the sending companyOptional
rfiData.companyIncorporationNumberThe incorporation number of the sending companyOptional

Notes

  • You don’t need to resubmit the company information for a sender who has sent funds previously.
  • Uploading multiple documents per payment is supported.
  • Newly provided information for a payment will update previously supplied information.

Confirm document submission

You can then proceed to use the link in the submit document API response to submit the document/invoice.

PUT <link> 

Once the submission is successful, you will receive a webhook with subState = rfi_accepted. The goal of this notification is to inform you that the details submitted have been accepted.

Notes

  • Supported formats: PDF, JPG, PNG and JPEG.
  • We will reach out to you via email for information/documents that need resubmission.

Managing transaction status

There may be situations where you get state = completed while subState = rfi_required, please only proceed to provide your customer value when state = completedand subState = rfi_accepted.