Receive transfer result notificationSignature required

POST /undefined

WorldFirst notifies you of the fund transfer results with this interface.

You can set up the URL for receiving transfer notifications by specifying the transferToDetail.transferNotifyUrl parameter when calling the createTransfer API.

You need to acknowledge the reception of the notification; Otherwise, WorldFirst takes the notification delivery as unsuccessful and retries sending it up to 7 times. For more details, refer to the Result processing logic section. 

Structure

A message consists of a header and body.

Request header parameters

Field

Required

Sample

Description

Client-Id

Yes

Client-Id: *****

For detailed field descriptions, see API Overview.

Signature

Yes

Signature: algorithm=RSA256, keyVersion=2, signature=*****

Content-Type

Yes

Content-Type: application/json; charset=UTF-8

Request-Time

Yes

Request-Time: 2019-04-04T12:08:56+08:00

Request parameters

transferRequestId String  REQUIRED

The unique ID assigned by the Partner to identify a transfer request.

More information about this field

  • This field is an API idempotency field.For details about API idempotency, see the Idempotency chapter.
  • Maximum length: 64 characters

transferId String  REQUIRED

The unique ID assigned by WorldFirst to identify a transfer.

More information about this field

  • Maximum length: 64 characters

businessSceneCode String  REQUIRED

The code that represents the transfer business scenario.

Valid values:

  • MULTI_ACCOUNT_TRANSFER:transfer between your primary account and subaccounts.
  • ATOMIC_TRANSFER:transfer between WF accounts

transferResult TransferResult object REQUIRED

Indicates the result of the transfer request.

Show child parameters

transferFinishTime DateTime  REQUIRED

Indicates the finishing time of a transfer.

More information about this field

  • The value follows the ISO 8601 standard format. For example, "2019-11-27T12:01:01+08:00".

transferFromDetail TransferFromDetail object REQUIRED

Transfer details submitted by the payer.

Show child parameters

transferToDetail TransferToDetail object REQUIRED

Transfer details for the beneficiary.

Show child parameters

Response parameters

result Result object REQUIRED

Indicates whether this API is called successfully.

Show child parameters
API Explorer

Request

Case
Transfer between WF accounts
Request Body

Response

Response Body

Result processing logic

The parameter transferResult.resultCode indicates the result of the transfer. For more details, refer to the transferResult.resultCode section.

After receiving the notification, you need to send a response message to acknowledge the receipt of the notification.

Make sure you properly sign the message before sending the response. For details, refer to the Sign a request and validate the signature chapter.

For more details on the response header, refer to the API overview chapter.

The response body has the following fixed value:

Sample Code

In the absense of an ackowledgement reponse from the Partner, WorldFirst will resend the result.

The following policy represents how WorldFirst makes retry attempts:

  • WorldFirst retries notifications 7 times.
  • Intervals between notifications: 2m, 10m, 10m, 1h, 2h, 6h, and 15h.

result.resultCode

CodeValueMessageFurther action
SUCCESSSSuccess

The transfer is created successfully and being processed. Call the inquiryTransfer API for the transfer result.

PARAM_ILLEGALFIllegal 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_FAILFA 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_EXCEPTIONUAPI failed due to unknown reason.

The service might be down, retry later. If the issue persists, contact our Technical Support Team.

REQUEST_TRAFFIC_EXCEED_LIMITUThe request traffic exceeds the limit.

Call the interface again to resolve the issue. If the issue persists, contact our Technical Support Team.

INVALID_APIFThe called API is invalid or not active.

Check whether the correct API is being called.

INVALID_CLIENTFThe client is invalid.

The Client ID does not exist or is invalid.

INVALID_SIGNATUREFThe signature is invalid.

Make sure the request is properly signed with a valid signature.

METHOD_NOT_SUPPORTEDFThe server does not implement the requested HTTP method.

Ensure the HTTP method is POST.

transferResult.resultCode

CodeValueMessageFurther action
SUCCESSSSuccess
PROCESS_FAILFA 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.

USER_NOT_EXISTFThe user does not exist.

Retry with the correct user information.

USER_ACCOUNT_ABNORMALFThe user account status is abnormal.

Retry with a different user. If the issue persists, contact our Technical Support Team for more details.

AMOUNT_EXCEED_LIMITFThe amount exceeds the limit.

Make sure the amount submitted is correct and retry.

RISK_REJECTFThe transfer is rejected for risk control reasons.

Prompt the user that the request is rejected because the risk control failed.

ORDER_IS_CLOSEDFThe order is closed.

Retry with another transfer order.

ORDER_IS_REVERSEDFThe order is reversed.

Retry with another transfer order.

CARD_INFO_NOT_MATCHFThe card information does not match.

Retry with another transfer order.

BALANCE_NOT_ENOUGHFBalance is not enough.

Make sure the balance is sufficient and retry.

@2024 WorldFirst