Skip to content

Instantly share code, notes, and snippets.

@mrkhoa99
Created July 19, 2016 10:48
Show Gist options
  • Save mrkhoa99/daa7a44e86b6ff520dd579740b360444 to your computer and use it in GitHub Desktop.
Save mrkhoa99/daa7a44e86b6ff520dd579740b360444 to your computer and use it in GitHub Desktop.
The API does not return error messages, so I translated these from the example english-like messages in the GMO documentation
#Resource reference: https://docs.omniref.com/github/veracross/active_merchant/HEAD/symbols/ActiveMerchant::Billing::GmoGateway#line=46
# The API does not return error messages, so I translated these from the
# example english-like messages in the GMO documentation
ERROR_CODES = {
'E01010001' => 'Shop ID not specified',
'E01010008' => 'Shop ID contains invalid characters or is too long',
'E01010010' => 'Shop ID is invalid',
'E01020001' => 'Shop Password not specified',
'E01020008' => 'Shop Password contains invalid characters or is too long',
'E01030002' => 'Shop ID and Password are invalid',
'E01040001' => 'Order ID not specified',
'E01040003' => 'Order ID too long',
'E01040010' => 'Order ID previously used',
'E01040013' => 'Order ID contains characters other than a-z, A-Z, 0-9 and -',
'E01050001' => 'Process Classification not specified',
'E01050002' => 'Process Classification is invalid',
'E01050004' => 'Process Classification can not be executed',
'E01060001' => 'Amount not specified',
'E01060005' => 'Amount exceeds maximum allowed',
'E01060006' => 'Amount contains non-numeric characters',
'E01060010' => 'Capture Amount does not match Authorization Amount',
'E01070005' => 'Tax/Shipping exceeds maximum allowed',
'E01070006' => 'Tax/Shipping contains non-numeric characters',
'E01080007' => 'User Authentication Flag is not 1 or 0',
'E01080010' => 'User Authentication Flag does not match administration screen',
'E01080101' => 'User Authentication Flag is 0, however store requires User Authentication',
'E01090001' => 'Access ID not specified',
'E01090008' => 'Access ID incorrectly formatted',
'E01100001' => 'Access Password not specified',
'E01100008' => 'Access Password incorrectly formatted',
'E01110002' => 'Access ID and Password are invalid',
'E01110010' => 'Transaction settlement is not complete',
'E01130012' => 'Card Company Abbreviation is too long',
'E01170001' => 'Card Number not specified',
'E01170003' => 'Card Number too long',
'E01170006' => 'Card Number contains non-numeric characters',
'E01170011' => 'Card Number not 10-16 characters in length',
'E01180001' => 'Expiration Date not specified',
'E01180003' => 'Expiration Date is not four characters in length',
'E01180006' => 'Expiration Date contains non-numeric characters',
'E01190001' => 'Site ID is not specified',
'E01190008' => 'Site ID incorrectly formatted',
'E01200001' => 'Site Password not specified',
'E01200008' => 'Site Password incorrectly formatted',
'E01210002' => 'Site ID and Password are invalid',
'E01220001' => 'Member ID is not specified',
'E01220008' => 'Member ID incorrectly formatted',
'E01230006' => 'Card Registration Consecutive Number contains non-numeric characters',
'E01230009' => 'Card Registration Consecutive Number exceeds maximum registration capacity',
'E01240002' => 'Card specified does not exist',
'E01240012' => 'Member ID specified is redundant in file',
'E01250008' => 'Card Password incorrectly formatted',
'E01250010' => 'Card Password is invalid',
'E01260001' => 'Payment Method not specified',
'E01260002' => 'Payment Method is invalid',
'E01260010' => 'Payment Method specified can not be used',
'E01270001' => 'Number of Payments not specified',
'E01270005' => 'Number of Payments exceeds maximum allowed',
'E01270006' => 'Number of Payments contains non-numeric characters',
'E01270010' => 'Number of Payments specified is invalid',
'E01290001' => 'HTTP_ACCEPT not specified',
'E01300001' => 'HTTP_USER_AGENT not specified',
'E01310002' => 'Terminal not specified',
'E01310007' => 'Terminal values other than 1 or 0 are for the terminal to use',
'E01320012' => 'Client Field 1 too long',
'E01330012' => 'Client Field 2 too long',
'E01340012' => 'Client Field 3 too long',
'E01350001' => 'MD not specified',
'E01350008' => 'MD incorrectly formatted',
'E01360001' => 'PaRes not specified',
'E01370008' => 'User Authentication Display Name incorrectly formatted',
'E01370012' => 'User Authentication Display Name too long',
'E01390002' => 'Site ID and Member ID do not exist',
'E01390010' => 'Site ID and Member ID already exist',
'E01400007' => 'Client Field Flag is not 1 or 0',
'E01410010' => 'Transaction is set to prohibited status',
'E01420010' => 'Transaction authorization is too old',
'E01430012' => 'Member Name too long',
'E01440008' => 'Default Card Flag incorrectly formatted',
'E01450008' => 'Product Code incorrectly formatted',
'E01460008' => 'Security Code incorrectly formatted',
'E01470008' => 'Card Registration Consecutive Number incorrectly formatted',
'E01480008' => 'Cardholder Name incorrectly formatted',
'E01490005' => 'Amount + Tax/Shipping exceeds maximum allowed',
'E01800001' => 'PIN not specified',
'E01800008' => 'PIN incorrectly formatted',
'E01800010' => 'PIN is invalid',
'E11010001' => 'Transaction settlement already complete',
'E11010002' => 'Transaction settlement is not complete and thus can not be modified',
'E11010003' => 'Transaction Process Classification can not be performed',
'E11010010' => 'Transaction process can not be performed because transaction is more than 180 days old',
'E11010011' => 'Transaction process can not be performed because transaction is more than 180 days old',
'E11010012' => 'Transaction process can not be performed because transaction is more than 180 days old',
'E11010013' => 'Transaction process can not be performed because transaction is more than 180 days old',
'E11010014' => 'Transaction process can not be performed because transaction is more than 180 days old',
'E11010099' => 'Card can not be used',
'E11010999' => 'Card can not be used',
'E21010001' => 'User Authentication failed - please try again',
'E21010007' => 'User Authentication failed - please try again',
'E21010999' => 'User Authentication failed - please try again',
'E21020001' => 'User Authentication failed - please try again',
'E21020002' => 'User Authentication failed - please try again',
'E21020007' => 'User Authentication failed - please try again',
'E21020999' => 'User Authentication failed - please try again',
'E21010201' => 'Card does not support User Authentication',
'E21010202' => 'Card does not support User Authentication',
'E31500014' => 'Request method must be POST, not GET',
'E41170002' => 'Card can not be used',
'E41170099' => 'Card Number is incorrect',
'E61010001' => 'Settlement process failed - please try again',
'E61010002' => 'Settlement process failed - please try again',
'E61010003' => 'Settlement process failed - please try again',
'E61020001' => 'Settlement method has been disabled',
'E82010001' => 'Error executing transaction',
'E90010001' => 'Duplicate transaction',
'E91019999' => 'Settlement process failed - please try again',
'E91020001' => 'System communication timeout - please try again',
'E91029999' => 'Settlement process failed - please try again',
'E91050001' => 'Settlement process failed',
'E91099999' => 'Settlement process failed - please try again',
'E92000001' => 'System unable to process transaction - please try again',
'M01001005' => 'Version Number too long',
'M01002001' => 'Shop ID not specified',
'M01002002' => 'Shop ID and Password are invalid',
'M01002008' => 'Shop ID incorrectly formatted',
'M01003001' => 'Shop Password not specified',
'M01003008' => 'Shop Password incorrectly formatted',
'M01004001' => 'Order ID not specified',
'M01004002' => 'Order ID not part of a registered transaction',
'M01004010' => 'Order ID previously used',
'M01004012' => 'Order ID too long',
'M01004013' => 'Order ID contains characters other than a-z, A-Z, 0-9 and -',
'M01004014' => 'Order ID is already part of a transaction requesting settlement',
'M01005001' => 'Amount not specified',
'M01005005' => 'Amount too long',
'M01005006' => 'Amount contains non-numeric characters',
'M01005011' => 'Amount is outside valid range',
'M01006005' => 'Tax/Shipping exceeds maximum allowed',
'M01006006' => 'Tax/Shipping contains non-numeric characters',
'M01007001' => 'Access ID not specified',
'M01007008' => 'Access ID incorrectly formatted',
'M01008001' => 'Access Password not specified',
'M01008008' => 'Access Password incorrectly formatted',
'M01009001' => 'Payment Destination Convenience Store Code not specified',
'M01009002' => 'Payment Destination Convenience Store Code is incorrect',
'M01009005' => 'Payment Destination Convenience Store Code too long',
'M01010001' => 'Name not specified',
'M01010012' => 'Name too long',
'M01010013' => 'Name contains invalid characters',
'M01011001' => 'Furigana not specified',
'M01011012' => 'Furigana too long',
'M01011013' => 'Furigana contains invalid characters',
'M01012001' => 'Telephone Number not specified',
'M01012005' => 'Telephone Number too long',
'M01012008' => 'Telephone Number incorrectly formatted',
'M01013005' => 'Number of Due Dates too long',
'M01013006' => 'Number of Due Dates contains non-numeric characters',
'M01013011' => 'Number of Due Dates is outside valid range',
'M01014001' => 'Result Notice Destination Email not specified',
'M01014005' => 'Result Notice Destination Email too long',
'M01014008' => 'Result Notice Destination Email incorrectly formatted',
'M01015005' => 'Merchant Email too long',
'M01015008' => 'Merchant Email incorrectly formatted',
'M01016012' => 'Reservation Number too long',
'M01016013' => 'Reservation Number contains invalid characters',
'M01017012' => 'Member Number too long',
'M01017013' => 'Member Number contains invalid characters',
'M01018012' => 'POS Register Display Column 1 too long',
'M01018013' => 'POS Register Display Column 1 contains invalid characters',
'M01019012' => 'POS Register Display Column 2 too long',
'M01019013' => 'POS Register Display Column 2 contains invalid characters',
'M01020012' => 'POS Register Display Column 3 too long',
'M01020013' => 'POS Register Display Column 3 contains invalid characters',
'M01021012' => 'POS Register Display Column 4 too long',
'M01021013' => 'POS Register Display Column 4 contains invalid characters',
'M01022012' => 'POS Register Display Column 5 too long',
'M01022013' => 'POS Register Display Column 5 contains invalid characters',
'M01023012' => 'POS Register Display Column 6 too long',
'M01023013' => 'POS Register Display Column 6 contains invalid characters',
'M01024012' => 'POS Register Display Column 7 too long',
'M01024013' => 'POS Register Display Column 7 contains invalid characters',
'M01025012' => 'POS Register Display Column 8 too long',
'M01025013' => 'POS Register Display Column 8 contains invalid characters',
'M01026012' => 'Receipt Display Column 1 too long',
'M01026013' => 'Receipt Display Column 1 contains invalid characters',
'M01027012' => 'Receipt Display Column 2 too long',
'M01027013' => 'Receipt Display Column 2 contains invalid characters',
'M01028012' => 'Receipt Display Column 3 too long',
'M01028013' => 'Receipt Display Column 3 contains invalid characters',
'M01029012' => 'Receipt Display Column 4 too long',
'M01029013' => 'Receipt Display Column 4 contains invalid characters',
'M01030012' => 'Receipt Display Column 5 too long',
'M01030013' => 'Receipt Display Column 5 contains invalid characters',
'M01031012' => 'Receipt Display Column 6 too long',
'M01031013' => 'Receipt Display Column 6 contains invalid characters',
'M01032012' => 'Receipt Display Column 7 too long',
'M01032013' => 'Receipt Display Column 7 contains invalid characters',
'M01033012' => 'Receipt Display Column 8 too long',
'M01033013' => 'Receipt Display Column 8 contains invalid characters',
'M01034012' => 'Receipt Display Column 9 too long',
'M01034013' => 'Receipt Display Column 9 contains invalid characters',
'M01035012' => 'Receipt Display Column 10 too long',
'M01035013' => 'Receipt Display Column 10 contains invalid characters',
'M01036001' => 'Contact Address not specified',
'M01036012' => 'Contact Address too long',
'M01036013' => 'Contact Address contains invalid characters',
'M01037001' => 'Contact Telephone not specified',
'M01037005' => 'Contact Telephone too long',
'M01037008' => 'Contact Telephone contains characters other than 0-9 and -',
'M01038001' => 'Contact Business Hours not specified',
'M01038005' => 'Contact Business Hours too long',
'M01038008' => 'Contact Business Hours contains characters other than 0-9, : and -',
'M01039012' => 'Client Field 1 too long',
'M01039013' => 'Client Field 1 contains invalid characters',
'M01040012' => 'Client Field 2 too long',
'M01040013' => 'Client Field 2 contains invalid characters',
'M01041012' => 'Client Field 3 too long',
'M01041013' => 'Client Field 3 contains invalid characters',
'M01042005' => 'Result Return Method Flag too long',
'M01042011' => 'Result Return Method Flag is not 1 or 0',
'M01043001' => 'Product/Service Name not specified',
'M01043012' => 'Product/Service Name too long',
'M01043013' => 'Product/Service Name contains invalid characters',
'M01044012' => 'Settlement Start Email Additional Information too long',
'M01044013' => 'Settlement Start Email Additional Information contains invalid characters',
'M01045012' => 'Settlement Completion Email Additional Information too long',
'M01045013' => 'Settlement Completion Email Additional Information contains invalid characters',
'M01046012' => 'Settlement Contents Confirmation Screen Additional Information too long',
'M01046013' => 'Settlement Contents Confirmation Screen Additional Information contains invalid characters',
'M01047012' => 'Settlement Contents Confirmation Screen Additional Information too long',
'M01047013' => 'Settlement Contents Confirmation Screen Additional Information contains invalid characters',
'M01048005' => 'Due Date for Payment (Seconds) too long',
'M01048006' => 'Due Date for Payment (Seconds) contains non-numeric characters',
'M01048011' => 'Due Date for Payment (Seconds) is outside valid range',
'M01049012' => 'Settlement Start Email Additional Information too long',
'M01049013' => 'Settlement Start Email Additional Information contains invalid characters',
'M01050012' => 'Settlement Completion Email Additional Information too long',
'M01050013' => 'Settlement Completion Email Additional Information contains invalid characters',
'M01051001' => 'Settlement Method not specified',
'M01051005' => 'Settlement Method too long',
'M01051011' => 'Settlement Method is outside valid range',
'M01053002' => 'Convenience Store specified can not be used',
'M01054001' => 'Process Classification not specified',
'M01054004' => 'Process Classification is invalid for current transaction status',
'M01054010' => 'Process Classification specified is not defined',
'M01055010' => 'Amount + Tax/Shipping does not match Transaction Amount + Tax/Shipping',
'M01056001' => 'Redirect URL not specified',
'M01056012' => 'Redurect URL too long',
'M01057010' => 'Transaction is too old for cancellation',
'M01058002' => 'Transaction specified does not exist',
'M01058010' => 'Transaction Shop ID does not match specified Shop ID',
'M01059005' => 'Return Destination URL too long',
'M01060010' => 'Transaction authorization is too old',
'M11010099' => 'Transaction settlement is not complete',
'M11010999' => 'Transaction settlement may already be complete',
'M91099999' => 'Settlement process failed',
'42G020000' => 'Card balance is insufficient',
'42G030000' => 'Card limit has been exceeded',
'42G040000' => 'Card balance is insufficient',
'42G050000' => 'Card limit has been exceeded',
'42G120000' => 'Card is not valid for transactions',
'42G220000' => 'Card is not valid for transactions',
'42G300000' => 'Card is not valid for transactions',
'42G420000' => 'PIN is incorrect',
'42G440000' => 'Security code is incorrect',
'42G030000' => 'Security code not provided',
'42G540000' => 'Card is not valid for transactions',
'42G550000' => 'Card limit has been exceeded',
'42G560000' => 'Card is not valid for transactions',
'42G600000' => 'Card is not valid for transactions',
'42G610000' => 'Card is not valid for transactions',
'42G650000' => 'Card number is incorrect',
'42G670000' => 'Product code is incorrect',
'42G680000' => 'Amount is incorrect',
'42G690000' => 'Tax/Shipping is incorrect',
'42G700000' => 'Number of bonuses is incorrect',
'42G710000' => 'Bonus month is incorrect',
'42G720000' => 'Bonus amount is incorrect',
'42G730000' => 'Payment start month is incorrect',
'42G740000' => 'Number of installments is incorrect',
'42G750000' => 'Installment amount is incorrect',
'42G760000' => 'Initial amount is incorrect',
'42G770000' => 'Task classification is incorrect',
'42G780000' => 'Payment classification is incorrect',
'42G790000' => 'Reference classification is incorrect',
'42G800000' => 'Cancellation classification is incorrect',
'42G810000' => 'Cancellation handling classification is incorrect',
'42G830000' => 'Expiration date is incorrect',
'42G950000' => 'Card is not valid for transactions',
'42G960000' => 'Card is not valid for transactions',
'42G970000' => 'Card is not valid for transactions',
'42G980000' => 'Card is not valid for transactions',
'42G990000' => 'Card is not valid for transactions'
}
@sanmai
Copy link

sanmai commented Feb 9, 2018

Under what license can I reuse these? In this project, if that is important.

@TheRealHunzik
Copy link

can you share GMO documentation i am getting
'E91020001' => 'System communication timeout - please try again',

for some customers and don;t know what is issue and how to debug

@dole2711dev
Copy link

Thank you very must!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment