Sie sind auf Seite 1von 6

XDO file name: Mapping of Payment Format:

Date: 3/9/2006
IBYDE_N_US_en.rtf Generic US NACHA Format

Format Setup:

Hint: Define formatting options


<TEMPLATE TYPE> FIXED_POSITION_BASED
<OUTPUT CHARACTER SET> iso-8859-1
<CASE CONVERSION> Upper
<NEW RECORD CHARACTER> Carriage Return

Format Data Levels:


Hint: Define data levels that are needed in the format which do not exist in data extract
<DEFINE LEVEL> PayMethodPayerInstrumentPayDate
<BASE LEVEL> OutboundPayment
<GROUPING CRITERIA> PaymentMethod/PaymentMethodFormatValue,
Payer/PartyInternalID,
BankAccount/BankAccountInternalID,
PaymentDate
<END DEFINE LEVEL> PayMethodPayerInstrumentPayDate

Sequences:

Hint: Define sequence generators


<DEFINE SEQUENCE> PaymentsSeq
<RESET AT LEVEL> PayMethodPayerInstrumentPayDate
<INCREMENT BASIS> LEVEL
<START AT> 1
<END DEFINE SEQUENCE > PaymentsSeq

<DEFINE SEQUENCE> US_NACHA_DAILY_SEQ


<RESET AT LEVEL> PERIODIC_SEQUENCE
<INCREMENT BASIS> LEVEL
<START AT> /
OutboundPaymentInstruction/PaymentInstruction
Info/PaymentSequence[SequenceName=
US_NACHA_DAILY_SEQ]/LastValue + 1
<MAXIMUM> 26
<END DEFINE SEQUENCE > US_NACHA_DAILY_SEQ

<DEFINE SEQUENCE> BatchSeq


<RESET AT LEVEL> OutboundPaymentInstruction
<INCREMENT BASIS> LEVEL
<START AT> 1
<MAXIMUM> 9999999999
<END DEFINE SEQUENCE > BatchSeq
Concatenated Records:

Hint: Define fields that are composed of concatenated records


<DEFINE CONCATENATION> AddendaContent
<BASE LEVEL> DocumentPayable
<ELEMENT> RMR*IV* || DocumentNumber/ReferenceNumber
|| ** || PaymentAmount/Value || \
<DELIMITER>
<END DEFINE CONCATENATION> AddendaContent

Format Data Records:


Hint: This is the body of the format. Define your format records here.
Create one table for each record or group of records that are at the same level.

<BEGIN FILLER BLOCK> AllRecordsBlock


<FILLER CHARACTER> 9
<BLOCK SIZE> 10

<LEVEL> OutboundPaymentInstruction
<POSITION> <LENGTH> <FORMAT> <PAD> <DATA> <COMMENTS
<NEW RECORD> FILE_HEADER
1 1 Number L, 0 1 Record Type C
2 2 Number L, 0 1 Priority Code
4 1 Alpha R, Immediate Des
position is a bl
5 9 Number L, 0 PaymentInstructionInfo/Paymen Immediate Des
tSystemAccount/AccountSetting second to the t
s[Name=RECEIVING_BANK_9DIGIT field is the ABA
_ABA]/Value the receiving b
file. The ABA ro
nine digit numb
three parts. Th
the Federal Re
Symbol; the ne
the ABA Institu
the last one dig
14 1 Number L, 0 1 Immediate Orig
defined ANS
15 9 Alpha L, 0 REPLACE(PaymentInstructionInf Immediate Orig
o/PaymentSystemAccount/Accoun
tSettings[Name=SENDER_ID]/V
alue, -)
24 6 Date, SYSDATE File Creation D
YYMMDD
30 4 Date, SYSDATE File Creation T
HHMM
34 1 Alpha R, DECODE(SEQUENCE_NUMBER(US_NAC File ID Modifie
HA_DAILY_SEQ), 1, A, 2,
B, 3, C, 4, D, 5, E,
6, F, 7, G, 8, H, 9,
I, 10, J, 11, K, 12,
L, 13, M, 14, N, 15,
O, 16, P, 17, Q, 18,
R, 19, S, 20, T, 21,
U, 22, V, 23, W, 24,
X, 25, Y, 26, Z)
35 3 Number L, 0 94 Record Size
38 2 Number L, 0 10 Blocking Facto
40 1 Number L, 0 1 Format Code
41 23 Alpha R, PaymentInstructionInfo/Paymen Immediate Des
tSystemAccount/AccountName
64 23 Alpha R, PaymentInstructionInfo/Paymen Immediate Orig
tSystemAccount/AccountSetting
s[Name=SENDER_NAME]/Value
87 8 Alpha R, Optional Refer

