NACHA ACH 文件输出格式
当在美国国内传送 NACHA 付款时,会使用 ACH 记录。
每个记录都是由回车控制符(折行)结束。
文件表头记录
该记录中包括公司名称和公司编号。还表示文件中条目的直接目标。
字段说明 | 位置 | 长度 | 格式 | 字段或备注 |
---|---|---|---|---|
记录类型码 | 1 | 1 | 值是 1。用于标识文件表头记录。 | |
优先级码 | 2 | 2 | 值为 01。数字越低,处理优先级越高。目前只使用了 01。 | |
填充符 | 4 | 1 | 空白 | 未用。 |
目标 ID | 5 | 9 | 在左侧添加零 | bank_hdr_bank_file_fmt_mst.ach_dest_id - 银行的汇款路线号码 |
公司 ID | 14 | 10 | 左对齐 | bank_hdr_bank_file_fmt_mst.ach_co_id - 公司编号。推荐使用联邦税号。公司 ID 在输出中显示,并带有前导零。 |
创建日期 | 24 | 6 | YYMMDD | dbo.getsitedate - 创建输入文件的日期。 |
创建时间 | 30 | 4 | HHMM | dbo.getsitedate - 创建输入文件的日期时间。 |
文件 ID | 34 | 1 | 大写 A-Z 数字 0-9 | 初始值为 A。这是用于识别多个输入文件时使用的代码。如果发出多个文件,这些文件必须具有不同的文件 ID。 |
记录大小 | 35 | 3 | 值为 094 - 每个记录的字节数。 | |
块系数 | 38 | 2 | 值为 10。 | |
格式代码 | 40 | 1 | 值是 1。 | |
目标名称 | 41 | 23 | 左对齐 | bank_hdr_mst.name - 银行名称。表单字段为 60 个字符,但是这里截断为 23。 |
公司名称 | 64 | 23 | 左对齐 | parms_mst.company - 用户所在公司的名称。表单字段为 60 个字符,但是这里截断为 23。 |
填充符 | 87 | 8 | 空白 | 未用。 |
注意: “文件表头公司名”与“批次表头记录代码”之间具有一个空格。
批次表头记录
该记录包含一个生效分录(处理)日期,它是存款到账的日期。该记录还用于识别您的公司,并且包含该批次中贷项和借项的分录说明。
字段说明 | 位置 | 长度 | 格式 | 字段或备注 |
---|---|---|---|---|
记录类型码 | 1 | 1 | 值是 5。用于标识批次表头记录. | |
服务分类码 | 2 | 3 | 此值标识批处理中的条目类型:
|
|
公司名称 | 5 | 16 | 左对齐,字母数字 | parms_mst.company - 表单字段为 60 个字符,但是这里截断为 16 个字符。 |
填充符 | 21 | 20 | 空白 | 未用。 |
公司 ID | 41 | 10 | 左对齐,字母数字 | bank_hdr_bank_file_fmt_mst.ach_co_id - 公司编号。值与文件表头记录中的“公司”相同,除非在一次传输中发送多个公司或分部。公司 ID 在输出中显示,并带有前导零。 |
分录类别 | 51 | 3 | 字母 | 值为 PPD。它用于标识类别中的分录。这里使用的标准分录类别为“预排列付款和存款”分录。 |
分录说明 | 54 | 10 | 左对齐,字母数字 | 值为凭证。这是可以打印在接收方银行对账单上的处理说明。 |
公司说明日期 | 64 | 6 | MMDDYY | dbo.getsitedate。这是用于标识处理的当前日期。可以将它打印在接收方银行对账单上。 |
生效分录(处理)日期 | 70 | 6 | YYMMDD | dbo.getsitedate。这是用于过账处理的当前日期。 |
填充符 | 76 | 3 | 空白 | 未用。 |
发起人状态码 | 79 | 1 | 值是 1。用于将银行标识为由 ACH 规则约束的保管金融机构。 | |
发起 ID | 80 | 8 | 在左侧添加零 | bank_hdr_bank_file_fmt_mst.ach_orig_id - 发起金融机构的汇款路线号码。 |
批处理序号 | 88 | 7 | 在左侧添加零 | 初始值是 1。按顺序对批次进行编号。 |
PPD 明细记录
该记录包括将存款过账到科目所需的信息,其中包括接收方名称、科目编号和付款金额等。
字段说明 | 位置 | 长度 | 格式 | 字段或备注 |
---|---|---|---|---|
记录类型码 | 1 | 1 | 值是 6。用于标识详细分录记录。 | |
处理码 | 2 | 2 | 数字 | 用于在接收金融机构作为支票账户存款时识别账户类型。 |
详细汇款路径 | 4 | 8 | 在左侧添加零 | vendor_mst.transit - 接收方金融机构的汇款路线号码。 |
校验数位 | 12 | 1 | 数字 | 由SyteLine计算的接收方金融机构汇款路线号码的第九位。 |
科目编号 | 13 | 17 | 左对齐,字母数字 | vendor_mst.account - 接收方的银行账号。 |
金额 | 30 | 10 | 左侧填补零(无小数点) | DerDomAmtApplied * 100 - 以美元为单位的处理金额,具有两位小数 |
供应商 ID | 40 | 15 | 左对齐,字母数字 | vendor_mst.vend_num - 可以将该供应商号打印在接收方银行对账单上。 |
供应商名称 | 55 | 22 | 左对齐,字母数字 | vendaddr_mst.nam e - 表单字段为 60 个字符,但是这里截断为 22 个字符。 |
填充符 | 77 | 2 | 空白 | 未用。 |
补遗 | 79 | 1 | 数字 | 值为 0 - 标识没有此处理的补遗记录。 |
详细发起人 ID | 80 | 8 | 在左侧添加零 | bank_hdr_bank_file_fmt_mst.ach_orig_id - 该值为接收方银行的发起人 ID。 |
详细顺序 | 88 | 7 | 在左侧添加零 | 初始值是 1。该值随每项付款记录递增。 |
注意: SyteLine 应付账款 EFT 文件中不包括可选的“分录明细补遗”记录。每条详细记录之间具有折行(回车符)。
批次控制合计
该记录显示在每个批处理的末尾。它显示了该批处理的合计。
字段说明 | 位置 | 长度 | 格式 | 字段或备注 |
---|---|---|---|---|
记录类型码 | 1 | 1 | 值是 8。用于标识批处理控制合计记录。 | |
服务类别 | 2 | 3 | 数字 | 此值标识批处理中的条目类型:
|
分录计数 | 5 | 6 | 数字在左侧添加零 | 该批次中处理的详细记录总数。 |
分录散列 | 11 | 10 | 数字 | 值由 SyteLine 计算。 |
借项金额合计 | 21 | 12 | 数字在左侧添加零 | 批次中借项分录的美元金额合计。 |
贷项金额合计 | 33 | 12 | 数字在左侧添加零 | 每项付款的 DerDomAmtApplied 合计 * 100。这是批处理中贷项分录的美元合计。 |
公司 ID | 45 | 10 | bank_hdr_bank_file_fmt_mst.ach_co_id - 应该与批次表头中使用的“公司 ID”匹配。公司 ID 在输出中显示,并带有前导零。 |
|
填充符 | 55 | 25 | 空白 | 未用。 |
原始 ID | 80 | 8 | 数字在左侧添加零 | bank_hdr_bank_file_fmt_mst.ach_orig_id - 这应该是发起银行的汇款路线号码。 |
顺序 | 88 | 7 | 数字在左侧添加零 | 初始值是 1。用于标识与控制记录相关的批处理编号。 |
文件控制记录
该记录提供了对已提交数据的最终检查。其中包括了块和批处理计数,以及每种分录类型的合计。
字段说明 | 位置 | 长度 | 格式 | 字段或备注 |
---|---|---|---|---|
记录类型码 | 1 | 1 | 值是 9。用于标识文件控制记录。 | |
批处理计数 | 2 | 6 | 数字在左侧添加零 | 初始值是 1。这是文件中批处理表头记录的总数。 |
块计数 | 8 | 6 | 数字在左侧添加零 | 系统计算明细记录数量,加上所有表头和控制记录,然后除以 10 以获得块计数。如果有余数,则会在块计数中添加 1。 |
分录计数 | 14 | 8 | 数字在左侧添加零 | 这是文件中明细记录的总数。 |
分录散列 | 22 | 10 | 数字在左侧添加零 | 值由 SyteLine 计算。 |
借项合计 | 32 | 12 | 数字在左侧添加零 | 文件中借项分录的美元金额合计。 |
贷方合计 | 44 | 12 | 数字在左侧添加零 | 每项付款的 DerDomAmtApplied 合计 * 100。这是文件内贷项分录的美元合计。 |
保留 | 56 | 39 | 空白 | 将该保留字段留空。 |