NAME
Finance::AMEX::Transaction::EPTRN::Summary - Parse AMEX Transaction/Invoice Level Reconciliation (EPTRN) Summary Rows
VERSION
version 0.005
SYNOPSIS
use Finance::AMEX::Transaction;
my $epraw = Finance::AMEX::Transaction->new(file_type => 'EPTRN');
open my $fh, '<', '/path to EPTRN file' or die "cannot open EPTRN file: $!";
while (my $record = $epraw->getline($fh)) {
if ($record->type eq 'SUMMARY') {
print $record->PAYMENT_DATE . "\n";
}
}
# to parse a single line
my $record = $epraw->parse_line('line from an EPTRN file');
if ($record->type eq 'SUMMARY') {
...
}
DESCRIPTION
You would not normally be calling this module directly, it is one of the possible return objects from a call to Finance::AMEX::Transaction's getline method.
METHODS
new
Returns a new Finance::AMEX::Transaction::EPTRN::Summary object.
my $record = Finance::AMEX::Transaction::EPTRN::Summary->new(line => $line);
type
This will always return the string SUMMARY.
print $record->type; # SUMMARY
line
Returns the full line that is represented by this object.
print $record->line;
field_map
Returns a hashref where the name is the record name and the value is an arrayref of the start position and length of that field.
# print the start position of the PAYMENT_YEAR field
print $record->field_map->{PAYMENT_YEAR}->[0]; # 31
AMEX_PAYEE_NUMBER
This field contains the Service Establishment (SE) Number of the merchant that received the payment from American Express.
Note: SE Numbers are assigned by American Express.
AMEX_SORT_FIELD_1
This field is always zero filled in the Summary Record.
AMEX_SORT_FIELD_2
This field is always zero filled in the Summary Record.
PAYMENT_YEAR
This field contains the Payment Year that corresponds to the entry in the Julian Date subfield of PAYMENT_NUMBER.
PAYMENT_NUMBER
This field contains the Payment Number, a reference number used by the American Express Payee to reconcile the daily settlement to the daily payment.
PAYMENT_NUMBER_DATE
The Julian date of the payment.
PAYMENT_NUMBER_TYPE
An alpha character assigned by the American Express settlement system.
PAYMENT_NUMBER_NUMBER
The Number of the payment.
RECORD_TYPE
This field contains the constant literal “1”, a Record Type code that indicates that this is a Summary Record.
DETAIL_RECORD_TYPE
This field contains the Detail Record Type code that indicates the type of record used in this transaction.
For Summary Records, this entry is always “00” (zeros).
PAYMENT_DATE
This field contains the Payment Date, which is the date the funds are actually available to the payee’s depository institution.
The format is: YYYYDDD
PAYMENT_AMOUNT
This field contains the actual Payment Amount paid to the payee for the activities listed in the Detail Records.
Note: For US Dollar (USD) and Canadian Dollar (CAD) transactions, two decimal places are implied.
A debit amount (positive) is indicated by an upper-case alpha code used in place of the last digit in the amount.
The debit codes and their numeric equivalents are listed below:
A credit amount (negative) is also indicated by an upper-case alpha code used in place of the last digit in the amount.
The credit codes and their numeric equivalents are listed below:
The following are examples of how amounts would appear:
Amount Debit Credit
$1.11 0000000011A 0000000227}
$345.05 0000003450E 0000003450N
$22.70 0000000227{ 0000000011J
DEBIT_BALANCE_AMOUNT
This field contains the Debit Balance Amount, which is a negative value if the merchant has an opening debit balance for the payment listed in PAYMENT_AMOUNT.
ABA_BANK_NUMBER
This field contains the ABA Bank Number to which the value in PAYMENT_AMOUNT, was transferred through the ACH banking system.
SE_DDA_NUMBER
This field contains the payee’s Direct Deposit Account Number to which the value in PAYMENT_AMOUNT, was transferred through the ACH banking system.
NAME
Finance::AMEX::Transaction::EPTRN::Summary - Object methods for AMEX Transaction/Invoice Level Reconciliation (EPTRN) Summary Rows
AUTHOR
Tom Heady <cpan@punch.net>
COPYRIGHT AND LICENSE
This software is copyright (c) 2022 by ZipRecruiter/Tom Heady.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.