gmo_payment 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
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