Batch Files
Batch File Signing
Batch file may be signed based on the body content of the file. The content of the body shall be encoded into a Base64 string, then signed using SHA256 RSA Signature Method with the participant’s private key
Example:
- Body of batch file: 02|xxxxx|12345||x1| 02|yyyyy|67890||x2|abc
- Converted into single line: 02|xxxxx|12345||x1|02|yyyyy|67890||x2|abc
- Encoded into Base64: MDJ8eHh4eHh8MTIzNDV8fHgxfDAyfHl5eXl5fDY3ODkwfHx4MnxhYmM=
- Signed with private key:
DwbbbVvlgaa5+3+sJxe7/Tq42va/J4uwOPC4gZ4Pq5P+WzT4J+CoTXD8OmUjSvJ40oM+P7Ont23qqu3om41A4IYdeXJNMZF9XOgHVeShTGY3pWlAp5LFzvU8CNvnzAZpbK6I7iMnswW5UFg2JIJh2XjaRGXAXtDVQ=
Request-to-Pay
RTPB001 – RTP Bank Request File
RTPB001
Click to download sample file.
Header
Field Name | M/O | Length | Description |
---|---|---|---|
RECORD TYPE | M | PIC 9 (02) | Default to 01 to indicate Header record |
REPORT DATE | M | PIC X (08) | Report date in yyyyMMdd format e.g. 20171023 Notes: In above example, the file will be processed on 24th Oct 2017 |
Body
Field Name | M/O/C | Length | Description |
---|---|---|---|
RECORD TYPE | M | PIC 9 (02) | Default to 02 to indicate Detail record |
TRANSACTION TYPE | M | PIC 9 (3) | Supported transaction codes:
|
PARTICIPANT BIC | M | PIC X (8) | BIC code of the Participant uploading the file e.g. HLBBMYKL |
INITIATOR NAME | M | PIC X (140) | Name of Participant e.g. HSBC Bank |
RTP EXPIRY DATE | M | PIC X (10) | Transaction expiry date in YYYY-MM-DD format. Example 2019-11-02 |
DEBTOR NAME | M | PIC X (140) | Name of the debtor |
DEBTOR ACCOUNT ID | M | PIC X (34) |
|
DEBTOR ACCOUNT TYPE | M | PIC X (4) | 851 – Proxy Type
853/854 – Debtor Account Type
|
DEBTOR ID TYPE | O | PIC 9 (2) | Debtor ID type
|
DEBTOR ID | O | PIC X (140) | Debtor ID For Passport, please include country code at the end. E.g. A12345678MYR |
DEBITING AGENT BIC | C | PIC X (8) | Required for 853/854 |
INSTRUCTED AMOUNT | M | PIC X (18) | Transaction amount. For example, RM1000.00 is to be propagated as 1000.00 |
CURRENCY | M | PIC X (3) | Transaction currency code. Default to MYR |
CREDITING AGENT BIC | O | PIC X (8) |
|
CREDITOR NAME | M | PIC X (140) | |
CREDITOR ACCOUNT ID | M | PIC X (256) | Creditor Account Number For 854 – Encrypted Account Number |
CREDITOR ACCOUNT TYPE | M | PIC X (4) |
|
CREDITOR SECONDARY ID TYPE | O | PIC 9 (2) | Default to 04 |
CREDITOR SECONDARY ID | O | PIC X (140) | Creditor’s BRN |
MERCHANT ID | C | PIC X (35) | Required if file is uploaded by Merchant directly to RPP |
PRODUCT ID | C | PIC X (35) | Required if file is uploaded by Merchant directly to RPP |
AMOUNT NOT EDITABLE | O | PIC X (5) | Indicator of whether the amount requested can be changed
|
ACCTEPTABLE SOURCE OF FUND | M | PIC 9 (20) | Multiple input values are supported
For example if merchant supports all the 3 sources, then populate as 010203 |
CONSENT EFFECTIVE DATE | C | PIC X (10) | Format in YYYY-MM-DD format. Example 2019-11-02 |
CONSENT EXPIRY DATE | C | PIC X (10) | Format in YYYY-MM-DD format. Example 2019-11-02 |
CONSENT FREQUENCY | C | PIC 9 (2) | Frequency mode of the Direct Debit to be permitted by this Consent:
|
CONSENT MAXIMUM AMOUNT | C | PIC X (15) | Maximum direct debit amount. For example, RM1000.00 is to be propagated as 1000.00 |
FIRST PARTY PAYMENT VALIDATION | O | PIC X (2) | Indicates if Debiting Agent should perform validation on Debtor information
|
REF-1 | M | PIC X (140) | Recipient Reference |
REF-2 | O | PIC X (140) | Other payment description |
URL | O | PIC X (250) | URL |
END TO END ID | M | PIC X (35) | End-to-end ID of the request For 854, please include the Merchant ID in the End-to-End ID. Example 20210907M0000179854OCB00000473 |
ORIGINAL TRANSACTION BUSINESS MESSAGE ID | C | PIC X (35) | Required for 854 |
Footer
Field Name | M/O | Length | Description |
---|---|---|---|
RECORD TYPE | M | PIC 9 (02) | Default to 03 to indicate Footer record |
TOTAL RECORD COUNT | M | PIC 9 (18) | Total records in the file count excluding header and footer records |
SIGNATURE | M | PIC X (2046) | Signed file body content with private key |
RTPB001 – RTP Bank Return File (RTPB001)
Fields left with blank description indicates the value is to follow the request file
RTPB001 (Success)
Click to download sample file.
RTPB001 (Error)
Click to download sample file.
Header
Field Name | Description |
---|---|
RECORD TYPE | Default to 01 to indicate Header record |
REPORT DATE | Report date in yyyyMMdd format e.g. 20171023 |
Body
Field Name | Description |
---|---|
RECORD TYPE | Default to 02 to indicate Detail record |
TRANSACTION TYPE | |
PARTICIPANT BIC | |
INITIATOR NAME | |
RTP EXPIRY DATE | |
DEBTOR NAME | |
DEBTOR ACCOUNT ID | |
DEBTOR ACCOUNT TYPE | |
DEBITING AGENT BIC | |
INSTRUCTED AMOUNT | |
CURRENCY | |
CREDITING AGENT BIC | |
CREDITOR NAME | |
CREDITOR ACCOUNT ID | |
CREDITOR ACCOUNT TYPE | |
CREDITOR SECONDARY ID TYPE | |
CREDITOR SECONDARY ID | |
MERCHANT ID | |
PRODUCT ID | |
AMOUNT NOT EDITABLE | |
ACCTEPTABLE SOURCE OF FUND | |
CONSENT EFFECTIVE DATE | |
CONSENT EXPIRY DATE | |
CONSENT FREQUENCY | |
CONSENT MAXIMUM AMOUNT | |
FIRST PARTY PAYMENT VALIDATION | |
REF-1 | |
REF-2 | |
URL | |
ORIGINAL TRANSACTION BUSINESS MESSAGE ID | Required for 854 – Request-to-Pay Refund |
END TO END ID | End-to-end ID of the request |
STATUS | Status of the record
|
STATUS CODE | Status code of the transaction |
Footer
Field Name | Description |
---|---|
RECORD TYPE | Default to 03 to indicate Footer record |
TOTAL RECORD COUNT | Total records in the file count excluding header and footer records |
SIGNATURE | Signed file body content with private key |
RTPB002 – RTP Merchant Request File
Header
Field Name | M/O | Length | Description |
---|---|---|---|
RECORD TYPE | M | PIC 9 (02) | Default to 01 to indicate Header record |
REPORT DATE | M | PIC X (08) | Report date in yyyyMMdd format e.g. 20171023 Notes: In above example, the file will be processed on 24th Oct 2017 |
Body
Field Name | M/O/C | Length | Description |
---|---|---|---|
RECORD TYPE | M | PIC 9 (02) | Default to 02 to indicate Detail record |
TRANSACTION TYPE | M | PIC 9 (3) | 851 – Request-to-Pay via Proxy |
PARTICIPANT BIC | M | PIC X (8) | BIC code of Participant that is uploading the file e.g. MERBMYKL |
INITIATOR NAME | M | PIC X (140) | Name of Participant e.g. Merchant B |
RTP EXPIRY DATE | M | PIC X (10) | Transaction expiry date in YYYY-MM-DD format e.g. 2019-11-02 |
DEBTOR NAME | M | PIC X (140) | Name of Debtor |
DEBTOR ACCOUNT ID | M | PIC X (34) |
|
DEBTOR ACCOUNT TYPE | M | PIC X (4) | 851 – Proxy Type
853/854 – Debtor Account Type
|
DEBTOR ID TYPE | O | PIC 9 (2) | Debtor ID type
05 – Mobile Number |
DEBTOR ID | O | PIC X (140) | Debtor ID For Passport, please include country code at the end. E.g. A12345678MYR |
DEBITING AGENT BIC | C | PIC X (8) | Required for 853/854 |
INSTRUCTED AMOUNT | M | PIC X (15) | Transaction amount. For example, RM1000.00 is to be propagated as 1000.00 |
CURRENCY | M | PIC X (3) | Transaction currency code. Default to MYR |
CREDITOR ACCOUNT ID | O | PIC X (256) | Creditor account number
|
CREDITOR ACCOUNT TYPE | O | PIC X (4) | Not required if file is uploaded by Merchant directly to RPP
|
CREDITOR SECONDARY ID TYPE | O | PIC 9 (2) | Default to 04 |
CREDITOR SECONDARY ID | O | PIC X (140) | Merchant’s BRN |
MERCHANT ID | C | PIC X (35) | Merchant ID Required if file is uploaded by Merchant directly to RPP |
PRODUCT ID | C | PIC X (35) | Product ID Required if file is uploaded by Merchant directly to RPP |
AMOUNT NOT EDITABLE | O | PIC X (5) | Indicator of whether the amount requested can be changed
|
ACCTEPTABLE SOURCE OF FUND | M | PIC 9 (20) | Acceptable source of funds. Multiple input values are supported
For example if merchant supports all the 3 sources, then populate as 010203 |
CONSENT EFFECTIVE DATE | C | PIC X (10) | Format in YYYY-MM-DD format. Example 2019-11-02 |
CONSENT EXPIRY DATE | C | PIC X (10) | Format in YYYY-MM-DD format. Example 2019-11-02 |
CONSENT FREQUENCY | C | PIC 9 (2) | Frequency mode of the Direct Debit to be permitted by this Consent:
|
CONSENT MAXIMUM AMOUNT | C | PIC X (15) | Maximum direct debit amount. For example, RM1000.00 shall be populated as 1000.00 |
FIRST PARTY PAYMENT VALIDATION | O | PIC X (2) | Indicates if Debiting Agent should perform validation on Debtor information
|
REF-1 | M | PIC X (140) | Recipient reference |
REF-2 | O | PIC X (140) | Other payment description |
URL | O | PIC X (250) | URL |
END TO END ID | M | PIC X (35) | End-to-end ID of the request For 854, please include the Merchant ID in the End-to-End ID. Example 20210907M0000179854OCB00000473 |
ORIGINAL TRANSACTION BUSINESS MESSAGE ID | C | PIC X (35) | Required for 854 |
Footer
Field Name | M/O | Length | Description |
---|---|---|---|
RECORD TYPE | M | PIC 9 (02) | Default to 03 to indicate Footer record |
TOTAL RECORD COUNT | M | PIC 9 (18) | Total records in the file count excluding header and footer records |
SIGNATURE | M | PIC X (2046) | Signed file body content with private key |
RTPB002 – RTP Merchant Return File
Fields left with blank description indicates the value is to follow the request file
Header
Field Name | Description |
---|---|
RECORD TYPE | Default to 01 to indicate Header record |
REPORT DATE | Report date in yyyyMMdd format e.g. 20171023 |
Body
Field Name | Description |
---|---|
RECORD TYPE | |
TRANSACTION TYPE | |
PARTICIPANT BIC | |
INITIATOR NAME | |
RTP EXPIRY DATE | |
DEBTOR NAME | |
DEBTOR ACCOUNT ID | |
DEBTOR ACCOUNT TYPE | |
DEBTOR ID TYPE | |
DEBTOR ID | |
DEBITING AGENT BIC | |
INSTRUCTED AMOUNT | |
CURRENCY | |
CREDITOR ACCOUNT ID | |
CREDITOR ACCOUNT TYPE | |
CREDITOR SECONDARY ID TYPE | |
CREDITOR SECONDARY ID | |
MERCHANT ID | |
PRODUCT ID | |
AMOUNT NOT EDITABLE | |
ACCTEPTABLE SOURCE OF FUND | |
CONSENT EFFECTIVE DATE | |
CONSENT EXPIRY DATE | |
CONSENT FREQUENCY | |
CONSENT MAXIMUM AMOUNT | |
FIRST PARTY PAYMENT VALIDATION | |
REF-1 | |
REF-2 | |
URL | |
ORIGINAL TRANSACTION BUSINESS MESSAGE ID | Required for 854 |
BUSINESS MESSAGE ID | Generated by RPP |
STATUS | Status of the record
|
STATUS CODE | Status code of the transaction |
Footer
Field Name | Description |
---|---|
RECORD TYPE | Default to 03 to indicate Footer record |
TOTAL RECORD COUNT | Total records in the file count excluding header and footer records |
SIGNATURE | Signed file body content with private key |
Consent Registration
CRB001 – Consent Registration Request File
CRB001
Click to download sample file.
Header
Field Name | M/O | Length | Description |
---|---|---|---|
RECORD TYPE | M | PIC 9 (02) | Default to 01 to indicate Header record |
REPORT DATE | M | PIC X (08) | Report Date in yyyyMMdd format e.g. 20171023 Notes: In above example, the file will be processed on 24th Oc 2017 |
Body
Field Name | M/O | Length | Description |
---|---|---|---|
RECORD TYPE | M | PIC 9 (02) | Default to 02 to indicate Detail record |
TRANSACTION TYPE | M | PIC 9 (3) |
|
PARTICIPANT BIC | M | PIC X (8) | BIC code of Participant that is uploading the file e.g. HLBBMYKL |
CREDITOR NAME | M | PIC X (140) | Merchant Name |
CREDITING AGENT BIC | M | PIC X (8) | |
DEBTOR NAME | M | PIC X (140) | Name of the Debtor |
DEBITING AGENT BIC | C | PIC X (8) | Required for 802 |
EFFECTIVE DATE OF CONSENT | M | PIC X (10) | Format in YYYY-MM-DD. Example 2019-11-2 |
EXPIRY DATE OF CONSENT | M | PIC X (10) | Format in YYYY-MM-DD. Example 2019-11-2 |
TERMINATABLE BY DEBTOR | M | PIC X (3) | Indicator if consent can be terminated by Debtor
|
CREDITOR ID TYPE | O | PIC 9 (2) | Default to 04 |
CREDITOR ID | O | PIC X (140) | Merchant’s BRN |
ACCTEPTABLE SOURCE OF FUNDS | M | PIC 9 (20) | Acceptable source of funds. Multiple input values are supported
For example if merchant supports all the 3 sources, then populate as 010203 |
DEBTOR ID TYPE | C | PIC 9 (2) |
|
DEBTOR ID | C | PIC X (140) | For Passport, please include country code at the end. E.g. A12345678MYR |
DEBTOR ACCOUNT ID | M | PIC X (34) | Debtor Account Number
|
DEBTOR ACCOUNT TYPE | M | PIC 9 (4) | 801 – Proxy Type
802 – Debtor Account Type
|
MAX CONSENT AMOUNT | M | PIC 9 (15) | Maximum direct debit amount. For example, RM1000.00 is to be propagated as 1000.00 |
AMOUNT CURRENCY | M | PIC X (3) | Transaction currency code. Default to MYR |
FREQUENCY MODE | M | PIC 9 (2) | Frequency mode of the Direct Debit to be permitted by this Consent:
|
REQUEST EXPIRY DATE | M | PIC X (10) | Consent registration request expiry date in YYYY-MM-DD format. Example 2019-11-02 |
MERCHANT ID | M | PIC X (35) | Merchant ID |
PRODUCT ID | M | PIC X (35) | Product ID |
FIRST PARTY PAYMENT VALIDATION | O | PIC X (2) | Indicates if Debiting Agent should perform validation on Debtor information
|
REF-1 | M | PIC X (140) | Recipient Reference |
REF-2 | O | PIC X (140) | Other payment description |
END TO END ID | M | PIC X (35) | End-to-end ID of the request/transaction |
Footer
Field Name | M/O | Length | Description |
---|---|---|---|
RECORD TYPE | M | PIC 9 (02) | Default to 03 to indicate Footer record |
TOTAL RECORD COUNT | M | PIC 9 (18) | Total record count, excluding header and footer records. |
SIGNATURE | M | PIC X (2046) | Signed file body content using private key |
CRB001 – Consent Registration Return File
CRB001 (Success)
Click to download sample file.
CRB001 (Error)
Click to download sample file.
Header
Field Name | Description |
---|---|
RECORD TYPE | Default to 01 to indicate Header record |
REPORT DATE | Report date in yyyyMMdd format e.g. 20171023 Notes: In above example, the file will be processed on 24th Oct 2017 |
Body
Field Name | Description |
---|---|
RECORD TYPE | |
TRANSACTION TYPE | |
PARTICIPANT BIC | |
CREDITOR NAME | |
CREDITING AGENT BIC | |
DEBTOR NAME | |
DEBITING AGENT BIC | |
EFFECTIVE DATE OF CONSENT | |
EXPIRY DATE OF CONSENT | |
TERMINATABLE BY DEBTOR | |
CREDITOR ID TYPE | |
CREDITOR ID | |
ACCTEPTABLE SOURCE OF FUNDS | |
DEBTOR ID TYPE | |
DEBTOR ID | |
DEBTOR ACCOUNT ID | |
DEBTOR ACCOUNT TYPE | |
MAX CONSENT AMOUNT | |
AMOUNT CURRENCY | |
FREQUENCY MODE | |
REQUEST EXPIRY DATE | |
MERCHANT ID | |
PRODUCT ID | |
FIRST PARTY PAYMENT VALIDATION | |
REF-1 | |
REF-2 | |
END TO END ID | End-to-end ID of the request/transaction |
STATUS | Status of the record
|
STATUS CODE | Status code of the transaction |
CONSENT ID | Consent ID generated by RPP |
Footer
Field Name | Description |
---|---|
RECORD TYPE | Default to 03 to indicate Footer record |
TOTAL RECORD COUNT | Total record count, excluding header and footer records |
SIGNATURE | Signed file body content using private key |
Real-time Debit
DDB001 – RTD Request File
DDB001
Click to download sample file.
Header
Field Name | M/O | Length | Description |
---|---|---|---|
RECORD TYPE | M | PIC 9 (02) | Default to 01 to indicate Header record |
REPORT DATE | M | PIC X (08) | Report date in yyyyMMdd format e.g. 20171023 Notes: In above example, the file will be processed on 24th Oct 2017 |
Body
Field Name | M/O | Length | Description |
---|---|---|---|
RECORD TYPE | M | PIC 9 (02) | Default to 02 to indicate Detail record |
TRANSACTION TYPE | M | PIC 9 (3) | 210 – Real-time Debit via Bank |
PARTICIPANT BIC | M | PIC X (8) | BIC code of Participant that is uploading the file e.g. HLBBMYKL |
AMOUNT | M | PIC 9 (15) | Direct Debit Amount. For example, RM1000.00 is to be propagated as 1000.00 |
CURRENCY | M | PIC X (3) | Direct Debit currency code. Default to MYR |
CREDITOR ACCOUNT ID | M | PIC X (34) | Required for 210 Creditor Account Number |
CREDITOR ACCOUNT TYPE | M | PIC X (4) | Required for 210
|
CREDITING AGENT BIC | M | PIC X (8) | Required for 210 |
MERCHANT ID | M | PIC X (35) | |
PRODUCT ID | M | PIC X (35) | |
REF-1 | M | PIC X (140) | Recipient Reference |
REF-2 | O | PIC X (140) | Other payment description |
CONSENT ID | M | PIC X (35) | Consent ID |
END TO END ID | M | PIC X (35) | End-to-end ID of the request/transaction |
Footer
Field Name | M/O | Length | Description |
---|---|---|---|
RECORD TYPE | M | PIC 9 (02) | Value “03” to indicate Footer record |
TOTAL RECORD COUNT | M | PIC 9 (18) | Total record count, excluding header and trailer records. |
SIGNATURE | M | PIC X (2046) | Signed file body content using private key |
DDB001 – RTD Return File
Fields left with blank description indicates the value is to follow the request file
DDB001 (Success)
Click to download sample file.
DDB001 (Error)
Click to download sample file.
Header
Field Name | Description |
---|---|
RECORD TYPE | Default to 01 to indicate Header record |
REPORT DATE | Report date in yyyyMMdd format e.g. 20171023 Notes: In above example, the file will be processed on 24th Oct 2017 |
Body
Field Name | Description |
---|---|
RECORD TYPE | |
TRANSACTION TYPE | |
PARTICIPANT BIC | |
AMOUNT | |
CURRENCY | |
DEBTOR ACCOUNT ID | |
DEBTOR ACCOUNT TYPE | |
CREDITING AGENT | |
MERCHANT ID | |
PRODUCT ID | |
REF-1 | |
REF-2 | |
CONSENT ID | |
END TO END ID | |
STATUS | Status of the record
|
STATUS CODE | Status code of the transaction |
Footer
Field Name | Description |
---|---|
RECORD TYPE | Value “03” to indicate Footer record |
TOTAL RECORD COUNT | Total record count, excluding header and trailer records |
SIGNATURE | Signed file body content using private key |
DDB002 – Merchant Request File
Header
Field Name | M/O | Length | Description |
---|---|---|---|
RECORD TYPE | M | PIC 9 (02) | Default to 01 to indicate Header record |
REPORT DATE | M | PIC X (08) | Report date in yyyyMMdd format e.g. 20171023 Notes: In above example, the file will be processed on 24th Oct 2017 |
Body
Field Name | M/O | Length | Description |
---|---|---|---|
RECORD TYPE | M | PIC 9 (02) | Default to 02 to indicate Detail record |
TRANSACTION TYPE | M | PIC 9 (3) | 220 – Real-time Debit via Merchant |
PARTICIPANT BIC | M | PIC X (8) | BIC code of Participant that is uploading the file e.g. HLBBMYKL |
AMOUNT | M | PIC 9 (15) | Real-time debit amount. For example, RM1000.00 is to be propagated as 1000.00 |
CURRENCY | M | PIC X (3) | Real-time debit currency code. Default to MYR |
MERCHANT ID | M | PIC X (35) | |
PRODUCT ID | M | PIC X (35) | |
REF-1 | M | PIC X (140) | Recipient reference |
REF-2 | O | PIC X (140) | Other payment description |
CONSENT ID | M | PIC X (35) | Consent ID |
END TO END ID | M | PIC X (35) | End-to-end ID of the request/transaction |
Footer
Field Name | M/O | Length | Description |
---|---|---|---|
RECORD TYPE | M | PIC 9 (02) | Default to 03 to indicate Footer record |
TOTAL RECORD COUNT | M | PIC 9 (18) | Total record count, excluding header and trailer records |
SIGNATURE | M | PIC X (2046) | Signed file body content using private key |
DDB002 – Merchant Return File
Fields left with blank description indicates the value is to follow the request file
Header
Field Name | Description |
---|---|
RECORD TYPE | Default to 01 to indicate Header record |
REPORT DATE | Report date in yyyyMMdd format e.g. 20171023 Notes: In above example, the file will be processed on 24th Oct 2017 |
Body
Field Name | Description |
---|---|
RECORD TYPE | |
TRANSACTION TYPE | |
PARTICIPANT BIC | |
AMOUNT | |
CURRENCY | |
MERCHANT ID | |
PRODUCT ID | |
REF-1 | |
REF-2 | |
CONSENT ID | |
END TO END ID | |
STATUS | Status of the record
|
STATUS CODE | Status code of the record |
Footer
Field Name | Description |
---|---|
RECORD TYPE | Default to 03 to indicate Footer record |
TOTAL RECORD COUNT | Total record count, excluding header and trailer records |
SIGNATURE | Signed file body content using private key |