NTD payment files
Application Header
All records begin with a 40 character application header. The information in this record is used by the receiving systems in order to handle the data in an efficient way.
Number | Position | Data type/size | Field | Description | Instructions | Notes |
---|---|---|---|---|---|---|
1 | 1-2 | Alpha/numeric (2) | ID | AH | Application header | |
2 | 3-3 | Numeric (1) | Version | 2 | 00= Batch rejected, but no errors in this record | |
3 | 4-5 | Numeric (2) | Return Code | 00 | ||
4 | 6-9 | Alpha/numeric (4) | ProcedureID | TBII | ||
5 | 10-13 | Numeric (4) | Transaction Date | System Date | MMDD | |
6 | 14-19 | Numeric (6) | SeqNo | PayablesElectronicTransferID.SequenceNumber | Number of Sequence that day., Starts at 1 | Represents the number of Electronic Payment
Creation runs per day for same pmt code. The counter should be set back to 000001 every day. Ensure that the sequence numbering runs in an unbroken series throughout the entire working day. This is particularly important when transferring several batches during the same day. When a batch has been rejected the sequence number should always start at 1 – 1 higher than in the last transmitted batch. |
7 | 20-27 | Alpha/numeric (8) | TransCode | Blank | Reserved | |
8 | 28-38 | Alpha/numeric (11) | UserID | Blank | Reserved | |
9 | 39-40 | Numeric (2) | NoOf80Char | 04 | No of 80 character blocks that constitute one record. |
Header Record - record Type 00 - Initial Record - Batch (BETFOR00)
The record header contains the records that are created once per cash code, pay group, payment code.
Number | Position | Data type/size | Field | Description | Instructions | Notes |
---|---|---|---|---|---|---|
1 | 1-40 | Alpha/numeric (40) | Application Header | See description “Application Header” | ||
2 | 41-48 | Alpha/numeric (8) | Transaction Code | BETFOR00 | Record Type | |
3 | 49-59 | Numeric (11) | Enterprise Number | BankTransactionCode.ElectronicPaymentOrganizationIdentifier or PayablesElectronicTransferID.OrganizationIdentifier | ||
4 | 60-70 | Alpha/numeric (11) | Division | Space | ||
5 | 71-74 | Numeric (4) | Sequence Control | PayablesElectronicTransferID.SequenceCounter | The first transmission should start at 0001. After passing 9999 it should continue with 0000 | A counter that increments for each record processed (Header, Details, Total). The starting number comes from what is entered in PayablesElectronicTransferID. Users set/reset this counter |
6 | 75-80 | Alpha/numeric (6) | Reserved | Blank | Reservved | |
7 | 81-84 | Numeric (4) | Production Date | System Date | MMDD | |
8 | 85-94 | Alpha/numeric (10) | Password | Space | ||
9 | 95-104 | Alpha/numeric (10) | Version | VERSJON002 | ||
10 | 105-114 | Alpha/numeric (10) | New Password | Space | ||
11 | 115-125 | Alpha/numeric (11) | Operator No | Space | ||
12 | 126-126 | Alpha/numeric (1) | SigilSealUSe | Space | ||
13 | 127-132 | Numeric (6) | SigilSealDate | Zero | ||
14 | 133-152 | Numeric (20) | SigilPartKey | Zero | ||
15 | 153-153 | Alpha/numeric (1) | SigilSealHow | Space | ||
16 | 154-296 | Alpha/numeric (143) | Reserved | Space | ||
17 | 297-311 | Alpha/numeric (15) | Own Reference Batch | Space | ||
18 | 312-320 | Alpha/numeric (9) | Reserved | Space |
Payee record - Record Type 21
The payment/Payee records are created once per vendor or when limits are hit or when currency changes.
Number | Position | Data type/size | Field | Description | Instructions | Notes |
---|---|---|---|---|---|---|
1 | 1-40 | Alpha/numeric (40) | Application Header | See description Application Header | ||
2 | 41-48 | Alpha/numeric (8) | Transaction Code | BETFOR21 | Record Type | |
3 | 49-59 | Numeric (11) | Enterprise Number | BankTransactionCode.ElectronicPaymentOrganizationIdentifier or PayablesElectronicTransferID.OrganizationIdentifier | ||
4 | 60-70 | Numeric (11) | Account Number | ElectronicTransferID in PayablesElectronicTransferID | ||
5 | 71-74 | Numeric (4) | Sequence Control | PayablesElectronicTransferID.SequenceCounter | Uses only first 11 characters of Bank Account
and only numeric characters are used. If BankAccountValidationType not = R then all spaces in Acct are replaced by 0. Field will be populated with acct if it does not =0 Else Acct will be modified so only numeric values are extracted. Pos 1-4 will contain the first 4 digits with leading 0 if needed. Pos 5-11 will contain remaining digits with leading 0 if needed |
|
6 | 75-80 | Alpha/numeric (6) | Reference Number | Spaces | R1=ACK Reply R2 = Process Reply |
|
7 | 81-86 | Numeric (6) | Payment date | CheckDate in Electronic Payment Creation | Electronic Payment Creation Payment Date | |
8 | 87-116 | Alpha/numeric (30) | OwnRefOrder | Spaces | ||
9 | 117-117 | Alpha/numeric (1) | Reserved | Spaces | Reserved | |
10 | 118-128 | Alpha/numeric (11) | Payees Account Number | BankAccountNumber in Vendor/VendorLocation | Uses only first 11 characters of Bank Acct and
only numeric characters are used. If BankAccountValidationType not = R all spaces in Acct are replacey by 0. Field will be populated with acct if it does not = 0. Else acct will be modified so only numeric values are extracted. Pos 1-4 will contain the first 4 digits with leading 0 if needed Pos 5-11 will contain remaining digits with leading 0 if needed |
|
11 | 129-158 | Alpha/numeric (30) | Payees Name | VendorName in Vendor/VendorLocation | The fields are to be regarded as a unit. Left justified leading space’s removed. Meaning “rollup” data so no blank fields | |
12 | 159-188 | Alpha/numeric (30) | Address1 | PostalAddress.DeliveryAddress.AddressLine1 in VendorAddress | The fields are to be regarded as a unit. Left justified leading space’s removed. Meaning “rollup” data so no blank fields | |
13 | 189-218 | Alpha/numeric (30) | Address2 | PostalAddress.DeliveryAddress.AddressLine2 in VendorAddress | The fields are to be regarded as a unit. Left justified leading space’s removed. Meaning “rollup” data so no blank fields | |
14 | 219-222 | Numeric (4) | Post Code | PostalAddress.PostalCode in VendorAddress | ||
15 | 223-248 | Alpha/numeric (26) | City | PostalAddress.Municipality in VendorAddress | ||
16 | 249-263 | Numeric (15) | Amount To Own Account | Zero | ||
17 | 264-266 | Numeric (3) | Text Code | 601/602 | If PayablesInvoice.CustomerID exists value = 601 else value = 602+I82 | |
18 | 267-267 | Alpha/numeric (1) | Transfer Code | F | ||
19 | 268-268 | Alpha/numeric (1) | Cancellation Code | Spaces | ||
20 | 269-283 | Numeric (15) | Total Amount | Zero | ||
21 | 284-288 | Alpha/numeric (5) | Client Reference | Spaces | ||
22 | 289-294 | Numeric (6) | Value Date | System Date | YYMMDD | |
23 | 295-300 | Numeric (6) | Value Date Receiving Bank | Zero | ||
24 | 301-301 | Alpha/numeric (1) | Cancellation Cause | Spaces | ||
25 | 302-310 | Alpha/numeric (9) | Reserved | Spaces | Reserved | |
26 | 311-320 | Numeric (10) | From No | Spaces |
Payment record - Record Type 23 - Invoice Record (BETFOR23)
The payment/Payee records are created for each payment per vendor.
Number | Position | Data type/size | Field | Description | Instructions | Notes |
---|---|---|---|---|---|---|
1 | 1-40 | Alpha/numeric (40) | Application Header | See description Application Header | ||
2 | 41-48 | Alpha/numeric (8) | Transaction Code | BETFOR23 | Record Type | |
3 | 49-59 | Numeric (11) | Enterprise Number | BankTransactionCode.ElectronicPaymentOrganizationIdentifier or PayablesElectronicTransferID.OrganizationIdentifier | ||
4 | 60-70 | Numeric (11) | Account Number | ElectronicTransferID in PayablesElectronicTransferID | Any spaces are replaced by 0 | |
5 | 71-74 | Numeric (4) | Sequence Control | PayablesElectronicTransferID.SequenceCounter | Cannot be used simultaneously with KID. When using structured information, we recommend that all elements be used (Invoice number, customer number, and invoice date). In this case invoice number and amount are mandatory | |
6 | 75-80 | Alpha/numeric (6) | Reference Number | Spaces | R1 = ACK Reply R2 = Process Reply |
|
7 | 81-120 | Alpha/numeric (40) | Payee ref Invoice1 | PayablesInvoice | If PayablesInvoice.CustomerID = spaces then
value = PayablesInvoice.Invoice Only populated if PayablesInvoicePayment.InvoiceGroup = CMT |
|
8 | 121-160 | Alpha/numeric (40) | PayeeRef Invoice2 | PayablesInvoice.Comment | Only populated if PayablesInvoicePayment.InvoiceGroup = CMT | |
9 | 161-200 | Alpha/numeric (40) | PayeeRefInvoice3 | PayablesInvoice.Comment | Only populated if PayablesInvoicePayment.InvoiceGroup = CMT | |
10 | 201-227 | Alpha/numeric (27) | KID | CustomerID in PayablesInvoice | If PayeeRefInv2 = spaces then value = CustomerID else blank | |
11 | 228-257 | Alpha/numeric (30) | Own Reference Invoice | Payment Code from Electronic Payment Creation | ||
12 | 258-272 | Numeric (15) | Invoice amount | NetPaymentAmount in PayablesInvoicePayment | Not to be used if “Payee ref Invoice” is filled in | If PayeeRefInv2 = spaces then value = CUSTID else blank |
13 | 273-273 | Alpha/numeric (1) | DbCrMakCode | D/K (Debit/Credit Memo) | D = Debit K= Credit Memo |
|
14 | 274-296 | Alpha/numeric (20) | Invoice Number | PayablesInvoice | Cannot be used simultaneously with KID. When using structured information, we recommend that all elements be used (Invoice number, customer number, and invoice date). In this case invoice number and amount are mandatory | If PayeeRefInv2 = space and CustId exists value = Inv 3 Else Blank |
15 | 294-296 | Numeric (3) | Serial Number | Zero | Sequential numbering of the individual invoice records within each individual transfer record (BETFOR21). Starts with 001 and is allocated by the bank | |
16 | 297-297 | Alpha/numeric (1) | Cancellation Cause | Spaces | ||
17 | 298-312 | Alpha/numeric (15) | Customer Number | Spaces | Cannot be used simultaneously with KID. When using structured information, we recommend that all elements be used (Invoice number, customer number, and invoice date). In this case invoice number and amount are mandatory | |
18 | 313-320 | Numeric (8) | Invoice Date | YYMMDD | If PayablesInvoice.CustomerID = spaces and PayeeRefInv2 = Space value = PayablesInvoice.InvoiceDate |
Total Record– Record Type 99 – End of batch record (BETFOR99)
The trailer record is created once per Cash Code, Pay Group, Payment Code
Number | Position | Data type/size | Field | Description | Instructions | Notes |
---|---|---|---|---|---|---|
1 | 1-40 | Alpha/numeric (40) | Application Header | |||
2 | 41-48 | Alpha/numeric (8) | Transaction Code | BETFOR99 | ||
3 | 49-59 | Numeric (11) | Enterprise Number | BankTransactionCode.ElectronicPaymentOrganizationIdentifier or PayablesElectronicTransferID.OrganizationIdentifier | ||
4 | 60-70 | Alpha/numeric (11) | Reserved | Spaces | ||
5 | 71-74 | Numeric (4) | Sequence Control | PayablesElectronicTransferID.SequenceCounter | ||
6 | 75-80 | Alpha/numeric (6) | Reserved | Spaces | ||
7 | 81-84 | Numeric (4) | Production Date | System Date | ||
8 | 85-88 | Numeric (4) | Number of Payments | |||
9 | 89-103 | Numeric (15) | Total Amount Batch | The amounts are a total of all debit and credit amounts, however both amounts are totaled as whole amounts. So if you have a payment of $100 and a credit memo of -$70 the total will not be $30. It will be $170 | ||
10 | 104-108 | Numeric (5) | Number of records | Number of records | Indicates the total number of records within each batch. A batch means transactions from and including the start of batch record to and including the endo fo batch record. A file or transmission may contain several batches, but these must be separated by a start of batch/end of batch record. | |
11 | 109-271 | Alpha/numeric (163) | Reserved | Spaces | ||
12 | 272-275 | Alpha/numeric (4) | SigilSecurity | Spaces | ||
13 | 276-276 | Alpha/numeric (1) | SigilLanguage | Spaces | ||
14 | 277-277 | Alpha/numeric (1) | SigilVersion | Spaces | ||
15 | 278-278 | Alpha/numeric (1) | SigilInterface | Spaces | ||
16 | 279-296 | Alpha/numeric (18) | SigilControl Field | Spaces | ||
17 | 297-312 | Alpha/numeric (16) | Version Software | EGENUTV | ||
18 | 313-210 | Alpha/numeric (8) | Version Bank | Spaces |