Retrieve a beneficiary templateSignature required
Before initializing a transfer, the Partner needs to create a beneficiary who is on the receiving end of the transfer.
To create a beneficiary, the Partner can call this API to obtain a beneficiary template.
Structure
A message consists of a header and body.
Request header
Request parameters
countryCode String CONDITIONAL
2-character ISO 3166 country/region code that represents the country/region where the bank locates.
This parameter is only NOT required when beneficiaryType is
RELATED_MERCHANT_ALIPAY_COMPANY_ACCOUNT.
More information:
- Maximum length: 2 characters
currency String CONDITIONAL
3-character ISO 4217 currency code that represents the currency used. Currently, the following currencies are supported:
USD, EUR, GBP, NZD, CAD, AUD, JPY, SGD, HKD, CNH, CNY,KRW
This parameter is only NOT required when beneficiaryType is
RELATED_MERCHANT_ALIPAY_COMPANY_ACCOUNT.
beneficiaryType String CONDITIONAL
Defines the type of beneficiary's card.
Valid values are:
THIRD_PARTY_PERSONAL_BANK_ACCOUNT: indicates the personal bank account of the third-party beneficiaryTHIRD_PARTY_COMPANY_BANK_ACCOUNT: indicates the company bank account of the third-party beneficiaryPERSONAL_BANK_ACCOUNT: indicates the personal bank account of the same-name beneficiaryCOMPANY_BANK_ACCOUNT: indicates the company bank account of the same-name beneficiaryRELATED_MERCHANT_COMPANY_BANK_ACCOUNT: indicates the company bank account of the related companyRELATED_MERCHANT_ALIPAY_COMPANY_ACCOUNT: indicates the company alipay account of the related companyTHIRD_PARTY_PERSONAL_EWALLET_ACCOUNT: indicates the personal E-wallet account of the third-party beneficiary
- This parameter is optional for the Partners who have already completed integration.
- When the value of this parameter is
RELATED_MERCHANT_COMPANY_BANK_ACCOUNTorRELATED_MERCHANT_ALIPAY_COMPANY_ACCOUNT, currency and countryCode parameters must be specified asCNYandCN.- When currency is
KRand countryCode isKRW, this parameter must be specified as eitherPERSONAL_BANK_ACCOUNTorCOMPANY_BANK_ACCOUNT.- This field is required when querying the wallet template. Valid value:
THIRD_PARTY_PERSONAL_EWALLET_ACCOUNT.
walletBrandName String
The brand name of the wallet.
For example: OVO, GOPAY, and etc. For the full list, refer to the WalletBrandName.
This field is optional. When beneficiaryType is set to
THIRD_PARTY_PERSONAL_EWALLET_ACCOUNT, and this field is left blank, all wallet brand templates of the corresponding currency and country code will be returned.
Response parameters
result Result REQUIRED
Indicates whether this API is called successfully.
responseId String REQUIRED
The unique ID that is assigned by WorldFirst to identify a response.
This parameter is returned only if the value of result.resultStatus is S.
More information:
- Maximum length: 32 characters
cardTemplateData Array<CardTemplateField> CONDITIONAL
General template for the beneficiary's bank account.
This parameter is returned only if the value of result.resultStatus is S.
This parameter is returned when the beneficiaryType is NOT
RELATED_MERCHANT_ALIPAY_COMPANY_ACCOUNT.
digitalWalletTemplateData Array<BeneficiaryDigitalWalletTemplateData>
Digital wallet card template.
localCardTemplateData Array<CardTemplateField>
Local template containing bank account fields required for the local clearing network.
This parameter is returned only if the value of result.resultStatus is S.
bankAccountTemplateData Array<BeneficiaryBankAccountTemplateData>
Bank account card template.
crossBorderCardTemplateData Array<CardTemplateField>
Cross-border template containing bank account fields required for the cross-border clearing network.
This parameter is returned only if the value of result.resultStatus is S.
alipayTemplateData Array<CardTemplateField> CONDITIONAL
Alipay template for the beneficiary's alipay account.
This parameter is returned only if the value of result.resultStatus is S.
This parameter is only returned when the beneficiaryType is
RELATED_MERCHANT_ALIPAY_COMPANY_ACCOUNT.
Request
Response
Result processing logic
Result of the API call
After calling the API, a response is returned. The possible responses for result.resultStatus are:
Result status | Description |
| This indicates the API call succeeded. |
| This indicates the API call failed. For more information on why the call failed, see result.resultCode. |
| This indicates the API call result is unknown. Partner can make a query when the returned status is
If none of the queries is successful, contact WorldFirst Technical Support. |
Different types of templates
WorldFirst provides Card and Wallet template information about the beneficiary in one or more of the following fields:
For card templates:
cardTemplateDataindicates a general template, containing all related fields of the beneficiary's bank account information.localCardTemplateDataindicates a local template, containing bank account fields required for the local clearing network.crossBorderCardTemplateDataindicates a cross-border template, containing bank account fields required for the cross-border clearing network.
For wallet templates:
LOCAL_MERGEindicates a local template, containing the set of payee information elements required by the local clearing network.CROSS_BORDER_MERGEindicates a cross-border template, containing the set of payee information elements required by the cross-border clearing network.MERGEindicates a regular card template, containing all relevant payee information elements.
If more than one templates are returned in the response, all templates are applicable for the requested situation. In most cases, localCardTemplateData and crossBorderCardTemplateData provide more optimized templates with less required fields. Partner can use any one of the returned templates for beneficiary binding. Contact WorldFirst Technical Support if you have further questions.
Template field list
The tables below are for reference only. Please refer to the template(s) returned in the response for applicable fields under different circumstances.
Card template field:
fieldName | fieldDescription | restrictionType |
bankAccountName | Account name | PATTERN_RESTRICTION |
bankAccountNo | Account number | PATTERN_RESTRICTION |
bankName | Bank name | PATTERN_RESTRICTION |
bankBIC | Bank BIC/SWIFT | PATTERN_RESTRICTION |
bankAccountIBAN | IBAN | PATTERN_RESTRICTION |
routingNumber | Routing Number | PATTERN_RESTRICTION |
beneficiaryAddress | Beneficiary address | PATTERN_RESTRICTION |
beneficiaryCountryCode | Beneficiary country code | PATTERN_RESTRICTION |
beneficiaryPhone | Beneficiary phone | PATTERN_RESTRICTION |
bankBranchCode | Bank branch code | PATTERN_RESTRICTION |
bankLocalName | Bank name (in local language) | PATTERN_RESTRICTION |
bankAccountLocalName | Account name (in local language) | PATTERN_RESTRICTION |
Wallet template field:
fieldName | fieldDescription | restrictionType |
walletFullName | Beneficiary wallet full name | PATTERN_RESTRICTION |
walletFirstName | Beneficiary wallet first name | PATTERN_RESTRICTION |
walletLastName | Beneficiary wallet last name | PATTERN_RESTRICTION |
walletAccountNo | Beneficiary wallet account no | PATTERN_RESTRICTION |
IBAN | IBAN | PATTERN_RESTRICTION |
phoneNo | Beneficiary phone | PATTERN_RESTRICTION |
System-related result codes
| Code | Value | Message | Further action |
|---|---|---|---|
| SUCCESS | S | 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. |
| 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. |
| 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. |
| REQUEST_TRAFFIC_EXCEED_LIMIT | U | The request traffic exceeds the limit. | Call the interface again to resolve the issue. If the issue persists, contact our Technical Support Team. |
| OAUTH_FAIL | F | OAuth process failed. | Contact our Technical Support Team for detailed reasons. |
| 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 |
Business-related result codes
| Code | Value | Message | Further action |
|---|---|---|---|
| UN_SUPPORT_BUSINESS | F | Unsupported business. | Invalid parameters are used e.g. currency is incorrect. Retry with the correct information. |
| SYSTEM_ERROR | F | System error. | Do not retry, and contact our Technical Support Team for more details. |
| USER_NOT_EXIST | F | The user does not exist. | Retry with the correct user information. |
| CARD_TEMPLATE_NOT_EXIST | F | No card templates met the query conditions. | Adjust the query and retry. |