NAME

Finance::AMEX::Transaction::CBNOT::Header - Parse AMEX Chargeback Notification Files (CBNOT) Header Rows

VERSION

version 0.005

SYNOPSIS

use Finance::AMEX::Transaction;

my $cbnot = Finance::AMEX::Transaction->new(file_type => 'CBNOT');
open my $fh, '<', '/path to CBNOT file' or die "cannot open CBNOT file: $!";

while (my $record = $cbnot->getline($fh)) {

 if ($record->type eq 'HEADER') {
   print $record->FILE_CREATION_DATE . "\n";
 }
}

# to parse a single line

my $record = $cbnot->parse_line('line from a CBNOT file');
if ($record->type eq 'HEADER') {
  ...
}

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::CBNOT::Header object.

my $record = Finance::AMEX::Transaction::CBNOT::Header->new(line => $line);

type

This will always return the string HEADER.

print $record->type; # HEADER

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 FILE_CREATION_DATE field
print $record->field_map->{FILE_CREATION_DATE}->[0]; # 6

REC_TYPE

This field contains the constant literal "H", a Record Type code that indicates that this is a Chargeback Notifications (CBNOT) File Header Record.

print $record->REC_TYPE; # H

AMEX_APPL_AREA

This field contains the internal American Express data.

APPLICATION_SYSTEM_CODE

Not defined in the documentation.

FILE_TYPE_CODE

Not defined in the documentation.

FILE_CREATION_DATE

Not defined in the documentation.

SAID

This field contains the American Express-assigned, six-character, Service Access ID (SAID).

DATATYPE

This field contains the constant literal "CBNOT", a Data Type code that indicates that these are chargebacks from upstream systems.

CCYYDDD

This field contains the STARS creation date, which is the date that American Express transmitted the file to the merchant.

HHMMSS

The hour, minute, and seconds of the STARS creation date.

NAME

Finance::AMEX::Transaction::CBNOT::Header - Object methods for AMEX chargeback notification file header records.

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.