gmo_payment 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. checksums.yaml +7 -0
  2. data/.coveralls.yml +1 -0
  3. data/.editorconfig +12 -0
  4. data/.gitignore +9 -0
  5. data/.rspec +2 -0
  6. data/.travis.yml +20 -0
  7. data/CHANGELOG.md +5 -0
  8. data/Gemfile +17 -0
  9. data/MIT-LICENSE +22 -0
  10. data/README.md +101 -0
  11. data/Rakefile +7 -0
  12. data/gmo_payment.gemspec +22 -0
  13. data/lib/generators/gmo_payment/install_generator.rb +15 -0
  14. data/lib/generators/gmo_payment/templates/ja.yml +246 -0
  15. data/lib/gmo_payment/client/options.rb +39 -0
  16. data/lib/gmo_payment/client/request.rb +294 -0
  17. data/lib/gmo_payment/client/response.rb +205 -0
  18. data/lib/gmo_payment/client.rb +538 -0
  19. data/lib/gmo_payment/configure.rb +30 -0
  20. data/lib/gmo_payment/errors.rb +95 -0
  21. data/lib/gmo_payment/glossary.rb +66 -0
  22. data/lib/gmo_payment/version.rb +3 -0
  23. data/lib/gmo_payment.rb +31 -0
  24. data/spec/cassettes/GmoPayment_Client/_auth_to_sales/return_6_items.yml +120 -0
  25. data/spec/cassettes/GmoPayment_Client/_call/with_ResponseHTTPError/raise_ResponseHTTPError.yml +46 -0
  26. data/spec/cassettes/GmoPayment_Client/_call/with_ResponseHasErrCodeError/raise_ResponseHTTPError.yml +48 -0
  27. data/spec/cassettes/GmoPayment_Client/_change_tran/return_6_items.yml +120 -0
  28. data/spec/cassettes/GmoPayment_Client/_delete_card/return_1_items.yml +114 -0
  29. data/spec/cassettes/GmoPayment_Client/_delete_member/return_1_items.yml +77 -0
  30. data/spec/cassettes/GmoPayment_Client/_delete_tran/return_6_items.yml +120 -0
  31. data/spec/cassettes/GmoPayment_Client/_entry_tran/return_2_items.yml +40 -0
  32. data/spec/cassettes/GmoPayment_Client/_entry_tran_btc/return_2_items.yml +42 -0
  33. data/spec/cassettes/GmoPayment_Client/_exec_tran/return_12_items.yml +83 -0
  34. data/spec/cassettes/GmoPayment_Client/_exec_tran_3d/return_4_items.yml +77 -0
  35. data/spec/cassettes/GmoPayment_Client/_exec_tran_btc/return_3_items.yml +81 -0
  36. data/spec/cassettes/GmoPayment_Client/_exec_tran_member/return_12_items.yml +157 -0
  37. data/spec/cassettes/GmoPayment_Client/_exec_tran_member_3d/return_4_items.yml +151 -0
  38. data/spec/cassettes/GmoPayment_Client/_get_rate_btc/return_1_item.yml +42 -0
  39. data/spec/cassettes/GmoPayment_Client/_re_exec_tran/return_6_items.yml +157 -0
  40. data/spec/cassettes/GmoPayment_Client/_save_card/return_3_items.yml +77 -0
  41. data/spec/cassettes/GmoPayment_Client/_save_member/return_1_items.yml +40 -0
  42. data/spec/cassettes/GmoPayment_Client/_save_traded_card/return_3_items.yml +157 -0
  43. data/spec/cassettes/GmoPayment_Client/_search_card/return_7_items.yml +114 -0
  44. data/spec/cassettes/GmoPayment_Client/_search_member/return_3_items.yml +77 -0
  45. data/spec/cassettes/GmoPayment_Client/_search_trade/return_21_items.yml +77 -0
  46. data/spec/cassettes/GmoPayment_Client/_search_trade_btc/return_11_items.yml +79 -0
  47. data/spec/cassettes/GmoPayment_Client/_secure_tran/return_11_items.yml +120 -0
  48. data/spec/cassettes/GmoPayment_Client/_update_card/return_3_items.yml +114 -0
  49. data/spec/cassettes/GmoPayment_Client/_update_member/return_1_items.yml +77 -0
  50. data/spec/cassettes/GmoPayment_Client_Response/GmoPayment_GLOSSARY_keys_to_method/return_body_values_if_body_match_Hash_keys_and_GLOSSARY_keys.yml +46 -0
  51. data/spec/cassettes/GmoPayment_Client_Response/_body/with_prebody_match_Hash_keys_and_GLOSSARY_keys/return_Hash_keys_Symbol_and_values_as_it_is.yml +46 -0
  52. data/spec/cassettes/GmoPayment_Client_Response/_body/without_prebody_match_Hash_keys_and_GLOSSARY_keys/return_Hash_keys_String_and_values_as_it_is.yml +46 -0
  53. data/spec/cassettes/GmoPayment_Client_Response/_encoded_raw_body/return_String_of_encoded_Shift_JIS_to_UTF-8.yml +46 -0
  54. data/spec/cassettes/GmoPayment_Client_Response/_error_/with_ErrCode/return_true.yml +46 -0
  55. data/spec/cassettes/GmoPayment_Client_Response/_error_/without_ErrCode/return_false.yml +46 -0
  56. data/spec/cassettes/GmoPayment_Client_Response/_http_code/return_Integer_of_HTTP_status_code.yml +46 -0
  57. data/spec/cassettes/GmoPayment_Client_Response/_http_error_/with_2xx/return_false.yml +46 -0
  58. data/spec/cassettes/GmoPayment_Client_Response/_http_error_/without_2xx/return_true.yml +44 -0
  59. data/spec/cassettes/GmoPayment_Client_Response/_http_header/return_Hash_of_HTTP_header.yml +46 -0
  60. data/spec/cassettes/GmoPayment_Client_Response/_http_message/return_String_of_HTTP_message.yml +46 -0
  61. data/spec/cassettes/GmoPayment_Client_Response/_prebody/with_ErrCode/behaves_like_getting_Hash_values_Array/return_Hash_keys_String_and_values_Array.yml +46 -0
  62. data/spec/cassettes/GmoPayment_Client_Response/_prebody/with_called_return_array_true/behaves_like_getting_Hash_values_Array/return_Hash_keys_String_and_values_Array.yml +46 -0
  63. data/spec/cassettes/GmoPayment_Client_Response/_prebody/with_no_ErroCode_and_called_return_array_false/return_Hash_keys_and_values_String.yml +46 -0
  64. data/spec/cassettes/GmoPayment_Client_Response/_raw_body/return_String_of_HTTP_response_body_as_it_is.yml +46 -0
  65. data/spec/cassettes/GmoPayment_Client_Response/_split_encoded_raw_body/behaves_like_URI_decode_www_form/with_response_body_have_invalid_parameters_to_split/return_empty_Array.yml +46 -0
  66. data/spec/cassettes/GmoPayment_Client_Response/_split_encoded_raw_body/behaves_like_URI_decode_www_form/with_response_body_have_only_GLOSSARY_keys/return_predefined_Array_format.yml +46 -0
  67. data/spec/cassettes/GmoPayment_Client_Response/_split_encoded_raw_body_/behaves_like_URI_decode_www_form/with_response_body_have_invalid_parameters_to_split/return_empty_Array.yml +46 -0
  68. data/spec/cassettes/GmoPayment_Client_Response/_split_encoded_raw_body_/behaves_like_URI_decode_www_form/with_response_body_have_only_GLOSSARY_keys/return_predefined_Array_format.yml +46 -0
  69. data/spec/cassettes/GmoPayment_Client_Response/_split_encoded_raw_body_/with_response_body_have_not_only_GLOSSARY_keys/returns_predefined_Array_format_without_GLOSSARY_keys.yml +46 -0
  70. data/spec/gmo_payment/client/options_spec.rb +107 -0
  71. data/spec/gmo_payment/client/request_spec.rb +403 -0
  72. data/spec/gmo_payment/client/response_spec.rb +280 -0
  73. data/spec/gmo_payment/client_spec.rb +809 -0
  74. data/spec/gmo_payment/configure_spec.rb +90 -0
  75. data/spec/gmo_payment/errors_spec.rb +118 -0
  76. data/spec/gmo_payment/glossary_spec.rb +15 -0
  77. data/spec/gmo_payment_spec.rb +22 -0
  78. data/spec/spec_helper.rb +70 -0
  79. data/spec/support/request_validation.rb +71 -0
  80. metadata +179 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: b7667f9f19dc709b3b6ec847a0c43f736fe0156e