<LEVEL> PayMethodPayerInstrumentPayDate
<POSITION> <LENGTH> <FORMAT> <PAD> <DATA> <COMMENTS
<NEW RECORD> BATCH_HEADER
1 1 Number L, 0 5 Record Type C
2 3 Number L, 0 200 Service Class
5 16 Alpha R, OutboundPayment/Payer/LegalEn Company Nam
tityName
21 20 Alpha R, / Company Disc
OutboundPaymentInstruction/Pa
ymentInstructionInfo/Instruct
ionReferenceNumber
41 1 Number L, 0 1 Company Iden
position is ANS
(Identification C
1 = IRS Emplo
Number (EIN)
3 = Data Unive
Systems (DUN
9 = Mutually D
42 9 Alpha L, 0 REPLACE(OutboundPayment/Payer Company Iden
/LegalEntityRegistrationNumbe Same as posit
r, -) header rec

51 3 Alpha R, OutboundPayment/PaymentMethod Standard Entry


/PaymentMethodFormatValue
54 10 Alpha R, / Company Entr
OutboundPaymentInstruction/Pa
ymentInstructionInfo/UserAssi
gnedRefCode
64 6 Alpha R, Company Des
used
70 6 Date, OutboundPayment/PaymentDate Effective Entry
YYMMDD
76 3 Alpha R, Settlement dat
ACH operator.
79 1 Number L, 0 1 Originator Stat
80 8 Number L, 0 OutboundPayment/BankAccount/B Originating DF
ranchNumber is the first 8 dig
routing numbe
bank (internal
check digit.
88 7 Number L, 0 SEQUENCE_NUMBER(BatchSeq) Batch Number
sequence num
it must match p
batch control r

<LEVEL> OutboundPayment
<SORT ASCENDING> Payee/Name
<POSITION> <LENGTH> <FORMAT> <PAD> <DATA> <COMMENTS
<NEW RECORD> ENTRY_DETAIL_CR
1 1 Number L, 0 6 Record type
2 2 Alpha R, ' ' DECODE(PaymentAmount/Value, Transaction Co
0,'23','22')

4 9 Number L, 0 PayeeBankAccount/BranchNumber Receiving DFI


(including chec
13 17 Alpha R, ' ' PayeeBankAccount/BankAccountNu DFI Account N
mber
30 10 Number, L, 0 ROUND(PaymentAmount/Value*100) Amount
Integer
40 15 Alpha R, ' ' PaymentNumber/PaymentReference Identification N
Number
55 22 Alpha R, ' ' Payee/Name Receiving Com
Number
77 2 Alpha R, ' ' Discretionary D
79 1 Number L, 0 1 Addenda recor
80 8 Number L, 0 BankAccount/BranchNumber ODFI Routing
88 7 Number L, 0 SEQUENCE_NUMBER(PaymentsSeq) Entry Detail Se
sequence start
batch
<NEW RECORD> ADDENDA
<DISPLAY CONDITION> PaymentMethod/PaymentMethodFormatValue = CCDP OR
PaymentMethod/PaymentMethodFormatValue = PPDP
1 1 Number L, 0 7 Record type
2 2 Alpha L, 0 5 Addenda Type

4 80 Alpha R, ' ' AddendaContent Payment Relat


84 4 Number L, 0 1 Addenda Sequ
88 7 Number L, 0 SEQUENCE_NUMBER(PaymentsSeq) Entry Detail Se
value as in pro
ENTRY_DETA
<END LEVEL> OutboundPayment

<LEVEL> PayMethodPayerInstrumentPayDate
<POSITION> <LENGTH> <FORMAT> <PAD> <DATA> <COMMENTS
<NEW RECORD> ENTRY_DETAIL_DR
1 1 Number L, 0 6 Record Type C
2 2 Alpha R, ' ' DECODE(SUM(OutboundPayment/Pa Transaction Co
ymentAmount/Value)*100,
0,'28','27')

4 9 Number L, 0 OutboundPayment/PayeeBankAcco Receiving DFI


unt/BranchNumber including the c
13 17 Alpha R, ' ' InstructionGrouping/BankAccou DFI Account N
nt/BankAccountNumber
30 10 Number, L, 0 ROUND(SUM(OutboundPayment/Pay Amount
Integer mentAmount/Value)*100)
40 15 Alpha R, ' ' BATCH_NAME Indicates the n
name
55 22 Alpha R, ' ' OutboundPayment/Payer/PartyNu Batch referenc
mber || ||
OutboundPayment/BankAccount/B
ankAccountNumber || ||
TO_CHAR(OutboundPayment/Payme
ntDate, MMDD)
77 2 Alpha R, ' ' Discretionary D
79 1 Number L, 0 0 Addenda recor
80 8 Number L, 0 OutboundPayment/BankAccount/B ODFI Routing
ranchNumber
88 7 Number L, '0' COUNT(OutboundPayment) + 1 Trace Number
<NEW RECORD> BATCH_CONTROL
1 1 Number L, 0 8 Record Type C
2 3 Number L, 0 200 Service Class
5 6 Number L, 0 COUNT(ENTRY_DETAIL_CR) + Entry/Addenda
COUNT(ADDENDA) + 1
11 10 Number L, 0 SUBSTR(to_char(SUM(TO_NUMBER( Entry Hash
SUBSTR(OutboundPayment/PayeeB
ankAccount/BranchNumber,1,8))
)
+TO_NUMBER(SUBSTR(OutboundPay
ment/PayeeBankAccount/BranchN
umber,1,8))),
Length(SUM(TO_NUMBER(SUBSTR(O
utboundPayment/PayeeBankAccou
nt/BranchNumber,1,8)))
+TO_NUMBER(SUBSTR(OutboundPay
ment/PayeeBankAccount/BranchN
umber,1,8)))-9 )
21 12 Number, L, 0 ROUND(SUM(OutboundPayment/Pay Total Debit Dol
Integer mentAmount/Value)*100)
33 12 Number, L, 0 ROUND(SUM(OutboundPayment/Pay Total Credit Do
Integer mentAmount/Value)*100) Batch
45 1 Number L, 0 1 Company Iden
position is ANS
(Identification C
1 = IRS Emplo
Number (EIN)
3 = Data Unive
Systems (DUN
9 = Mutually D
46 9 Alpha L,0 REPLACE(OutboundPayment/Payer Company Iden
/LegalEntityRegistrationNumbe Same as posit
r, -) header rec
55 25 Alpha R, Message Auth
AND Reserved
80 8 Number L, 0 OutboundPayment/BankAccount/B Originating DF
ranchNumber
88 7 Number L, 0 SEQUENCE_NUMBER(BatchSeq) Batch Number
of Record 5
<END LEVEL> PayMethodPayerInstrumentPayDate

<LEVEL> OutboundPaymentInstruction
<POSITION> <LENGTH> <FORMAT> <PAD> <DATA> <COMMENTS
<NEW RECORD> FILE_CONTROL
1 1 Number L, 0 9 Record Type C
2 6 Number L, 0 1 Batch Count
8 6 Number L, 0 CEIL(((COUNT(ENTRY_DETAIL_CR) Block Count. T
+ COUNT(ADDENDA) + records in the
COUNT(BATCH_HEADER) + and rounded u
COUNT(ENTRY_DETAIL_DR) + including both
COUNT(BATCH_CONTROL))+2) DIV File Control Re
(10)) in the block co
14 8 Number L, 0 COUNT(ENTRY_DETAIL_CR) + Entry/Addenda
COUNT(ADDENDA) +
COUNT(ENTRY_DETAIL_DR)
22 10 Number L, 0 SUBSTR(to_char(SUM(TO_NUMBER( Entry Hash
SUBSTR(OutboundPayment/PayeeB
ankAccount/BranchNumber,1,8))
)
+TO_NUMBER(SUBSTR(OutboundPay
ment/PayeeBankAccount/BranchN
umber,1,8))),
Length(SUM(TO_NUMBER(SUBSTR(O
utboundPayment/PayeeBankAccou
nt/BranchNumber,1,8)))
+TO_NUMBER(SUBSTR(OutboundPay
ment/PayeeBankAccount/BranchN
umber,1,8)))-9 )
32 12 Number, L, 0 ROUND(SUM(OutboundPayment/Pay Total Debit Ent
Integer mentAmount/Value)*100) File
44 12 Number, L, 0 ROUND(SUM(OutboundPayment/Pay Total Credit En
Integer mentAmount/Value)*100) File
56 39 Alpha R, Blank

<END LEVEL> OutboundPaymentInstruction

<END FILLER BLOCK>


AllRecordsBlock

Das könnte Ihnen auch gefallen