Acme HSBC Bank Malaysia Payments
This describes validations / allowed data formats for Acme payments going through HSBC Bank Malaysia. These will be validated by Acme and further validated by the bank. These rules may be stricter than what the bank requires.
Common Definitions
-
SWIFT Character Set:
- The 26 uppercase Latin letters
A
-Z
- The 26 lowercase Latin letters
a
-z
- The 10 digits
0
-9
- Forward slash
/
- Hyphen
-
- Question mark
?
- Colon
:
- Left and right parentheses
(
)
- Full stop
.
- Comma
,
- Single quote
'
- Plus sign
+
- Space
- The 26 uppercase Latin letters
-
BIC11:
- 11-character Bank Identifier Code
General notes
- The
receiver.address.country
must be an uppercase 2-letter ISO 3166 country code (e.g.MY
for Malaysia). - The format for BIC (used in
receiver.bank
) is strictly validated using[A-Z]{6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3})?
(as specified in ISO20022 BICFIIdentifier).
MY_IBG
Important
- The
paymentSetCode
for GIRO payments is a 3 character optional code configured on HSBCnet to group payment instructions under a specific access or entitlement group. Use this field to restrict payroll transaction access on HSBCnet. The value must match an existing payment set code configured in HSBCnet, please contact the bank for the appropriate code(s) to set.
field | pattern / charset | max length | mandatory/optional |
---|---|---|---|
paymentSetCode | SWIFT Example: E01 | 3 | O |
payments[N].customerReference | SWIFT | 12 | M |
payments[N].paymentDetails | SWIFT | 140 | O |
payments[N].bankChargeBearer | SENDER or RECEIVER or SHARED Default to SENDER if not provided. | O | |
payments[N].receiver.name | SWIFT | 140 | M |
payments[N].receiver.bank | BIC11 | 11 | M |
payments[N].receiver.bankAccountNumber | Alphanumeric | 34 | M |
payments[N].receiver.address.line1 | SWIFT | 35 | O |
payments[N].receiver.address.line2 | SWIFT | 35 | O |
payments[N].receiver.address.city | SWIFT | 35 | O |
payments[N].receiver.address.state | SWIFT | 35 | O |
payments[N].receiver.address.postalCode | SWIFT | 16 | O |
payments[N].receiver.address.country | SWIFT | 2 | M |
MY_IBFT
Important
- All payment type RENTAS, Telegraphic Transfer and DuitNow (IBFT and Proxy) require purpose of payment code to describe the nature of the transaction. Specify the 5 digits purpose of payments (PoP) in
purposeCode
. Please contact the bank for the latest Purpose of Payment listing code. - As part of the requirements, please append the prefix "/RRN/" before populating remittance information of the payment in
paymentDetails
. Example: "/RRN/General Info"
field | pattern / charset | max length | mandatory/optional |
---|---|---|---|
payments[N].customerReference | SWIFT | 16 | M |
payments[N].paymentDetails | SWIFT | 140 | O |
payments[N].purposeCode | 5 Digits PoP Code Example: 00001 | 5 | M |
payments[N].receiver.name | SWIFT | 140 | M |
payments[N].receiver.bank | BIC11 | 11 | M |
payments[N].receiver.bankAccountNumber | Alphanumeric | 34 | M |
payments[N].receiver.accountType | CHECKING or SAVINGS | M | |
payments[N].receiver.address.line1 | SWIFT | 35 | O |
payments[N].receiver.address.line2 | SWIFT | 35 | O |
payments[N].receiver.address.city | SWIFT | 35 | O |
payments[N].receiver.address.state | SWIFT | 35 | O |
payments[N].receiver.address.postalCode | SWIFT | 16 | O |
payments[N].receiver.address.country | SWIFT | 2 | O |
MY_DUITNOW
Important
- All payment type RENTAS, Telegraphic Transfer and DuitNow (IBFT and Proxy) require purpose of payment code to describe the nature of the transaction. Specify the 5 digits purpose of payments (PoP) in
purposeCode
. Please contact the bank for the latest Purpose of Payment listing code. - As part of the requirements, please append the prefix "/RRN/" before populating remittance information of the payment in
paymentDetails
. Example: "/RRN/General Info"
field | pattern / charset | max length | mandatory/optional |
---|---|---|---|
payments[N].customerReference | SWIFT | 16 | M |
payments[N].paymentDetails | SWIFT | 140 | O |
payments[N].purposeCode | 5 Digits PoP Code Example: 00001 | 5 | M |
payments[N].receiver.proxyType | NRIC or PASSPORT or ARMY or MOBILE or BUSINESS_REG | M | |
payments[N].receiver.proxyValue for NRIC | NRIC / Malaysian Identification Number | 15 | M |
payments[N].receiver.proxyValue for PASSPORT | Passport Number + Alpha-3 country code of the country of issuance. E.g: given a passport number E394029340V and country code of Singapore (SGP), the value will be E394029340VSGP. | 15 | M |
payments[N].receiver.proxyValue for ARMY | Army Number | 15 | M |
payments[N].receiver.proxyValue for MOBILE | + followed by 7 to 15 digits Example: +60121234567 | 15 | M |
payments[N].receiver.proxyValue for BUSINESS_REG | Business Registration Number (BRN) Example: 202201234565 | 15 | M |
payments[N].receiver.address.line1 | SWIFT | 35 | O |
payments[N].receiver.address.line2 | SWIFT | 35 | O |
payments[N].receiver.address.city | SWIFT | 35 | O |
payments[N].receiver.address.state | SWIFT | 35 | O |
payments[N].receiver.address.postalCode | SWIFT | 16 | O |
payments[N].receiver.address.country | SWIFT | 2 | O |
MY_RENTAS
Important
- All payment type RENTAS, Telegraphic Transfer and DuitNow (IBFT and Proxy) require purpose of payment code to describe the nature of the transaction. Specify the 5 digits purpose of payments (PoP) in
purposeCode
. Please contact the bank for the latest Purpose of Payment listing code.
field | pattern / charset | max length | mandatory/optional |
---|---|---|---|
payments[N].customerReference | SWIFT | 16 | M |
payments[N].paymentDetails | SWIFT | 140 | O |
payments[N].bankChargeBearer | SENDER or RECEIVER or SHARED Default to RECEIVER if not provided. | O | |
payments[N].purposeCode | 5 Digits PoP/KPW Code Example: 00001 | 5 | M |
payments[N].receiver.name | SWIFT | 35 | M |
payments[N].receiver.bank | BIC11 | 11 | M |
payments[N].receiver.bankAccountNumber | Alphanumeric | 34 | M |
payments[N].receiver.address.line1 | SWIFT | 35 | O |
payments[N].receiver.address.line2 | SWIFT | 35 | O |
payments[N].receiver.address.city | SWIFT | 35 | O |
payments[N].receiver.address.state | SWIFT | 35 | O |
payments[N].receiver.address.postalCode | SWIFT | 16 | O |
payments[N].receiver.address.country | SWIFT | 2 | M |
TT
Important
- All payment type RENTAS, Telegraphic Transfer and DuitNow (IBFT and Proxy) require purpose of payment code to describe the nature of the transaction. Specify the 5 digits purpose of payments (PoP) in
purposeCode
. Please contact the bank for the latest Purpose of Payment listing code. - The
paymentDetails
is conditionally mandatory for TT to specific countries in Asia including Bangladesh, India, Malaysia, Mauritius, the Philippines, Sri Lanka, Vietnam and Indonesia. - Specify the purpose of payments (PoP) according to the local regulatory guidelines for each country in
paymentDetails
. Please contact the bank for the latest Asia Purpose of Payment Formatting Guide. - Note: As part of the requirements, for TT payments to Malaysia, please append the prefix "REMI/" before populating the purpose of payment in
paymentDetails
. Example: "REMI/Manufactured Goods"
field | pattern / charset | max length | mandatory/optional |
---|---|---|---|
payments[N].customerReference | SWIFT | 16 | M |
payments[N].paymentDetails | SWIFT Example: Manufactured Goods | 140 | CM |
payments[N].purposeCode | 5 Digits PoP/KPW Code Example: 00001 | 5 | M |
payments[N].bankChargeBearer | SENDER or RECEIVER or SHARED Default to SHARED if not provided. | O | |
payments[N].receiver.name | SWIFT | 35 | M |
payments[N].receiver.bank | BIC11 | 11 | M |
payments[N].receiver.bankAccountNumber | Alphanumeric | 34 | M |
payments[N].receiver.address.line1 | SWIFT | 35 | O |
payments[N].receiver.address.line2 | SWIFT | 35 | O |
payments[N].receiver.address.city | SWIFT | 35 | O |
payments[N].receiver.address.state | SWIFT | 35 | O |
payments[N].receiver.address.postalCode | SWIFT | 16 | O |
payments[N].receiver.address.country | SWIFT | 2 | M |