Receive account balance notificationSignature required
After you have successfully prefunded your WF account, WorldFirst uses notifyVostro to notify you of the prefunding result.
Structure
A message consists of a header and body. The following sections are focused on the body structure. For the header structure, see:
Request parameters
fundingId String REQUIRED
The unique ID that is assigned by WorldFirst to identify a prefunding request.
More information about this field
- This field is an API idempotency field.You can use this parameter to perform idempotency control. For details about API idempotency, see the Idempotency chapter.
- Maximum length: 128 characters
balanceResult Result object REQUIRED
Indicates whether the prefunding process is successful.
payerBankAccount PayerBankAccount object REQUIRED
Indicates the payer's bank account information.
beneficiaryAccount BeneficiaryBankAccount object REQUIRED
Indicates the beneficiary's WorldFirst virtual account information.
balanceChangeAmount Amount object REQUIRED
Indicates the changes in the account balance, namely the amount of money added to your balance account.
balanceChangeTime DateTime
Indicates the time when the account balance changes, namely the time when you top up your account balance.
More information about this field
- The value follows the ISO 8601 standard format. For example, "2019-11-27T12:01:01+08:00".
remitInfo String
Additional information related to the prefunding request.
More information about this field
- Maximum length: 530 characters
Response parameters
result Result object REQUIRED
Indicates whether this API is called successfully.
Request
Response
Processing logic
WorldFirst sends you the result of the prefunding process by specifying the balanceResult.result
parameter in the request. For details, see the following balanceResult.resultCode
section. After receiving the result notification, you need to send a response to acknowledge the reception of the notification.
Note: You must sign the message before making the response. Take the following header codes as an example. For details, see the "Sign a request and validate the signature " chapter and the Response header chapter.
If you do not send the acknowledgment back toWorldFirst, WorldFirst retries to send the result by complying with the following attempt rules:
- WorldFirst retries notifications 7 times at most.
- Intervals between notifications: 2m, 10m, 10m, 1h, 2h, 6h, and 15h.
balanceResult.resultCode
Code | Value | Message | Further action |
---|---|---|---|
SUCCESS | S | Success | |
REFUND | S | Refund success | |
PROCESS_FAIL | F | A general business failure occurred. Do not retry. | Human intervention is usually needed. It is recommended that you contact our Technical Support Team to resolve the issue. |
result.resultCode
Code | Value | Message | Further action |
---|---|---|---|
SUCCESS | S | Success | |
PARAM_ILLEGAL | F | Illegal parameters exist. For example, a non-numeric input, or an invalid date. | Check and verify whether the request fields, including the header fields and body fields, are correct and valid. For details on the fields of each API, see the specific API Structure section. |
PROCESS_FAIL | F | A general business failure occurred. Do not retry. | Human intervention is usually needed. It is recommended that you contact our Technical Support Team to resolve the issue. |
UNKNOWN_EXCEPTION | U | API failed due to unknown reason. | The service might be down, retry later. If the issue persists, contact our Technical Support Team. |
INVALID_API | F | The called API is invalid or not active. | Check whether the correct API is being called. |
INVALID_CLIENT | F | The client is invalid. | The Client ID does not exist or is invalid. |
INVALID_SIGNATURE | F | The signature is invalid. | Make sure the request is properly signed with a valid signature. |
METHOD_NOT_SUPPORTED | F | The server does not implement the requested HTTP method. | Ensure the HTTP method is |
CONTRACT_CHECK_FAIL | F | The contract check has failed. | Contact our Technical Support Team to check the status of the API contract. Make sure it is still valid and try again. |