4
+ data.tar.gz: 2f95a3dfb055a0562d671a095ad6dc322a5faf59
5
+ SHA512:
6
+ metadata.gz: ccb334691ad89667e091de670beaaff46156e74f8f3feb5a79dc64c71b3f0f4f32f4d750604e9c9ff68d39b8261c9dce9294bfb26259e83f965ec4a72f5ab0f6
7
+ data.tar.gz: f456a175982bcf3daa50a09078aa05bdc0c22a9375e05f9ba96a21e6ff92133e05235d2aa16cee46dc6f6121ce5e6ed4ef359c732d4a8b47bd5e2560149f994d
data/.coveralls.yml ADDED
@@ -0,0 +1 @@
1
+ service_name: travis-ci
data/.editorconfig ADDED
@@ -0,0 +1,12 @@
1
+ root = true
2
+
3
+ [*]
4
+ indent_style = space
5
+ indent_size = 2
6
+ end_of_line = lf
7
+ charset = utf-8
8
+ trim_trailing_whitespace = true
9
+ insert_final_newline = true
10
+
11
+ [*.md]
12
+ trim_trailing_whitespace = false
data/.gitignore ADDED
@@ -0,0 +1,9 @@
1
+ .envrc
2
+ .bundle/
3
+ bundle/
4
+ .yardoc/
5
+ Gemfile.lock
6
+ coverage/
7
+ doc/
8
+ pkg/
9
+ log/
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --color
2
+ --order random
data/.travis.yml ADDED
@@ -0,0 +1,20 @@
1
+ language: ruby
2
+ rvm:
3
+ - 2.0.0
4
+ - 2.1
5
+ - 2.2
6
+ env:
7
+ global:
8
+ - GMO_TEST_API_ENDPOINT="example.com"
9
+ - GMO_TEST_SITE_ID="SITEID"
10
+ - GMO_TEST_SITE_PASS="SITEPASS"
11
+ - GMO_TEST_SHOP_ID="SHOPID"
12
+ - GMO_TEST_SHOP_PASS="SHOPPASS"
13
+ - GMO_TEST_CARD_EXPIRE="0000"
14
+ - GMO_TEST_CARD_NO_N="0000000000000000"
15
+ - GMO_TEST_CARD_NO_N_MASK="*************000"
16
+ - GMO_TEST_CARD_NO_Y="9999999999999999"
17
+ - GMO_TEST_CARD_NO_Y_MASK="*************999"
18
+ - GMO_TEST_ACS_URL="https://example.com/"
19
+ - GMO_TEST_BTC_URL="https://example.com/"
20
+ bundler_args: --without docs
data/CHANGELOG.md ADDED
@@ -0,0 +1,5 @@
1
+ # CHANGELOG
2
+
3
+ ## 0.0.1 (2015-10-24)
4
+
5
+ - Initial release.
data/Gemfile ADDED
@@ -0,0 +1,17 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec
4
+
5
+ gem 'rake', require: false
6
+
7
+ group :test do
8
+ gem 'rspec', '>= 3'
9
+ gem 'webmock', require: false
10
+ gem 'vcr', require: false
11
+ gem 'simplecov', '~> 0.9.0', require: false
12
+ gem 'coveralls', require: false
13
+ end
14
+
15
+ group :docs do
16
+ gem 'yard'
17
+ end
data/MIT-LICENSE ADDED
@@ -0,0 +1,22 @@
1
+ Copyright (c) 2015 Kouhei Fujigaya
2
+
3
+ MIT License
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,101 @@
1
+ # GmoPayment
2
+
3
+ [![Build Status](https://travis-ci.org/kouhei-fuji/gmo_payment.svg?branch=master)](https://travis-ci.org/kouhei-fuji/gmo_payment) [![Coverage Status](https://coveralls.io/repos/kouhei-fuji/gmo_payment/badge.svg?branch=master&service=github)](https://coveralls.io/github/kouhei-fuji/gmo_payment?branch=master) [![Gem Version](https://badge.fury.io/rb/gmo_payment.svg)](https://badge.fury.io/rb/gmo_payment)
4
+
5
+ Ruby client for the protocol type API provided by GMO Payment Gateway.
6
+
7
+ This library includes:
8
+
9
+ - Credit-Card protocol API - Version: 2014/03/18 1.13
10
+ - Multi-Payment protocol API (Bitcoin) - Version: 2015/04/01 1.32
11
+ - ErrorCode - Version: 2015/02/26 1.43
12
+
13
+ ## Installation
14
+
15
+ Add this line to your application's Gemfile:
16
+
17
+ ```ruby
18
+ gem 'gmo_payment'
19
+ ```
20
+
21
+ And then execute:
22
+
23
+ $ bundle
24
+
25
+ Or install it yourself as:
26
+
27
+ $ gem install gmo_payment
28
+
29
+ ## Basic usage
30
+
31
+ ```ruby
32
+ require 'gmo_payment'
33
+
34
+ client = GmoPayment::Client.new(api_endpoint: 'example.com')
35
+ response = client.entry_tran(
36
+ :shop_id => 'SHOP_ID',
37
+ :shop_pass => 'SHOP_PASS',
38
+ :order_id => 'xxxxx',
39
+ :job_cd => 'CHECK'
40
+ )
41
+ ```
42
+
43
+ ### Setup in advance
44
+
45
+ ```ruby
46
+ require 'gmo_payment'
47
+
48
+ GmoPayment.setup do |c|
49
+ c.api_endpoint = 'example.com'
50
+ c.proxy = 'https://user:password@proxy.com:443/'
51
+ c.verify_mode = ::OpenSSL::SSL::VERIFY_PEER
52
+ c.error_list = 'path/to/file.yml'
53
+ c.site_id = 'GMO_SITE_ID'
54
+ c.site_pass = 'GMO_SITE_PASS'
55
+ c.shop_id = 'GMO_SHOP_ID'
56
+ c.shop_pass = 'GMO_SHOP_PASS'
57
+ end
58
+
59
+ client = GmoPayment::Client.new
60
+ response = client.entry_tran(
61
+ :order_id => 'xxxxx',
62
+ :job_cd => 'CHECK'
63
+ )
64
+ ```
65
+
66
+ ## Generator
67
+
68
+ You can use generator in Ruby on Rails:
69
+
70
+ $ bin/rails g gmo_payment:install
71
+
72
+ ## Test
73
+
74
+ If you want to test in your environment, you have to define:
75
+
76
+ - GMO_TEST_API_ENDPOINT
77
+ - GMO_TEST_SITE_ID
78
+ - GMO_TEST_SITE_PASS
79
+ - GMO_TEST_SHOP_ID
80
+ - GMO_TEST_SHOP_PASS
81
+ - GMO_TEST_CARD_EXPIRE
82
+ - GMO_TEST_CARD_NO_N
83
+ => _Non-ACS test card number_
84
+ - GMO_TEST_CARD_NO_N_MASK
85
+ - GMO_TEST_CARD_NO_Y
86
+ => _ACS test card number_
87
+ - GMO_TEST_CARD_NO_Y_MASK
88
+ - GMO_TEST_ACS_URL
89
+ - GMO_TEST_BTC_URL
90
+
91
+ ## Contributing
92
+
93
+ 1. Fork it (https://github.com/kouhe-fuji/gmo_payment/fork)
94
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
95
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
96
+ 4. Push to the branch (`git push origin my-new-feature`)
97
+ 5. Create a new Pull Request
98
+
99
+ ## License
100
+
101
+ This library is under the [MIT License](https://opensource.org/licenses/MIT).
data/Rakefile ADDED
@@ -0,0 +1,7 @@
1
+ require "bundler/gem_tasks"
2
+ require "rspec/core/rake_task"
3
+
4
+ RSpec::Core::RakeTask.new(:spec)
5
+
6
+ task :default => :spec
7
+
@@ -0,0 +1,22 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'gmo_payment/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = 'gmo_payment'
8
+ spec.version = GmoPayment::VERSION
9
+ spec.authors = ['Kouhei Fujigaya']
10
+ spec.email = ['kouhei.fujigaya@gmail.com']
11
+ spec.summary = %q{Ruby client for GMO-PG API.}
12
+ spec.description = %q{Ruby client for the protocol type API provided by GMO Payment Gateway.}
13
+ spec.homepage = 'https://github.com/kouhei-fuji/gmo_payment'
14
+ spec.license = 'MIT'
15
+
16
+ spec.files = `git ls-files -z`.split("\x0")
17
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
18
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
+ spec.require_paths = ['lib']
20
+
21
+ spec.required_ruby_version = '>= 2.0.0'
22
+ end
@@ -0,0 +1,15 @@
1
+ # coding: utf-8
2
+ require 'rails/generators/base'
3
+
4
+ module GmoPayment
5
+ module Generators
6
+ class InstallGenerator < ::Rails::Generators::Base
7
+ source_root File.expand_path('../templates', __FILE__)
8
+ desc 'Copy GmoPayment error message locale file to your application.'
9
+
10
+ def copy_locales
11
+ copy_file 'ja.yml', 'config/gmo_payment.ja.yml'
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,246 @@
1
+ ---
2
+ # E系エラー: GMO内もしくはアプリケーション内でのエラー
3
+ E01010001: ショップIDが指定されていません。
4
+ E01010008: ショップIDに半角英数字以外の文字が含まれているか、13文字を超えています。
5
+ E01010010: ショップIDが一致しません。
6
+ E01020001: ショップパスワードが指定されていません。
7
+ E01020008: ショップパスワードに半角英数字以外の文字が含まれているか、10文字を超えています。
8
+ E01030002: 指定されたIDとパスワードのショップが存在しません。
9
+ E01030061: 強制返品はご利用できません。
10
+ E01040001: オーダーIDが指定されていません。
11
+ E01040003: オーダーIDが最大文字数を超えています。
12
+ E01040010: 既にオーダーIDが存在しています。
13
+ E01040013: オーダーIDに半角英数字と"-"以外の文字が含まれています。
14
+ E01050001: 処理区分が指定されていません。
15
+ E01050002: 指定された処理区分は定義されていません。
16
+ E01050004: 指定した処理区分の処理は実行できません。
17
+ E01060001: 利用金額が指定されていません。
18
+ E01060005: 利用金額が最大桁数を超えています。
19
+ E01060006: 利用金額に数字以外の文字が含まれています。
20
+ E01060010: 取引の利用金額と指定した利用金額が一致しません。
21
+ E01070005: 税送料が最大桁数を超えています。
22
+ E01070006: 税送料に数字以外の文字が含まれています。
23
+ E01080007: '3Dセキュア使用フラグに"0","1"以外の文字が指定されています。'
24
+ E01080010: 管理画面の設定と一致しません。
25
+ E01080101: 3D必須店舗にも関わらず3Dセキュア使用フラグがOFFになっています。
26
+ E01090001: 取引IDが指定されていません。
27
+ E01090008: 取引IDの書式が正しくありません。
28
+ E01100001: 取引パスワードが指定されていません。
29
+ E01100008: 取引パスワードの書式が正しくありません。
30
+ E01160001: ボーナス分割回数が指定されていません。
31
+ E01110002: 指定されたIDとパスワードの取引が存在しません。
32
+ E01160007: ボーナス分割回数に数字以外の文字が含まれています。
33
+ E01110010: 指定された取引は決済が完了していません。
34
+ E01130012: カード会社略称が最大バイト数を超えています。
35
+ E01160010: ボーナス分割回数に"2"以外を指定しています。
36
+ E01170001: カード番号が指定されていません。
37
+ E01170003: カード番号が最大文字数を超えています。
38
+ E01170006: カード番号に数字以外の文字が含まれています。
39
+ E01170011: カード番号が10桁-16桁の範囲ではありません。
40
+ E01180001: 有効期限が指定されていません。
41
+ E01180003: 有効期限が4桁ではありません。
42
+ E01180006: 有効期限に数字以外の文字が含まれています。
43
+ E01180008: 有効期限の書式が正しくありません。
44
+ E01190001: サイトIDが指定されていません。
45
+ E01190008: サイトIDの書式が正しくありません。
46
+ E01200001: サイトパスワードが指定されていません。
47
+ E01200008: サイトパスワードの書式が正しくありません。
48
+ E01210002: 指定されたIDとパスワードのサイトが存在しません。
49
+ E01220001: 会員IDが指定されていません。
50
+ E01220005: 会員IDが最大桁数を超えています。
51
+ E01220008: 会員IDの書式が正しくありません。
52
+ E01230006: カード登録連番に数字以外の文字が含まれています。
53
+ E01230009: カード登録連番が最大登録可能数を超えています。
54
+ E01240002: 指定されたカードが存在しません。
55
+ E01240012: 指定された会員IDがファイル内で重複しています。(※洗替時)
56
+ E01250008: カードパスワードの書式が正しくありません。
57
+ E01250010: カードパスワードが一致しません。
58
+ E01260001: 支払方法が指定されていません。
59
+ E01260002: 指定された支払方法が存在しません。
60
+ E01260010: 指定されたカード番号または支払方法がありません。
61
+ E01270001: 支払回数が指定されていません。
62
+ E01270005: 支払回数が最大桁数を超えています。
63
+ E01270006: 支払回数に数字以外の文字が含まれています。
64
+ E01270010: 指定された支払回数はご利用できません。
65
+ E01290001: HTTP_ACCEPTが指定されていません。
66
+ E01300001: HTTP_USER_AGENTが指定されていません。
67
+ E01310002: 使用端末が指定されていません。
68
+ E01310007: '使用端末に"0","1"以外の値が指定されています。'
69
+ E01320012: 加盟店自由項目1の値が最大バイト数を超えています。
70
+ E01330012: 加盟店自由項目2の値が最大バイト数を超えています。
71
+ E01340012: 加盟店自由項目3の値が最大バイト数を超えています。
72
+ E01350001: MDが指定されていません。
73
+ E01350008: MDの書式が正しくありません。
74
+ E01360001: PaResが指定されていません。
75
+ E01370008: 3Dセキュア表示店舗名の書式が正しくありません。
76
+ E01370012: 3Dセキュア表示店舗名の値が最大バイト数を超えています。
77
+ E01390002: 指定されたサイトIDと会員IDの会員が存在しません。
78
+ E01390010: 指定されたサイトIDと会員IDの会員が既に存在しています。
79
+ E01400007: '加盟店自由項目返却フラグに"0","1"以外の値が指定されています。'
80
+ E01410010: 当該取引は操作禁止状態です。
81
+ E01420010: 仮売上有効期間を超えています。
82
+ E01430012: 会員名の値が最大バイト数を超えています。
83
+ E01440008: 洗替・継続課金フラグの書式が正しくありません。
84
+ E01450008: 商品コードの書式が正しくありません。
85
+ E01460008: セキュリティコードの書式が正しくありません。
86
+ E01470008: カード登録連番モードの書式が正しくありません。
87
+ E01480008: 名義人の書式が正しくありません。
88
+ E01490005: 利用金額・税送料の合計値が最大桁数を超えています。
89
+ E01500001: ショップ情報文字列が設定されていません。
90
+ E01500005: ショップ情報文字列が間違っています。
91
+ E01500012: ショップ情報文字列が他の項目と矛盾しています。
92
+ E01510001: 購買情報文字列が設定されていません。
93
+ E01510005: 購買情報文字列の文字数が間違っています。
94
+ E01510010: 利用日の書式が正しくありません。
95
+ E01510011: 利用日の値が指定可能範囲外です。
96
+ E01510012: 購買情報文字列が他の項目と矛盾しています。
97
+ E01520002: ユーザー使用端末情報に無効な値が指定されています。
98
+ E01530001: 決済結果戻り先URLが設定されていません。
99
+ E01530005: 決済結果戻り先URLが最大文字数を超えています。
100
+ E01540005: 決済キャンセル時URLが最大文字数を超えています。
101
+ E01550001: 日時情報文字列が設定されていません。
102
+ E01550005: 日時情報文字列の文字数が間違っています。
103
+ E01550006: 日時情報文字列に無効な文字が含まれています。
104
+ E01590005: 商品コードが最大桁数を超えています。
105
+ E01590006: 商品コードに無効な文字が含まれています。
106
+ E01600001: 会員情報チェック文字列が設定されていません。
107
+ E01600005: 会員情報チェック文字列が最大文字数を超えています。
108
+ E01600012: 会員情報チェック文字列が他の項目と矛盾しています。
109
+ E01610005: リトライ回数が0-99の範囲外です。
110
+ E01610006: リトライ回数に数字以外の文字が設定されています。
111
+ E01620005: セッションタイムアウト値が0-9999の範囲外です。
112
+ E01620006: セッションタイムアウト値に数字以外が設定されています。
113
+ E01630010: 取引後カード登録時、取引の会員IDとパラメータの会員IDが一致しません。
114
+ E01640010: 取引後カード登録時、取引のサイトIDとパラメータのサイトIDが一致しません。
115
+ E01650012: 指定されたショップは、指定されたサイトに属していません。
116
+ E01660013: 言語パラメータにサポートされていない値が設定されています。
117
+ E01670013: 出力エンコーディングにサポートされていない値が設定されています。
118
+ E01700001: 項目数が誤っています。
119
+ E01710001: 処理区分(継続課金)が設定されていません。
120
+ E01710002: 指定された処理区分が存在しません。
121
+ E01730001: ボーナス金額が指定されていません。
122
+ E01730005: ボーナス金額が最大桁数を超えています。
123
+ E01730006: 商品コードが"0000990"ではありません。
124
+ E01730007: ボーナス金額に数字以外の文字が含まれています。
125
+ E01740001: 端末処理通番が指定されていません。
126
+ E01740005: 端末処理通番が最大桁数を超えています。
127
+ E01740007: 端末処理通番に数字以外の文字が含まれています。
128
+ E01750001: 利用日が指定されていません。
129
+ E01750008: 利用日の書式が正しくありません。
130
+ E01800001: 暗証番号が未入力です。
131
+ E01800008: 暗証番号の書式が正しくありません。
132
+ E01800010: 暗証番号は利用できません。
133
+ E01810001: 磁気ストライプ区分が不正です。
134
+ E01810008: 磁気ストライプ区分が不正です。
135
+ E01820001: 磁気ストライプ情報が不正です。
136
+ E01820003: 磁気ストライプ情報が不正です。
137
+ E01820008: 磁気ストライプ情報が不正です。
138
+ E11010001: この取引は既に決済が終了しています。
139
+ E11010002: この取引は決済が終了していませんので、変更することができません。
140
+ E11010003: この取引は指定処理区分処理を行うことができません。
141
+ E11010010: 180日超えの取引のため、処理を行うことができません。
142
+ E11010011: 180日超えの取引のため、処理を行うことができません。
143
+ E11010012: 180日超えの取引のため、処理を行うことができません。
144
+ E11010013: 180日超えの取引のため、処理を行うことができません。
145
+ E11010014: 180日超えの取引のため、処理を行うことができません。
146
+ E11010099: このカードはご利用になれません。# 使用されたカードの仕向先が判定出来ませんでした。
147
+ E11010999: ''# 特になし
148
+ E11310001: この取引はリンク決済を実行できません。
149
+ E11310002: この取引はリンク決済を実行できません。
150
+ E11310003: この取引はリンク決済を実行できません。
151
+ E11310004: この取引はリンク決済を実行できません。
152
+ E11310005: 既にカードを登録している会員は、取引後カード登録を実行できません。
153
+ E21010001: 3Dセキュア認証に失敗しました。もう一度、購入画面からやり直して下さい。
154
+ E21010007: 3Dセキュア認証に失敗しました。もう一度、購入画面からやり直して下さい。
155
+ E21010999: 3Dセキュア認証に失敗しました。もう一度、購入画面からやり直して下さい。
156
+ E21020001: 3Dセキュア認証に失敗しました。もう一度、購入画面からやり直して下さい。
157
+ E21020002: 3Dセキュア認証に失敗しました。もう一度、購入画面からやり直して下さい。
158
+ E21020007: 3Dセキュア認証に失敗しました。もう一度、購入画面からやり直して下さい。
159
+ E21020999: 3Dセキュア認証に失敗しました。もう一度、購入画面からやり直して下さい。
160
+ E21010201: このカードでは取引をすることができません。3Dセキュア認証に対応したカードをお使い下さい。
161
+ E21010202: このカードでは取引をすることができません。3Dセキュア認証に対応したカードをお使い下さい。
162
+ E31500014: ''# リクエストメソッドがGETになっています。POSTに変更して下さい。
163
+ E41170002: 入力されたカード会社に対応していません。別のカード番号を入力して下さい。
164
+ E41170099: カード番号に誤りがあります。再度確認して入力して下さい。
165
+ E61010001: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
166
+ E61010002: ご利用できないカードをご利用になったもしくはカード番号が誤っております。
167
+ E61010003: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
168
+ E61020001: 指定の決済方法は利用停止になっています。
169
+ E61030001: ご契約内容/現在のご契約ではご利用になれません。
170
+ E82010001: 実行中にエラーが発生しました。処理は開始されませんでした。
171
+ E90010001: 現在処理を行っているのでもうしばらくお待ち下さい。
172
+ E91099996: システムの内部エラーです。発生時刻や呼び出しパラメータをご確認のうえ、お問い合わせ下さい。
173
+ E91099997: リクエストされたAPIは存在しません。URLをお確かめ下さい。
174
+ E91019999: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
175
+ E91020001: 通信タイムアウトが発生しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
176
+ E91029998: 決済処理に失敗しました。当該お取引について、店舗までお問い合わせ下さい。
177
+ E91029999: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
178
+ E91050001: 決済処理に失敗しました。
179
+ E91060001: システムの内容エラーです。発生時刻や呼び出しパラメータをご確認のうえ、お問い合わせ下さい。
180
+ E91099999: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
181
+ E92000001: 只今、大変混み合っていますので、しばらく時間をあけて再度決済を行って下さい。
182
+ E92000002: 只今、大変混み合っていますので、しばらく時間をあけて再度決済を行って下さい。
183
+ # C系エラー: CAFISセンター内でのエラー
184
+ 42C010000: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
185
+ 42C030000: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
186
+ 42C120000: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
187
+ 42C130000: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
188
+ 42C140000: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
189
+ 42C150000: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
190
+ 42C500000: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
191
+ 42C510000: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
192
+ 42C530000: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
193
+ 42C540000: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
194
+ 42C550000: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
195
+ 42C560000: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
196
+ 42C570000: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
197
+ 42C580000: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
198
+ 42C600000: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
199
+ 42C700000: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
200
+ 42C710000: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
201
+ 42C720000: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
202
+ 42C730000: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
203
+ 42C740000: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
204
+ 42C750000: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
205
+ 42C760000: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
206
+ 42C770000: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
207
+ 42C780000: 決済処理に失敗しました。申し訳ございませんが、しばらく時間をあけて購入画面からやり直して下さい。
208
+ # G系エラー: 各カード会社内でのエラー
209
+ 42G020000: カード残高が不足しているために、決済を完了することができませんでした。
210
+ 42G030000: カード限度額を超えているために、決済を完了することができませんでした。
211
+ 42G040000: カード残高が不足しているために、決済を完了することができませんでした。
212
+ 42G050000: カード限度額を超えているために、決済を完了することができませんでした。
213
+ 42G120000: このカードでは取引をすることができません。
214
+ 42G220000: このカードでは取引をすることができません。
215
+ 42G300000: このカードでは取引をすることができません。
216
+ 42G420000: 暗証番号が誤っているために、決済を完了することができませんでした。
217
+ 42G440000: セキュリティコードが誤っているために、決済を完了することができませんでした。
218
+ 42G450000: セキュリティコードが入力されていないために、決済を完了することができませんでした。
219
+ 42G540000: このカードでは取引をすることができません。
220
+ 42G550000: カード限度額を超えているために、決済を完了することができませんでした。
221
+ 42G560000: このカードでは取引をすることができません。
222
+ 42G600000: このカードでは取引をすることができません。
223
+ 42G610000: このカードでは取引をすることができません。
224
+ 42G650000: カード番号に誤りがあるために、決済を完了することができませんでした。
225
+ 42G670000: 商品コードに誤りがあるために、決済を完了することができませんでした。
226
+ 42G680000: 金額に誤りがあるために、決済を完了することができませんでした。
227
+ 42G690000: 税送料に誤りがあるために、決済を完了することができませんでした。
228
+ 42G700000: ボーナス回数に誤りがあるために、決済を完了することができませんでした。
229
+ 42G710000: ボーナス月に誤りがあるために、決済を完了することができませんでした。
230
+ 42G720000: ボーナス額に誤りがあるために、決済を完了することができませんでした。
231
+ 42G730000: 支払開始月に誤りがあるために、決済を完了することができませんでした。
232
+ 42G740000: 分割回数に誤りがあるために、決済を完了することができませんでした。
233
+ 42G750000: 分割金額に誤りがあるために、決済を完了することができませんでした。
234
+ 42G760000: 初月金額に誤りがあるために、決済を完了することができませんでした。
235
+ 42G770000: 業務区分に誤りがあるために、決済を完了することができませんでした。
236
+ 42G780000: 支払区分に誤りがあるために、決済を完了することができませんでした。
237
+ 42G790000: 照会区分に誤りがあるために、決済を完了することができませんでした。
238
+ 42G800000: 取消区分に誤りがあるために、決済を完了することができませんでした。
239
+ 42G810000: 取消取扱区分に誤りがあるために、決済を完了することができませんでした。
240
+ 42G830000: 有効期限に誤りがあるために、決済を完了することができませんでした。
241
+ 42G920000: このカードでは取引をすることができません。
242
+ 42G950000: このカードでは取引をすることができません。
243
+ 42G960000: このカードでは取引をすることができません。
244
+ 42G970000: このカードでは取引をすることができません。
245
+ 42G980000: このカードでは取引をすることができません。
246
+ 42G990000: このカードでは取引をすることができません。
@@ -0,0 +1,39 @@
1
+ # coding: utf-8
2
+
3
+ module GmoPayment
4
+ class Client
5
+ class Options
6
+ # @param [Hash] opts
7
+ # @option opts [String] :api_endpoint
8
+ # @option opts [String] :proxy
9
+ # @option opts [Integer] :verify_mode
10
+ def initialize(opts = {})
11
+ [:api_endpoint, :proxy, :verify_mode].each do |item|
12
+ instance_variable_set(:"@#{item}", opts[item] || GmoPayment::Configure.__send__(item))
13
+ end
14
+ end
15
+
16
+ # GMO API endpoint
17
+ #
18
+ # @return [String]
19
+ def api_endpoint
20
+ @api_endpoint ||= ENV['GMO_API_ENDPOINT']
21
+ end
22
+
23
+ # Proxy URI
24
+ #
25
+ # @return [URI::Generic, URI::HTTP]
26
+ def proxy
27
+ ::URI.parse(@proxy.to_s)
28
+ end
29
+
30
+ # SSL/TLS verify mode (VERIFY_PEER or VERIFY_NONE).
31
+ # Defaults to: 1 (VERIFY_PEER).
32
+ #
33
+ # @return [Integer]
34
+ def verify_mode
35
+ @verify_mode ||= ::OpenSSL::SSL::VERIFY_PEER
36
+ end
37
+ end
38
+ end
39
+ end