File Coverage

blib/lib/Finance/AMEX/Transaction/GRRCN/Transaction.pm
Criterion Covered Total %
statement 50 50 100.0
branch n/a
condition n/a
subroutine 44 44 100.0
pod 36 41 87.8
total 130 135 96.3


line stmt bran cond sub pod time code
1             package Finance::AMEX::Transaction::GRRCN::Transaction;
2             $Finance::AMEX::Transaction::GRRCN::Transaction::VERSION = '0.003';
3 7     7   50 use strict;
  7         15  
  7         190  
4 7     7   37 use warnings;
  7         14  
  7         178  
5              
6             # ABSTRACT: Parse AMEX Global Reconciliation (GRRCN) Transaction or summary of charge (SOC) Rows
7              
8 7     7   36 use base 'Finance::AMEX::Transaction::GRRCN::Base';
  7         15  
  7         7615  
9              
10             sub field_map {
11             return {
12 80     80 0 2148 RECORD_TYPE => [1, 10],
13             PAYEE_MERCHANT_ID => [11, 15],
14             SETTLEMENT_ACCOUNT_TYPE_CODE => [26, 3],
15             AMERICAN_EXPRESS_PAYMENT_NUMBER => [29, 10],
16             PAYMENT_DATE => [39, 8],
17             PAYMENT_CURRENCY => [47, 3],
18              
19             SUBMISSION_MERCHANT_ID => [50, 15],
20             BUSINESS_SUBMISSION_DATE => [65, 8],
21             AMERICAN_EXPRESS_PROCESSING_DATE => [73, 18],
22             SUBMISSION_INVOICE_NUMBER => [81, 15],
23             SUBMISSION_CURRENCY => [96, 3],
24              
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             SERVICE_FEE_AMOUNT => [425, 16],
52             ACCELERATION_AMOUNT => [441, 16],
53             };
54             }
55              
56 80     80 1 19663 sub type {return 'TRANSACTION'}
57              
58 40     40 1 17199 sub RECORD_TYPE {return $_[0]->_get_column('RECORD_TYPE')}
59 40     40 1 18826 sub PAYEE_MERCHANT_ID {return $_[0]->_get_column('PAYEE_MERCHANT_ID')}
60 40     40 1 18616 sub SETTLEMENT_ACCOUNT_TYPE_CODE {return $_[0]->_get_column('SETTLEMENT_ACCOUNT_TYPE_CODE')}
61 40     40 1 18468 sub AMERICAN_EXPRESS_PAYMENT_NUMBER {return $_[0]->_get_column('AMERICAN_EXPRESS_PAYMENT_NUMBER')}
62 40     40 1 18596 sub PAYMENT_DATE {return $_[0]->_get_column('PAYMENT_DATE')}
63              
64 40     40 1 16833 sub PAYMENT_CURRENCY {return $_[0]->_get_column('PAYMENT_CURRENCY')}
65 40     40 1 18255 sub SUBMISSION_MERCHANT_ID {return $_[0]->_get_column('SUBMISSION_MERCHANT_ID')}
66 40     40 1 18332 sub BUSINESS_SUBMISSION_DATE {return $_[0]->_get_column('BUSINESS_SUBMISSION_DATE')}
67 40     40 1 17354 sub AMERICAN_EXPRESS_PROCESSING_DATE {return $_[0]->_get_column('AMERICAN_EXPRESS_PROCESSING_DATE')}
68 40     40 1 18603 sub SUBMISSION_INVOICE_NUMBER {return $_[0]->_get_column('SUBMISSION_INVOICE_NUMBER')}
69 40     40 1 18712 sub SUBMISSION_CURRENCY {return $_[0]->_get_column('SUBMISSION_CURRENCY')}
70              
71 40     40 1 18755 sub MERCHANT_LOCATION_ID {return $_[0]->_get_column('MERCHANT_LOCATION_ID')}
72 40     40 1 18380 sub INVOICE_REFERENCE_NUMBER {return $_[0]->_get_column('INVOICE_REFERENCE_NUMBER')}
73 40     40 1 18610 sub SELLER_ID {return $_[0]->_get_column('SELLER_ID')}
74 40     40 1 17571 sub CARDMEMBER_ACCOUNT_NUMBER {return $_[0]->_get_column('CARDMEMBER_ACCOUNT_NUMBER')}
75 40     40 1 18691 sub INDUSTRY_SPECIFIC_REFERENCE_NUMBER {return $_[0]->_get_column('INDUSTRY_SPECIFIC_REFERENCE_NUMBER')}
76 40     40 1 18790 sub SUBMISSION_GROSS_AMOUNT {return $_[0]->_get_column('SUBMISSION_GROSS_AMOUNT')}
77 40     40 1 18627 sub TRANSACTION_AMOUNT {return $_[0]->_get_column('TRANSACTION_AMOUNT')}
78 40     40 1 18983 sub TRANSACTION_DATE {return $_[0]->_get_column('TRANSACTION_DATE')}
79 40     40 1 18770 sub TRANSACTION_TIME {return $_[0]->_get_column('TRANSACTION_TIME')}
80 40     40 1 18955 sub TRANSACTION_ID {return $_[0]->_get_column('TRANSACTION_ID')}
81 40     40 1 17652 sub APPROVAL_CODE {return $_[0]->_get_column('APPROVAL_CODE')}
82 40     40 1 18199 sub TERMINAL_ID {return $_[0]->_get_column('TERMINAL_ID')}
83 40     40 1 19124 sub MERCHANT_CATEGORY_CODE {return $_[0]->_get_column('MERCHANT_CATEGORY_CODE')}
84 40     40 1 18207 sub CARDMEMBER_REFERENCE_NUMBER {return $_[0]->_get_column('CARDMEMBER_REFERENCE_NUMBER')}
85 40     40 1 18824 sub ACQUIRER_REFERENCE_NUMBER {return $_[0]->_get_column('ACQUIRER_REFERENCE_NUMBER')}
86 40     40 1 18895 sub DATA_QUALITY_NON_COMPLIANT_INDICATOR {return $_[0]->_get_column('DATA_QUALITY_NON_COMPLIANT_INDICATOR')}
87              
88 40     40 0 18310 sub DATA_QUALITY_NON_COMPLIANT_ERROR_CODE_1 {return $_[0]->_get_column('DATA_QUALITY_NON_COMPLIANT_ERROR_CODE_1')}
89 40     40 0 18169 sub DATA_QUALITY_NON_COMPLIANT_ERROR_CODE_2 {return $_[0]->_get_column('DATA_QUALITY_NON_COMPLIANT_ERROR_CODE_2')}
90 40     40 0 17444 sub DATA_QUALITY_NON_COMPLIANT_ERROR_CODE_3 {return $_[0]->_get_column('DATA_QUALITY_NON_COMPLIANT_ERROR_CODE_3')}
91 40     40 0 18818 sub DATA_QUALITY_NON_COMPLIANT_ERROR_CODE_4 {return $_[0]->_get_column('DATA_QUALITY_NON_COMPLIANT_ERROR_CODE_4')}
92 40     40 1 18382 sub NON_SWIPED_INDICATOR {return $_[0]->_get_column('NON_SWIPED_INDICATOR')}
93 40     40 1 18883 sub TRANSACTION_REJECTED_INDICATOR {return $_[0]->_get_column('TRANSACTION_REJECTED_INDICATOR')}
94 40     40 1 18131 sub FIRST_INSTALLMENT_AMOUNT {return $_[0]->_get_column('FIRST_INSTALLMENT_AMOUNT')}
95 40     40 1 18352 sub SUBSEQUENT_INSTALLMENT_AMOUNT {return $_[0]->_get_column('SUBSEQUENT_INSTALLMENT_AMOUNT')}
96 40     40 1 17828 sub NUMBER_OF_INSTALLMENTS {return $_[0]->_get_column('NUMBER_OF_INSTALLMENTS')}
97 40     40 1 18224 sub INSTALLMENT_NUMBER {return $_[0]->_get_column('INSTALLMENT_NUMBER')}
98 40     40 1 15538 sub SERVICE_FEE_AMOUNT {return $_[0]->_get_column('SERVICE_FEE_AMOUNT')}
99 40     40 1 18940 sub ACCELERATION_AMOUNT {return $_[0]->_get_column('ACCELERATION_AMOUNT')}
100              
101              
102             1;
103              
104             __END__