File Coverage

blib/lib/Finance/AMEX/Transaction/GRRCN/Transaction.pm
Criterion Covered Total %
statement 51 51 100.0
branch n/a
condition n/a
subroutine 44 44 100.0
pod 41 41 100.0
total 136 136 100.0


line stmt bran cond sub pod time code
1             package Finance::AMEX::Transaction::GRRCN::Transaction 0.005;
2              
3 9     9   52 use strict;
  9         14  
  9         254  
4 9     9   42 use warnings;
  9         16  
  9         222  
5              
6             # ABSTRACT: Parse AMEX Global Reconciliation (GRRCN) Transaction or summary of charge (SOC) Rows
7              
8 9     9   41 use base 'Finance::AMEX::Transaction::GRRCN::Base';
  9         16  
  9         8944  
9              
10             sub field_map {
11 82     82 1 430 my ($self) = @_;
12              
13             return [
14 82         2343 {RECORD_TYPE => [1, 10]},
15             {PAYEE_MERCHANT_ID => [11, 15]},
16             {SETTLEMENT_ACCOUNT_TYPE_CODE => [26, 3]},
17             {AMERICAN_EXPRESS_PAYMENT_NUMBER => [29, 10]},
18             {PAYMENT_DATE => [39, 8]},
19             {PAYMENT_CURRENCY => [47, 3]},
20             {SUBMISSION_MERCHANT_ID => [50, 15]},
21             {BUSINESS_SUBMISSION_DATE => [65, 8]},
22             {AMERICAN_EXPRESS_PROCESSING_DATE => [73, 8]},
23             {SUBMISSION_INVOICE_NUMBER => [81, 15]},
24             {SUBMISSION_CURRENCY => [96, 3]},
25             {MERCHANT_LOCATION_ID => [99, 15]},
26             {INVOICE_REFERENCE_NUMBER => [114, 30]},
27             {SELLER_ID => [144, 20]},
28             {CARDMEMBER_ACCOUNT_NUMBER => [164, 19]},
29             {INDUSTRY_SPECIFIC_REFERENCE_NUMBER => [183, 30]},
30             {SUBMISSION_GROSS_AMOUNT => [213, 16]},
31             {TRANSACTION_AMOUNT => [229, 16]},
32             {TRANSACTION_DATE => [245, 8]},
33             {TRANSACTION_TIME => [253, 6]},
34             {TRANSACTION_ID => [259, 15]},
35             {APPROVAL_CODE => [274, 6]},
36             {TERMINAL_ID => [280, 10]},
37             {MERCHANT_CATEGORY_CODE => [290, 4]},
38             {CARDMEMBER_REFERENCE_NUMBER => [294, 30]},
39             {ACQUIRER_REFERENCE_NUMBER => [324, 23]},
40             {DATA_QUALITY_NON_COMPLIANT_INDICATOR => [347, 1]},
41             {DATA_QUALITY_NON_COMPLIANT_ERROR_CODE_1 => [348, 4]},
42             {DATA_QUALITY_NON_COMPLIANT_ERROR_CODE_2 => [352, 4]},
43             {DATA_QUALITY_NON_COMPLIANT_ERROR_CODE_3 => [356, 4]},
44             {DATA_QUALITY_NON_COMPLIANT_ERROR_CODE_4 => [360, 4]},
45             {NON_SWIPED_INDICATOR => [364, 1]},
46             {TRANSACTION_REJECTED_INDICATOR => [365, 3]},
47             {FIRST_INSTALLMENT_AMOUNT => [368, 16]},
48             {SUBSEQUENT_INSTALLMENT_AMOUNT => [384, 16]},
49             {NUMBER_OF_INSTALLMENTS => [400, 5]},
50             {INSTALLMENT_NUMBER => [405, 5]},
51             {FILLER1 => [410, 15]},
52             {SERVICE_FEE_AMOUNT => [425, 16]},
53             {ACCELERATION_AMOUNT => [441, 16]},
54             {FILLER2 => [457, 344]},
55             ];
56             }
57              
58 82     82 1 20742 sub type {return 'TRANSACTION'}
59              
60 41     41 1 643 sub RECORD_TYPE {return $_[0]->_get_column('RECORD_TYPE')}
61 41     41 1 21136 sub PAYEE_MERCHANT_ID {return $_[0]->_get_column('PAYEE_MERCHANT_ID')}
62 41     41 1 20044 sub SETTLEMENT_ACCOUNT_TYPE_CODE {return $_[0]->_get_column('SETTLEMENT_ACCOUNT_TYPE_CODE')}
63 41     41 1 19931 sub AMERICAN_EXPRESS_PAYMENT_NUMBER {return $_[0]->_get_column('AMERICAN_EXPRESS_PAYMENT_NUMBER')}
64 41     41 1 19701 sub PAYMENT_DATE {return $_[0]->_get_column('PAYMENT_DATE')}
65 41     41 1 20225 sub PAYMENT_CURRENCY {return $_[0]->_get_column('PAYMENT_CURRENCY')}
66 41     41 1 19827 sub SUBMISSION_MERCHANT_ID {return $_[0]->_get_column('SUBMISSION_MERCHANT_ID')}
67 41     41 1 20079 sub BUSINESS_SUBMISSION_DATE {return $_[0]->_get_column('BUSINESS_SUBMISSION_DATE')}
68 41     41 1 19719 sub AMERICAN_EXPRESS_PROCESSING_DATE {return $_[0]->_get_column('AMERICAN_EXPRESS_PROCESSING_DATE')}
69 41     41 1 19843 sub SUBMISSION_INVOICE_NUMBER {return $_[0]->_get_column('SUBMISSION_INVOICE_NUMBER')}
70 41     41 1 19788 sub SUBMISSION_CURRENCY {return $_[0]->_get_column('SUBMISSION_CURRENCY')}
71 41     41 1 19723 sub MERCHANT_LOCATION_ID {return $_[0]->_get_column('MERCHANT_LOCATION_ID')}
72 41     41 1 19644 sub INVOICE_REFERENCE_NUMBER {return $_[0]->_get_column('INVOICE_REFERENCE_NUMBER')}
73 41     41 1 19645 sub SELLER_ID {return $_[0]->_get_column('SELLER_ID')}
74 41     41 1 19566 sub CARDMEMBER_ACCOUNT_NUMBER {return $_[0]->_get_column('CARDMEMBER_ACCOUNT_NUMBER')}
75 41     41 1 19781 sub INDUSTRY_SPECIFIC_REFERENCE_NUMBER {return $_[0]->_get_column('INDUSTRY_SPECIFIC_REFERENCE_NUMBER')}
76 41     41 1 19635 sub SUBMISSION_GROSS_AMOUNT {return $_[0]->_get_column('SUBMISSION_GROSS_AMOUNT')}
77 41     41 1 19968 sub TRANSACTION_AMOUNT {return $_[0]->_get_column('TRANSACTION_AMOUNT')}
78 41     41 1 19647 sub TRANSACTION_DATE {return $_[0]->_get_column('TRANSACTION_DATE')}
79 41     41 1 19639 sub TRANSACTION_TIME {return $_[0]->_get_column('TRANSACTION_TIME')}
80 41     41 1 19833 sub TRANSACTION_ID {return $_[0]->_get_column('TRANSACTION_ID')}
81 41     41 1 19747 sub APPROVAL_CODE {return $_[0]->_get_column('APPROVAL_CODE')}
82 41     41 1 19746 sub TERMINAL_ID {return $_[0]->_get_column('TERMINAL_ID')}
83 41     41 1 19790 sub MERCHANT_CATEGORY_CODE {return $_[0]->_get_column('MERCHANT_CATEGORY_CODE')}
84 41     41 1 19793 sub CARDMEMBER_REFERENCE_NUMBER {return $_[0]->_get_column('CARDMEMBER_REFERENCE_NUMBER')}
85 41     41 1 19566 sub ACQUIRER_REFERENCE_NUMBER {return $_[0]->_get_column('ACQUIRER_REFERENCE_NUMBER')}
86 41     41 1 19624 sub DATA_QUALITY_NON_COMPLIANT_INDICATOR {return $_[0]->_get_column('DATA_QUALITY_NON_COMPLIANT_INDICATOR')}
87 41     41 1 19692 sub DATA_QUALITY_NON_COMPLIANT_ERROR_CODE_1 {return $_[0]->_get_column('DATA_QUALITY_NON_COMPLIANT_ERROR_CODE_1')}
88 41     41 1 19846 sub DATA_QUALITY_NON_COMPLIANT_ERROR_CODE_2 {return $_[0]->_get_column('DATA_QUALITY_NON_COMPLIANT_ERROR_CODE_2')}
89 41     41 1 19521 sub DATA_QUALITY_NON_COMPLIANT_ERROR_CODE_3 {return $_[0]->_get_column('DATA_QUALITY_NON_COMPLIANT_ERROR_CODE_3')}
90 41     41 1 21211 sub DATA_QUALITY_NON_COMPLIANT_ERROR_CODE_4 {return $_[0]->_get_column('DATA_QUALITY_NON_COMPLIANT_ERROR_CODE_4')}
91 41     41 1 19779 sub NON_SWIPED_INDICATOR {return $_[0]->_get_column('NON_SWIPED_INDICATOR')}
92 41     41 1 19645 sub TRANSACTION_REJECTED_INDICATOR {return $_[0]->_get_column('TRANSACTION_REJECTED_INDICATOR')}
93 41     41 1 19529 sub FIRST_INSTALLMENT_AMOUNT {return $_[0]->_get_column('FIRST_INSTALLMENT_AMOUNT')}
94 41     41 1 19696 sub SUBSEQUENT_INSTALLMENT_AMOUNT {return $_[0]->_get_column('SUBSEQUENT_INSTALLMENT_AMOUNT')}
95 41     41 1 19914 sub NUMBER_OF_INSTALLMENTS {return $_[0]->_get_column('NUMBER_OF_INSTALLMENTS')}
96 41     41 1 20056 sub INSTALLMENT_NUMBER {return $_[0]->_get_column('INSTALLMENT_NUMBER')}
97 41     41 1 19893 sub SERVICE_FEE_AMOUNT {return $_[0]->_get_column('SERVICE_FEE_AMOUNT')}
98 41     41 1 19511 sub ACCELERATION_AMOUNT {return $_[0]->_get_column('ACCELERATION_AMOUNT')}
99              
100             1;
101              
102             __END__