Finance::AMEX::Transaction::CBNOT::Detail - Parse AMEX Chargeback Notification Files (CBNOT) Detail Rows
version 0.002
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 'DETAIL') { print $record->REC_TYPE . "\n"; } } # to parse a single line my $record = $cbnot->parse_line('line from a CBNOT file'); if ($record->type eq 'DETAIL') { ... }
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.
Returns a new Finance::AMEX::Transaction::CBNOT::Detail object.
my $record = Finance::AMEX::Transaction::CBNOT::Detail->new(line => $line);
This will always return the string DETAIL.
print $record->type; # DETAIL
Returns the full line that is represented by this object.
print $record->line;
This field contains the constant literal "D", a record type code that indicates that this is a Chargeback Notifications (CBNOT) File Detail Record.
print $record->REC_TYPE; # D
This field contains the Service Establishment (SE) Number that STARS searches for and routes data to, based on the setup for the corresponding CBNOT data type (for outbound data).
This field contains the Cardmember Account Number that corresponds to this chargeback.
This field contains the unique, American Express-assigned, current case (identification) number for this transaction, if this is a chargeback notifica- tion or final resolution.
For Customer Service Systems, you can use the CSS_CASE_NUMBER.
For SIREN/SOFA (SE Information Retrieval Entry Network/SE Online Financial Adjustment), you can use the SS_CASE_NUMBER.
For FINCAP transactions (indicated when FINCAP_TRACKING_ID is not blank), this field contains the FINCAP Tracking ID.
See CURRENT_CASE_NUMBER
Internal use only.
This field contains a case number from various sources, or is blank (character space filled), depending on the specific details of this record. (See also CSS_P_CASE_NUMBER)
This field contains a case number from various sources, or is blank (character space filled), depending on the specific details of this record. (See also PREVIOUS_CASE_NUMBER)
This field contains a code that indicates if this record is a Resolution Letter:
Note: If this value is "Y", then CB_RESOLUTION_ADJ_NUMBER should be populated.
This field contains a code that indicates the originating system that transmitted the file:
Note: Internal use only
This field contains a code that indicates the system to which STARS (Split, Transmit And Receive System) should forward rejects:
This field contains a code that indicates the system to which STARS (Split, Transmit And Receive System) should forward disputes from the SE:
This field contains the date of the adjustment. The format is: CCYYMMDD
For example, the date October 21st, 2010 would appear as: 20101021
This field contains the date of the charge. The format is: CCYYMMDD
This field contains the American Express ID number of the representative that did the adjustment.
Note: Internal use only.
This field contains a code that indicates the case type assigned to this chargeback by American Express. The entry in this field determines the type of response code that appears in the response file.
This field may contain the store or location number where the charge occurred. Also, refer to LOC_REF_NUMBER.
This field contains a three-character, chargeback reason code.
Numeric, signed, with decimal point and two decimal places, right justified, zero filled
This field contains the adjustment or chargeback amount, which can be a debit or credit. The format for this field is a one-digit "sign,"” followed by a 13-digit "dollar amount" (right justified and zero filled), one-digit "decimal point," and two-digit "cents." For negative amounts, the first-digit "sign" is a negative sign. For a "negative $100.00", this would appear as:
0 1 12345678901234567 ----------------- -0000000000100.00
For a positive amount, the first-digit "sign" is a blank (character space), which would appear as:
0 1 12345678901234567 ----------------- _0000000000100.00
Note: The underline character ( _ ) represents a character space.
This field contains the Chargeback Adjustment Number.
Note: This is the Adjustment Number that appears in the associated financial file and corresponds to the financial reporting specification.
This field contains the Chargeback Resolution Adjustment Number, if applicable. Normally blank (character space filled), this field is only populated when this record is a combination resolution and adjustment (such as in the reversal of a prior chargeback).
This field contains the merchant’s reference number that was assigned to the transaction by the merchant when the charge was originated, to help identify this specific charge. For Reference Numbers greater than 12 digits, refer to IND_REF_NUMBER.
This field contains the statement bill amount or ROC amount, which can be a debit or credit. The format for this field is a one-digit "sign," followed by a 13-digit "dollar amount" (right justified and zero filled), one-digit "decimal point," and two- digit "cents."
For negative amounts, the first-digit "sign" is a negative sign, which would appear as:
0 1 12345678901234567 ----------------- -2345678901234.67
0 1 12345678901234567 ----------------- _2345678901234.67
Where the underline character represents a character space.
Note: The entries in CB_AMOUNT and BILLED_AMOUNT fields may differ.
This field contains the Summary of Charge (SOC) or Summary Amount, which can be a debit or credit. The format for this field is a one-digit "sign," followed by a 13-digit "dollar amount" (right justified and zero filled), one-digit "decimal point," and two-digit "cents."
This field contains the Summary of Charge (SOC) Invoice Number that corresponds to the batch in which the merchant submitted the charge for payment.
This field contains the Record of Charge (ROC) Invoice Number that corresponds to the charge that the merchant submitted for payment.
This field contains the Foreign Amount (the disputed amount, if the charge was made in a currency other than US Dollars).
If unused, this field is character space filled.
This field contains the currency code that corresponds to the value in the FOREIGN_AMT field.
This field contains a code that indicates whether additional support is being forwarded. The codes are:
This field contains the Cardmember’s name, concatenated from the following fields:
This field contains a secondary Card member name. Usually, this is the name of a supplemental cardholder to the primary Card member’s account.
This field contains the first line of the Card member’s street address.
This field contains the second line of the Card member’s street address.
This field contains the city and state portion of the Card member's address.
This field contains the ZIP code portion of the Cardmember's address.
For U.S. addresses, this is may be a 9-digit "5+4" ZIP code, or a 5-digit ZIP code, left justified and zero filled to 9 digits.
Alphanumeric Canadian postal codes are left justified and padded with zeros or character spaces.
If ZIP code is unavailable, this field is zero filled.
This field contains the first name of the Cardmember who made the charge.
Note: The value in this field is a component of the entry in the CM_NAME1 field.
This field contains the middle name of the Card member who made the charge.
This field contains the last name of the Card member who made the charge.
Developer note: the documentation for this field sometimes refers to it as CM_ACCT_NUM, which conflicts with an earlier field.
If the Card member has a different name, this field contains the Card member’s original name at the time the charge was made.
If this field is populated, it contains the Cardmember’s original name, concatenated from the following fields:
If the Card member has a different name, this field contains the Card member’s original first name at the time the charge was made.
Note: The value in this field is a component of the entry in the CM_ORIG_NAME field.
If the Card member has a different name, this field contains the Card member’s original middle name at the time the charge was made.
If the Card member has a different name, this field contains the Card member’s original last name at the time the charge was made.
Case notes may appear in the fields labeled Note1 through Note7.
This field contains the Triumph Sequence Number and is an internal field used by American Express.
This record only pertains to airline case types; e.g., CASE_TYPE = AIRDS, AIRLT, AIRRT or AIRTB). For these case types this field may contain the airline passenger ticket number.
This record only pertains to airline case types. If this record involves multiple airline tickets, this field contains the sequence number.
If this record pertains to a hotel chargeback, this field contains the hotel reference number (if applicable).
For all other transactions — this field is unused and is character space filled.
This field contains the merchandise order number (if applicable).
This field contains the merchandise order date (if applicable).
The format is: CCYYMMDD
This field contains the cancellation number (if applicable).
This field contains the cancellation date (if applicable).
For FINCAP transactions — This field contains the FINCAP load number that is composed of the Julian date, the PCID and the sequence number.
The format is: JJJPPPPPPSS
For all other transactions — This field is unused and is character space filled.
Note: This field is part of the “FINCAP Area.”
For FINCAP transactions — This field contains the FINCAP file sequence number.
For FINCAP transactions — this field contains the FINCAP batch number.
For FINCAP transactions — This field contains the batch invoice date.
This field is reserved for use by upstream host systems that may download undefined “free form” data. This field may contain additional information pertaining to the case. If unused, it is character space filled.
Note: This field is part of the “Label Data Area.”
This field contains the original Card Member account number that corresponds to this response. If not applicable the current Card Member Account number will appear.
This field contains a Case Number from various sources, or is blank (character space filled), depending on the specific details of this record.
This field contains the two-character, Industry Format Code. If unused, this field is character space filled.
Note: Tildes (~) represent character spaces.
This field contains the SE Reference Number assigned to a transaction by the merchant, at the time the sale is executed.
This SE Reference Number may refer to the location, ROC, order number, invoice number, or any other merchant-assigned combination of letters and numerals that will assist the merchant in retrieving supporting documentation in case of inquiry or other post-transaction correspondence.
This field corresponds to the Invoice Reference Number, Field 26 (Positions 220-249), of the CAPN Submission File TAB record.
This field contains the Location Reference Number (a merchant-assigned name or internal store identifier code) that identifies the individual store or location where the disputed charge occurred; (i.e., Location Number).
This field corresponds to the Merchant Location ID, Field 19 (positions 127-141), of the CAPN Submission File TAB Record.
This field is used for airline transactions only. It contains the full (concatenated) Passenger Name associated with the charge. Note: This field is applicable to the following case types: AIRDS, AIRLT, AIRRT and AIRTB.
This field is used for airline transactions only. It contains the first name of the passenger associated with the charge.
Note: This field is applicable to the following case types: AIRDS, AIRLT, AIRRT and AIRTB.
This field is used for airline transactions only. It contains the middle name of the passenger associated with the charge.
This field is used for airline transactions only. It contains the last name of the passenger associated with the charge.
This field is used for airline transactions only. It contains the airline processing date, in Julian date format.
This field is used for airline transactions only. It contains the airline ticket Return Date.
The format is: YYMMDD
For example, the date October 21, 2012 would appear as: 121021
Note: This field is applicable to the AIRRT case type only.
This field is used for airline transactions only. It contains the returned-ticket, Credit Receipt Number.
This field is used for airline transactions only. It contains the name of the person to whom the ticket was returned.
This field is used for airline transactions only. It contains the street address where the ticket was returned.
This field contains a code that indicates if a Card deposit was given for the reservation.
Note: This field is applicable to the AREXS case type only.
This field contains a code that indicates if the reservation was assured.
This field contains a code that indicates if the reservation was cancelled.
This field contains the date when the reservation was cancelled.
This field contains the time zone that corresponds to the time when the reservation was cancelled.
This field contains the date for which the reservation was made.
This field contains the location applicable to the reservation.
This field contains the date on which the reservation was made.
This field contains the car rental agreement number.
Note: This field is applicable to the CARRD case type only.
This field contains a description of the type of merchandise that was purchased, but not received.
Note: This field is applicable to the NAXMG and NAXMR case types only.
This field contains a code that indicates if the merchandise was returned.
Note: This field is applicable to the NAXMR case type only.
This field contains the name of the location to which the merchandise was returned.
This field contains the date that the merchandise was returned.
This field contains the method used to ship the returned merchandise.
This field contains free-form text that explains the reason why the merchandise was returned.
This field contains a code that indicates if the store or business issued a credit for returned merchandise.
Finance::AMEX::Transaction::CBNOT::Detail - Object methods for AMEX chargeback notification file detail records.
Tom Heady <theady@ziprecruiter.com>
This software is copyright (c) 2018 by ZipRecruiter.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
To install Finance::AMEX::Transaction, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Finance::AMEX::Transaction
CPAN shell
perl -MCPAN -e shell install Finance::AMEX::Transaction
For more information on module installation, please visit the detailed CPAN module installation guide.