wechat-ipay 2.0.0 → 2.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 417cacf5d330314a773fe49fb898dc94194da17ae4486588e09813e1fdfcf547
4
- data.tar.gz: '09fd147836791a7842536f0d598bcbb590fcf1d9fefdb9b94e55580e600086cc'
3
+ metadata.gz: 6c3c0ede615d2ba3525d653d30c7cb37fd1562d72b613d2cb707456349de0f44
4
+ data.tar.gz: 7d0c510fc331d96cf847adfb52e73bc1192fdba43e5f60379d593d4b158b47c5
5
5
  SHA512:
6
- metadata.gz: 9abaf1188c2a61716948e4139194aa62b3a79cba3a9eb75b05e70a15d72a0b25b631b93a7042adb89eb4ed2b479dd9cdd5f98c42b538b86a6a95b75882e09729
7
- data.tar.gz: 5f36f28a6c57af14678d438bd13d05d9eb580aa1b594ba72f469545a885368a378e069a83c90e99bfe87edb4e1be3d8c90c2dbdee165c8a53fcc2790a18cf554
6
+ metadata.gz: d81afdc678623d501427e4d65ec709f933143068aeda2e1f14d5e72eb85632d9aaf0ced3f8ae8671d2d6ec8f5821a06ccbf1c682389a03e99884833f84e42540
7
+ data.tar.gz: eb34d1ee9cce9a1843a510f221227357191e2ba5520450bd2d8778a240b21741b6ee12869db9e668072530ed2e10ea3faebc0a803109c1db8ae1afc626e9c390
data/CHANGELOG.md CHANGED
@@ -7,9 +7,9 @@
7
7
 
8
8
  ## 1.0.8 (05/26/2021)
9
9
 
10
- * Add api `invoke_transactions_in_native` to `WechatPay::Ecommerce`
10
+ * Add api `invoke_transactions_in_native` to `WechatIpay::Ecommerce`
11
11
 
12
12
  ## 1.0.7 (05/16/2021)
13
13
 
14
- * Change `WechatPay::Ecommerce.get_certificates` to `WechatPay::Ecommerce.certificates`
14
+ * Change `WechatIpay::Ecommerce.get_certificates` to `WechatIpay::Ecommerce.certificates`
15
15
  * Refactor code and document.
data/README.md CHANGED
@@ -4,32 +4,32 @@ A simple Wechat pay ruby gem, without unnecessary magic or wrapper. Just a simpl
4
4
 
5
5
  Please read official document first: https://pay.weixin.qq.com/wiki/doc/apiv3_partner/pages/index.shtml
6
6
 
7
- If you want check the present public api, you can find them in the [Document](https://www.rubydoc.info/github/lanzhiheng/wechat-pay/master/index)。
7
+ If you want check the present public api, you can find them in the [Document](https://www.rubydoc.info/github/lanzhiheng/wechat-ipay/master/index)。
8
8
 
9
9
  Summary:
10
10
 
11
- `WechatPay::Direct` will contain the public api for direct connection merchant(直连商户)and `WechatPay::Ecommerce` will contain the public api for ecommerce(服务商,电商平台)。For more detail you can refer to the wechat document.
11
+ `WechatIpay::Direct` will contain the public api for direct connection merchant(直连商户)and `WechatIpay::Ecommerce` will contain the public api for ecommerce(服务商,电商平台)。For more detail you can refer to the wechat document.
12
12
 
13
13
  - 直连商户: https://pay.weixin.qq.com/wiki/doc/apiv3/index.shtml
14
14
  - 服务商: https://pay.weixin.qq.com/wiki/doc/apiv3_partner/index.shtml
15
15
  - 电商平台(电商收付通): https://pay.weixin.qq.com/wiki/doc/apiv3_partner/open/pay/chapter3_3_3.shtml
16
16
 
17
- If you find any issue in this repo, don't shy to create issues https://github.com/lanzhiheng/wechat-pay/issues
17
+ If you find any issue in this repo, don't shy to create issues https://github.com/lanzhiheng/wechat-ipay/issues
18
18
 
19
- For more Information,you can check my posts: https://www.lanzhiheng.com/posts/preview/ruby-gem-for-wechat-pay-v3
19
+ For more Information,you can check my posts: https://www.lanzhiheng.com/posts/preview/ruby-gem-for-wechat-ipay-v3
20
20
 
21
21
  # Installation
22
22
 
23
23
  Add this line to your Gemfile:
24
24
 
25
25
  ```
26
- gem 'wechat-pay'
26
+ gem 'wechat-ipay', '~> 2.0.0'
27
27
  ```
28
28
 
29
29
  or development version
30
30
 
31
31
  ```
32
- gem 'wechat-pay', :github => 'lanzhiheng/wechat-pay'
32
+ gem 'wechat-ipay', :github => 'tianlu1677/wechat-ipay'
33
33
  ```
34
34
 
35
35
  And then execute:
@@ -45,12 +45,12 @@ $ bundle
45
45
  Create `config/initializer/wechat_pay.rb`and put following configurations into it
46
46
 
47
47
  ``` ruby
48
- WechatPay.apiclient_key = File.read('apiclient_key.pem')
49
- WechatPay.platform_cert = File.read('platform_cert.pem') # You should comment this line before downloaded platform_cert.
50
- WechatPay.apiclient_cert = File.read('apiclient_cert.pem')
51
- WechatPay.app_id = 'Your App Id'
52
- WechatPay.mch_id = 'Your Mch Id'
53
- WechatPay.mch_key = 'Your Mch Key'
48
+ WechatIpay.apiclient_key = File.read('apiclient_key.pem')
49
+ WechatIpay.platform_cert = File.read('platform_cert.pem') # You should comment this line before downloaded platform_cert.
50
+ WechatIpay.apiclient_cert = File.read('apiclient_cert.pem')
51
+ WechatIpay.app_id = 'Your App Id'
52
+ WechatIpay.mch_id = 'Your Mch Id'
53
+ WechatIpay.mch_key = 'Your Mch Key'
54
54
  ```
55
55
 
56
56
  ## Download
@@ -62,7 +62,7 @@ def download_certificate
62
62
  download_path = 'Your Download Path'
63
63
  raise '必须提供证书下载路径' if download_path.blank?
64
64
 
65
- response = WechatPay::Ecommerce.certificates
65
+ response = WechatIpay::Ecommerce.certificates
66
66
 
67
67
  raise '证书下载失败' unless response.code == 200
68
68
 
@@ -75,7 +75,7 @@ def download_certificate
75
75
  nonce = encrypt_certificate['nonce']
76
76
  ciphertext = encrypt_certificate['ciphertext']
77
77
 
78
- content = WechatPay::Sign.decrypt_the_encrypt_params(
78
+ content = WechatIpay::Sign.decrypt_the_encrypt_params(
79
79
  associated_data: associated_data,
80
80
  nonce: nonce,
81
81
  ciphertext: ciphertext
data/Rakefile CHANGED
@@ -13,7 +13,7 @@ end
13
13
  require 'rdoc/task'
14
14
  Rake::RDocTask.new do |rdoc|
15
15
  rdoc.rdoc_dir = 'rdoc'
16
- rdoc.title = "wechat-pay #{WechatPay::VERSION}"
16
+ rdoc.title = "wechat-ipay #{WechatIpay::VERSION}"
17
17
  rdoc.rdoc_files.include('README*')
18
18
  rdoc.rdoc_files.include('lib/**/*.rb')
19
19
  end
@@ -1,13 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'json'
4
- require 'wechat-pay/helper'
4
+ require 'wechat-ipay/helper'
5
5
 
6
- module WechatPay
6
+ module WechatIpay
7
7
  # # 直连商户相关接口封装(常用的已有,待完善)
8
8
  # 文档: https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter3_1_1.shtml
9
9
  module Direct
10
- include WechatPayHelper
10
+ include WechatIpayHelper
11
11
 
12
12
  # @private
13
13
  # @!macro [attach] define_transaction_method
@@ -32,7 +32,7 @@ module WechatPay
32
32
  # notify_url: ENV['NOTIFICATION_URL']
33
33
  # }
34
34
  #
35
- # WechatPay::Direct.invoke_transactions_in_$1(params)
35
+ # WechatIpay::Direct.invoke_transactions_in_$1(params)
36
36
  # ```
37
37
  # @!method invoke_transactions_in_$1
38
38
  # @!scope class
@@ -78,7 +78,7 @@ module WechatPay
78
78
  # notify_url: 'the_url'
79
79
  # }
80
80
  #
81
- # WechatPay::Direct.invoke_combine_transactions_in_$1(params)
81
+ # WechatIpay::Direct.invoke_combine_transactions_in_$1(params)
82
82
  # ```
83
83
  # @!method invoke_combine_transactions_in_$1
84
84
  # @!scope class
@@ -86,7 +86,7 @@ module WechatPay
86
86
  const_set("INVOKE_COMBINE_TRANSACTIONS_IN_#{key.upcase}_FIELDS",
87
87
  %i[combine_out_trade_no scene_info sub_orders notify_url].freeze)
88
88
  define_singleton_method("invoke_combine_transactions_in_#{key}") do |params|
89
- WechatPay::Ecommerce.send("invoke_combine_transactions_in_#{key}", params)
89
+ WechatIpay::Ecommerce.send("invoke_combine_transactions_in_#{key}", params)
90
90
  end
91
91
  end
92
92
 
@@ -105,7 +105,7 @@ module WechatPay
105
105
  # Document: https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter7_3_11.shtml
106
106
  #
107
107
  # ``` ruby
108
- # WechatPay::Direct.query_order(combine_out_trade_no: 'C202104302474')
108
+ # WechatIpay::Direct.query_order(combine_out_trade_no: 'C202104302474')
109
109
  # ```
110
110
  #
111
111
  def self.query_combine_order(params)
@@ -133,7 +133,7 @@ module WechatPay
133
133
  # Document: https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter7_3_11.shtml
134
134
  #
135
135
  # ``` ruby
136
- # WechatPay::Direct.close_combine_order(combine_out_trade_no: 'C202104302474')
136
+ # WechatIpay::Direct.close_combine_order(combine_out_trade_no: 'C202104302474')
137
137
  # ```
138
138
  def self.close_combine_order(params)
139
139
  combine_out_trade_no = params.delete(:combine_out_trade_no)
@@ -141,7 +141,7 @@ module WechatPay
141
141
  url = "/v3/combine-transactions/out-trade-no/#{combine_out_trade_no}/close"
142
142
 
143
143
  payload = {
144
- combine_appid: WechatPay.app_id
144
+ combine_appid: WechatIpay.app_id
145
145
  }.merge(params)
146
146
 
147
147
  payload_json = payload.to_json
@@ -165,8 +165,8 @@ module WechatPay
165
165
  # Example:
166
166
  #
167
167
  # ``` ruby
168
- # WechatPay::Direct.query_order(transaction_id: '4323400972202104305133344444') # by transaction_id
169
- # WechatPay::Direct.query_order(out_trade_no: 'N202104302474') # by out_trade_no
168
+ # WechatIpay::Direct.query_order(transaction_id: '4323400972202104305133344444') # by transaction_id
169
+ # WechatIpay::Direct.query_order(out_trade_no: 'N202104302474') # by out_trade_no
170
170
  # ```
171
171
  #
172
172
  def self.query_order(params)
@@ -181,7 +181,7 @@ module WechatPay
181
181
  end
182
182
 
183
183
  params = params.merge({
184
- mchid: WechatPay.mch_id
184
+ mchid: WechatIpay.mch_id
185
185
  })
186
186
 
187
187
  method = 'GET'
@@ -206,14 +206,14 @@ module WechatPay
206
206
  # Example:
207
207
  #
208
208
  # ``` ruby
209
- # WechatPay::Direct.close_order(out_trade_no: 'N3344445')
209
+ # WechatIpay::Direct.close_order(out_trade_no: 'N3344445')
210
210
  # ```
211
211
  #
212
212
  def self.close_order(params)
213
213
  out_trade_no = params.delete(:out_trade_no)
214
214
  url = "/v3/pay/transactions/out-trade-no/#{out_trade_no}/close"
215
215
  params = params.merge({
216
- mchid: WechatPay.mch_id
216
+ mchid: WechatIpay.mch_id
217
217
  })
218
218
 
219
219
  method = 'POST'
@@ -235,8 +235,8 @@ module WechatPay
235
235
  # Example:
236
236
  #
237
237
  # ``` ruby
238
- # WechatPay::Direct.invoke_refund(transaction_id: '4323400972202104305131070170', total: 1, refund: 1, out_refund_no: 'R10000')
239
- # WechatPay::Direct.invoke_refund(out_trade_no: 'N2021', total: 1, refund: 1, out_refund_no: 'R10000').body
238
+ # WechatIpay::Direct.invoke_refund(transaction_id: '4323400972202104305131070170', total: 1, refund: 1, out_refund_no: 'R10000')
239
+ # WechatIpay::Direct.invoke_refund(out_trade_no: 'N2021', total: 1, refund: 1, out_refund_no: 'R10000').body
240
240
  # ```
241
241
  def self.invoke_refund(params)
242
242
  url = '/v3/refund/domestic/refunds'
@@ -268,7 +268,7 @@ module WechatPay
268
268
  # Example:
269
269
  #
270
270
  # ``` ruby
271
- # WechatPay::Direct.query_refund(out_refund_no: 'R10000')
271
+ # WechatIpay::Direct.query_refund(out_refund_no: 'R10000')
272
272
  # ```
273
273
  #
274
274
  def self.query_refund(params)
@@ -297,7 +297,7 @@ module WechatPay
297
297
  # Example:
298
298
  #
299
299
  # ``` ruby
300
- # WechatPay::direct.tradebill(bill_date: '2021-04-30')
300
+ # WechatIpay::direct.tradebill(bill_date: '2021-04-30')
301
301
  # ```
302
302
  def self.tradebill(params)
303
303
  path = '/v3/bill/tradebill'
@@ -326,7 +326,7 @@ module WechatPay
326
326
  # Example:
327
327
  #
328
328
  # ``` ruby
329
- # WechatPay::Direct.fundflowbill(bill_date: '2021-04-30')
329
+ # WechatIpay::Direct.fundflowbill(bill_date: '2021-04-30')
330
330
  # ```
331
331
  #
332
332
  def self.fundflowbill(params)
@@ -353,8 +353,8 @@ module WechatPay
353
353
  method = 'POST'
354
354
 
355
355
  params = {
356
- mchid: WechatPay.mch_id,
357
- appid: WechatPay.app_id
356
+ mchid: WechatIpay.mch_id,
357
+ appid: WechatIpay.app_id
358
358
  }.merge(params)
359
359
 
360
360
  payload_json = params.to_json
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module WechatPay
3
+ module WechatIpay
4
4
  # 商户进件相关
5
5
  module Ecommerce
6
6
  # 二级商户进件
@@ -61,7 +61,7 @@ module WechatPay
61
61
  # ```
62
62
  #
63
63
  # ``` ruby
64
- # WechatPay::Ecommerce.applyment(params)
64
+ # WechatIpay::Ecommerce.applyment(params)
65
65
  # ```
66
66
  #
67
67
  def self.applyment(payload)
@@ -76,7 +76,7 @@ module WechatPay
76
76
  for_sign: payload_json,
77
77
  payload: payload_json,
78
78
  extra_headers: {
79
- 'Wechatpay-Serial' => WechatPay.platform_serial_no
79
+ 'Wechatpay-Serial' => WechatIpay.platform_serial_no
80
80
  }
81
81
  )
82
82
  end
@@ -90,8 +90,8 @@ module WechatPay
90
90
  # Example:
91
91
  #
92
92
  # ``` ruby
93
- # WechatPay::Ecommerce.query_applyment(out_request_no: 'APPLYMENT_00000000005') # by out_request_no
94
- # WechatPay::Ecommerce.query_applyment(applyment_id: '200040444455566667') # by_applyment_id
93
+ # WechatIpay::Ecommerce.query_applyment(out_request_no: 'APPLYMENT_00000000005') # by out_request_no
94
+ # WechatIpay::Ecommerce.query_applyment(applyment_id: '200040444455566667') # by_applyment_id
95
95
  # ```
96
96
  #
97
97
  def self.query_applyment(params)
@@ -120,7 +120,7 @@ module WechatPay
120
120
  # Example:
121
121
  #
122
122
  # ``` ruby
123
- # WechatPay::Ecommerce.certificates
123
+ # WechatIpay::Ecommerce.certificates
124
124
  # ```
125
125
  #
126
126
  def self.certificates
@@ -145,7 +145,7 @@ module WechatPay
145
145
  # Example:
146
146
  #
147
147
  # ``` ruby
148
- # WechatPay::Ecommerce.query_settlement(sub_mchid: '16000000')
148
+ # WechatIpay::Ecommerce.query_settlement(sub_mchid: '16000000')
149
149
  # ```
150
150
  #
151
151
  def self.query_settlement(params)
@@ -171,7 +171,7 @@ module WechatPay
171
171
  # Example:
172
172
  #
173
173
  # ``` ruby
174
- # WechatPay::Ecommerce.modify_settlement(sub_mchid: '15000000', account_type: 'ACCOUNT_TYPE_PRIVATE', account_bank: '工商银行', bank_address_code: '110000', account_number: WechatPay::Sign.sign_important_info('755555555'))
174
+ # WechatIpay::Ecommerce.modify_settlement(sub_mchid: '15000000', account_type: 'ACCOUNT_TYPE_PRIVATE', account_bank: '工商银行', bank_address_code: '110000', account_number: WechatIpay::Sign.sign_important_info('755555555'))
175
175
  # ```
176
176
  #
177
177
  def self.modify_settlement(params)
@@ -187,7 +187,7 @@ module WechatPay
187
187
  for_sign: payload_json,
188
188
  payload: payload_json,
189
189
  extra_headers: {
190
- 'Wechatpay-Serial' => WechatPay.platform_serial_no
190
+ 'Wechatpay-Serial' => WechatIpay.platform_serial_no
191
191
  }
192
192
  )
193
193
  end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module WechatPay
3
+ module WechatIpay
4
4
  # 余额相关
5
5
  module Ecommerce
6
6
  QUERY_REALTIME_BALANCE_FIELDS = [:sub_mchid].freeze # :nodoc:
@@ -12,7 +12,7 @@ module WechatPay
12
12
  # Example:
13
13
  #
14
14
  # ``` ruby
15
- # WechatPay::Ecommerce.query_realtime_balance(sub_mchid: '1600000')
15
+ # WechatIpay::Ecommerce.query_realtime_balance(sub_mchid: '1600000')
16
16
  # ```
17
17
  def self.query_realtime_balance(params)
18
18
  sub_mchid = params.delete(:sub_mchid)
@@ -37,7 +37,7 @@ module WechatPay
37
37
  # Example:
38
38
  #
39
39
  # ``` ruby
40
- # WechatPay::Ecommerce.query_endday_balance(sub_mchid: '1600000', date: '2019-08-17')
40
+ # WechatIpay::Ecommerce.query_endday_balance(sub_mchid: '1600000', date: '2019-08-17')
41
41
  # ```
42
42
  def self.query_endday_balance(params)
43
43
  sub_mchid = params.delete(:sub_mchid)
@@ -64,8 +64,8 @@ module WechatPay
64
64
  # Example:
65
65
  #
66
66
  # ``` ruby
67
- # WechatPay::Ecommerce.query_platform_realtime_balance(account_type: 'BASIC') # basic account
68
- # WechatPay::Ecommerce.query_platform_realtime_balance(account_type: 'FEES') # fees account
67
+ # WechatIpay::Ecommerce.query_platform_realtime_balance(account_type: 'BASIC') # basic account
68
+ # WechatIpay::Ecommerce.query_platform_realtime_balance(account_type: 'FEES') # fees account
69
69
  # ```
70
70
  #
71
71
  def self.query_platform_realtime_balance(params)
@@ -91,8 +91,8 @@ module WechatPay
91
91
  # Example:
92
92
  #
93
93
  # ``` ruby
94
- # WechatPay::Ecommerce.query_platform_endday_balance(account_type: 'BASIC')
95
- # WechatPay::Ecommerce.query_platform_endday_balance(account_type: 'FEES')
94
+ # WechatIpay::Ecommerce.query_platform_endday_balance(account_type: 'BASIC')
95
+ # WechatIpay::Ecommerce.query_platform_endday_balance(account_type: 'FEES')
96
96
  # ```
97
97
  #
98
98
  def self.query_platform_endday_balance(params)
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module WechatPay
3
+ module WechatIpay
4
4
  # 账单相关
5
5
  module Ecommerce
6
6
  class << self
@@ -13,7 +13,7 @@ module WechatPay
13
13
  # Example:
14
14
  #
15
15
  # ``` ruby
16
- # WechatPay::Ecommerce.tradebill(bill_date: '2021-04-30')
16
+ # WechatIpay::Ecommerce.tradebill(bill_date: '2021-04-30')
17
17
  # ```
18
18
  def tradebill(params)
19
19
  path = '/v3/bill/tradebill'
@@ -40,7 +40,7 @@ module WechatPay
40
40
  # Example:
41
41
  #
42
42
  # ``` ruby
43
- # WechatPay::Ecommerce.fundflowbill(bill_date: '2021-04-30')
43
+ # WechatIpay::Ecommerce.fundflowbill(bill_date: '2021-04-30')
44
44
  # ```
45
45
  #
46
46
  def fundflowbill(params)
@@ -68,7 +68,7 @@ module WechatPay
68
68
  # Example:
69
69
  #
70
70
  # ``` ruby
71
- # WechatPay::Ecommerce.ecommerce_fundflowbill(bill_date: '2021-04-30', account_type: 'ALL', algorithm: 'AEAD_AES_256_GCM')
71
+ # WechatIpay::Ecommerce.ecommerce_fundflowbill(bill_date: '2021-04-30', account_type: 'ALL', algorithm: 'AEAD_AES_256_GCM')
72
72
  # ```
73
73
  #
74
74
  def ecommerce_fundflowbill(params)
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module WechatPay
3
+ module WechatIpay
4
4
  # 合并订单相关
5
5
  module Ecommerce
6
6
  # @private
@@ -33,7 +33,7 @@ module WechatPay
33
33
  # notify_url: 'the_url'
34
34
  # }
35
35
  #
36
- # WechatPay::Ecommerce.invoke_combine_transactions_in_$1(params)
36
+ # WechatIpay::Ecommerce.invoke_combine_transactions_in_$1(params)
37
37
  # ```
38
38
  # @!method invoke_combine_transactions_in_$1
39
39
  # @!scope class
@@ -58,7 +58,7 @@ module WechatPay
58
58
  # Document: https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter7_3_11.shtml
59
59
  #
60
60
  # ``` ruby
61
- # WechatPay::Ecommerce.query_order(combine_out_trade_no: 'C202104302474')
61
+ # WechatIpay::Ecommerce.query_order(combine_out_trade_no: 'C202104302474')
62
62
  # ```
63
63
  #
64
64
  def self.query_combine_order(params)
@@ -84,7 +84,7 @@ module WechatPay
84
84
  # Document: https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter7_3_11.shtml
85
85
  #
86
86
  # ``` ruby
87
- # WechatPay::Ecommerce.close_combine_order(combine_out_trade_no: 'C202104302474')
87
+ # WechatIpay::Ecommerce.close_combine_order(combine_out_trade_no: 'C202104302474')
88
88
  # ```
89
89
  def self.close_combine_order(params)
90
90
  combine_out_trade_no = params.delete(:combine_out_trade_no)
@@ -92,7 +92,7 @@ module WechatPay
92
92
  url = "/v3/combine-transactions/out-trade-no/#{combine_out_trade_no}/close"
93
93
 
94
94
  payload = {
95
- combine_appid: WechatPay.app_id
95
+ combine_appid: WechatIpay.app_id
96
96
  }.merge(params)
97
97
 
98
98
  payload_json = payload.to_json
@@ -115,8 +115,8 @@ module WechatPay
115
115
  method = 'POST'
116
116
 
117
117
  params = {
118
- combine_mchid: WechatPay.mch_id,
119
- combine_appid: WechatPay.app_id
118
+ combine_mchid: WechatIpay.mch_id,
119
+ combine_appid: WechatIpay.app_id
120
120
  }.merge(params)
121
121
 
122
122
  payload_json = params.to_json
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module WechatPay
3
+ module WechatIpay
4
4
  # 订单相关
5
5
  module Ecommerce
6
6
  # @private
@@ -25,7 +25,7 @@ module WechatPay
25
25
  # notify_url: 'the url'
26
26
  # }
27
27
  #
28
- # WechatPay::Ecommerce.invoke_transactions_in_$1(params)
28
+ # WechatIpay::Ecommerce.invoke_transactions_in_$1(params)
29
29
  # ```
30
30
  # @!method invoke_transactions_in_$1
31
31
  # @!scope class
@@ -50,8 +50,8 @@ module WechatPay
50
50
  # Document: https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter7_2_5.shtml
51
51
  #
52
52
  # ``` ruby
53
- # WechatPay::Ecommerce.query_order(sub_mchid: '16000008', transaction_id: '4323400972202104305133344444') # by transaction_id
54
- # WechatPay::Ecommerce.query_order(sub_mchid: '16000008', out_trade_no: 'N202104302474') # by out_trade_no
53
+ # WechatIpay::Ecommerce.query_order(sub_mchid: '16000008', transaction_id: '4323400972202104305133344444') # by transaction_id
54
+ # WechatIpay::Ecommerce.query_order(sub_mchid: '16000008', out_trade_no: 'N202104302474') # by out_trade_no
55
55
  # ```
56
56
  #
57
57
  def self.query_order(params)
@@ -66,7 +66,7 @@ module WechatPay
66
66
  end
67
67
 
68
68
  params = params.merge({
69
- sp_mchid: WechatPay.mch_id
69
+ sp_mchid: WechatIpay.mch_id
70
70
  })
71
71
 
72
72
  method = 'GET'
@@ -89,14 +89,14 @@ module WechatPay
89
89
  # Document: https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter7_2_6.shtml
90
90
  #
91
91
  # ``` ruby
92
- # WechatPay::Ecommerce.close_order(sub_mchid: '16000008', out_trade_no: 'N3344445')
92
+ # WechatIpay::Ecommerce.close_order(sub_mchid: '16000008', out_trade_no: 'N3344445')
93
93
  # ```
94
94
  #
95
95
  def self.close_order(params)
96
96
  out_trade_no = params.delete(:out_trade_no)
97
97
  url = "/v3/pay/partner/transactions/out-trade-no/#{out_trade_no}/close"
98
98
  params = params.merge({
99
- sp_mchid: WechatPay.mch_id
99
+ sp_mchid: WechatIpay.mch_id
100
100
  })
101
101
 
102
102
  method = 'POST'
@@ -117,8 +117,8 @@ module WechatPay
117
117
  method = 'POST'
118
118
 
119
119
  params = {
120
- sp_appid: WechatPay.app_id,
121
- sp_mchid: WechatPay.mch_id
120
+ sp_appid: WechatIpay.app_id,
121
+ sp_mchid: WechatIpay.mch_id
122
122
  }.merge(params)
123
123
 
124
124
  payload_json = params.to_json
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module WechatPay
3
+ module WechatIpay
4
4
  # 分账相关
5
5
  module Ecommerce
6
6
  class << self
@@ -14,13 +14,13 @@ module WechatPay
14
14
  #
15
15
  # ``` ruby
16
16
  # params = {"out_trade_no"=>"P202104306585", "transaction_id"=>"4323400972202104301286330188", "sub_mchid"=>"160000", "out_order_no"=>"N202104307987", "finish"=>true, "receivers"=>[{"type"=>"MERCHANT_ID", "receiver_account"=>"1607189890", "amount"=>1, "description"=>"平台抽成", "receiver_name"=>"CXOO5SF5sylMhSWjUBHQ6dBN0BTdrGExiziO8OEnJEG/nAa7gw6JTbsFQVhUbXD2er07Gcvt7qsLg7wYEe6iqNKbHHRWvChVVKWcKSyvfMOcRa95lxUkVn2+YdMmQ/Rt2h+xN7HMFMVPh9Py2c3sxnv1hZSraTEBWp577NOVwfSKiDTOAnbLtVtLbJndZ2N/bRXzW/gpbQV6TnnsrKPJ+NQ64kCedaYoO0XvEK1JavJju4kUAw/TnJ78jBMwj0gx2kfrsAgtwGrIGhrqhGcGHwwwPPDk5lS/iVaKpSdMvxOHN/9mrAqgqmvBg9uHRKE4sUqkZWuaiAFvYF9/5sLgjQ=="}]}
17
- # WechatPay::Ecommerce.request_profitsharing(params)
17
+ # WechatIpay::Ecommerce.request_profitsharing(params)
18
18
  # ```
19
19
  def request_profitsharing(params)
20
20
  url = '/v3/ecommerce/profitsharing/orders'
21
21
  method = 'POST'
22
22
  params = {
23
- appid: WechatPay.app_id
23
+ appid: WechatIpay.app_id
24
24
  }.merge(params)
25
25
 
26
26
  payload_json = params.to_json
@@ -31,7 +31,7 @@ module WechatPay
31
31
  for_sign: payload_json,
32
32
  payload: payload_json,
33
33
  extra_headers: {
34
- 'Wechatpay-Serial' => WechatPay.platform_serial_no
34
+ 'Wechatpay-Serial' => WechatIpay.platform_serial_no
35
35
  }
36
36
  )
37
37
  end
@@ -45,7 +45,7 @@ module WechatPay
45
45
  # Example:
46
46
  #
47
47
  # ``` ruby
48
- # WechatPay::Ecommerce.query_profitsharing(out_order_no: 'N202104288345', sub_mchid: '16000000', transaction_id: '4200001048202104280183691118')
48
+ # WechatIpay::Ecommerce.query_profitsharing(out_order_no: 'N202104288345', sub_mchid: '16000000', transaction_id: '4200001048202104280183691118')
49
49
  # ```
50
50
  #
51
51
  def query_profitsharing(params)
@@ -70,8 +70,8 @@ module WechatPay
70
70
  # Document: https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter7_4_3.shtml
71
71
  #
72
72
  # ``` ruby
73
- # WechatPay::Ecommerce.return_profitsharing(out_order_no: 'P202104306585', sub_mchid: '16000000', out_return_no: 'R20210430223', return_mchid: '180000', amount: 1, description: '分账回退')
74
- # WechatPay::Ecommerce.return_profitsharing(order_id: '3008450740201411110007820472', sub_mchid: '16000000', out_return_no: 'R20210430223', return_mchid: '180000', amount: 1, description: '分账回退')
73
+ # WechatIpay::Ecommerce.return_profitsharing(out_order_no: 'P202104306585', sub_mchid: '16000000', out_return_no: 'R20210430223', return_mchid: '180000', amount: 1, description: '分账回退')
74
+ # WechatIpay::Ecommerce.return_profitsharing(order_id: '3008450740201411110007820472', sub_mchid: '16000000', out_return_no: 'R20210430223', return_mchid: '180000', amount: 1, description: '分账回退')
75
75
  # ```
76
76
  def return_profitsharing(params)
77
77
  url = '/v3/ecommerce/profitsharing/returnorders'
@@ -96,8 +96,8 @@ module WechatPay
96
96
  # Example:
97
97
  #
98
98
  # ``` ruby
99
- # WechatPay::Ecommerce.query_return_profitsharing(sub_mchid: '1608747309', out_order_no: 'P202104306585', out_return_no: 'R202105023455')
100
- # WechatPay::Ecommerce.query_return_profitsharing(sub_mchid: '1608747309', order_id: '3008450740201411110007820472', out_return_no: 'R202105023455')
99
+ # WechatIpay::Ecommerce.query_return_profitsharing(sub_mchid: '1608747309', out_order_no: 'P202104306585', out_return_no: 'R202105023455')
100
+ # WechatIpay::Ecommerce.query_return_profitsharing(sub_mchid: '1608747309', order_id: '3008450740201411110007820472', out_return_no: 'R202105023455')
101
101
  # ```
102
102
  def query_return_profitsharing(params)
103
103
  method = 'GET'
@@ -123,7 +123,7 @@ module WechatPay
123
123
  # Example:
124
124
  #
125
125
  # ``` ruby
126
- # WechatPay::Ecommerce.finish_profitsharing(sub_mchid: '160000', out_order_no: 'P202104303106', transaction_id: '4323400972202104305131070133', description: '直接打款到二级商户不分账').bod
126
+ # WechatIpay::Ecommerce.finish_profitsharing(sub_mchid: '160000', out_order_no: 'P202104303106', transaction_id: '4323400972202104305131070133', description: '直接打款到二级商户不分账').bod
127
127
  # ```
128
128
  #
129
129
  def finish_profitsharing(params)
@@ -149,7 +149,7 @@ module WechatPay
149
149
  # Example:
150
150
  #
151
151
  # ``` ruby
152
- # WechatPay::Ecommerce.query_profitsharing_amount({ transaction_id: '4323400972202104301286330188' })
152
+ # WechatIpay::Ecommerce.query_profitsharing_amount({ transaction_id: '4323400972202104301286330188' })
153
153
  # ```
154
154
  #
155
155
  def query_profitsharing_amount(params)
@@ -175,7 +175,7 @@ module WechatPay
175
175
  # Example:
176
176
  #
177
177
  # ``` ruby
178
- # WechatPay::Ecommerce.add_profitsharing_receivers(type: 'PERSONAL_OPENID', account: 'oly6s5cLmmVzzr8iPyI6mJj7qG2s', name: 'Lan', relation_type: 'DISTRIBUTOR').body
178
+ # WechatIpay::Ecommerce.add_profitsharing_receivers(type: 'PERSONAL_OPENID', account: 'oly6s5cLmmVzzr8iPyI6mJj7qG2s', name: 'Lan', relation_type: 'DISTRIBUTOR').body
179
179
  # ```
180
180
  #
181
181
  def add_profitsharing_receivers(params)
@@ -183,7 +183,7 @@ module WechatPay
183
183
  method = 'POST'
184
184
 
185
185
  params = {
186
- appid: WechatPay.app_id
186
+ appid: WechatIpay.app_id
187
187
  }.merge(params)
188
188
 
189
189
  payload_json = params.to_json
@@ -205,7 +205,7 @@ module WechatPay
205
205
  # Example:
206
206
  #
207
207
  # ``` ruby
208
- # WechatPay::Ecommerce.remove_profitsharing_receivers(type: 'PERSONAL_OPENID', account: 'oly6s5cLmmVzzr8iPyI6mJj7qG2s', name: 'Lan', relation_type: 'DISTRIBUTOR').body
208
+ # WechatIpay::Ecommerce.remove_profitsharing_receivers(type: 'PERSONAL_OPENID', account: 'oly6s5cLmmVzzr8iPyI6mJj7qG2s', name: 'Lan', relation_type: 'DISTRIBUTOR').body
209
209
  # ```
210
210
  #
211
211
  def delete_profitsharing_receivers(params)
@@ -213,7 +213,7 @@ module WechatPay
213
213
  method = 'POST'
214
214
 
215
215
  params = {
216
- appid: WechatPay.app_id
216
+ appid: WechatIpay.app_id
217
217
  }.merge(params)
218
218
 
219
219
  payload_json = params.to_json
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module WechatPay
3
+ module WechatIpay
4
4
  # 退款相关
5
5
  module Ecommerce
6
6
  INVOKE_REFUND_FIELDS = %i[sub_mchid out_trade_no total refund out_refund_no].freeze # :nodoc:
@@ -12,8 +12,8 @@ module WechatPay
12
12
  # Example:
13
13
  #
14
14
  # ``` ruby
15
- # WechatPay::Ecommerce.invoke_refund(sub_mchid: '1600000', transaction_id: '4323400972202104305131070170', total: 1, refund: 1, description: '退款', out_refund_no: 'R10000') # by transaction_id
16
- # WechatPay::Ecommerce.invoke_refund(sub_mchid: '1608977559', total: 1, refund: 1, description: '退款', out_trade_no: 'N202104302474', out_refund_no: 'R10000') # by out_trade_no
15
+ # WechatIpay::Ecommerce.invoke_refund(sub_mchid: '1600000', transaction_id: '4323400972202104305131070170', total: 1, refund: 1, description: '退款', out_refund_no: 'R10000') # by transaction_id
16
+ # WechatIpay::Ecommerce.invoke_refund(sub_mchid: '1608977559', total: 1, refund: 1, description: '退款', out_trade_no: 'N202104302474', out_refund_no: 'R10000') # by out_trade_no
17
17
  # ```
18
18
  def self.invoke_refund(params)
19
19
  url = '/v3/ecommerce/refunds/apply'
@@ -26,7 +26,7 @@ module WechatPay
26
26
 
27
27
  params = {
28
28
  amount: amount,
29
- sp_appid: WechatPay.app_id
29
+ sp_appid: WechatIpay.app_id
30
30
  }.merge(params)
31
31
 
32
32
  make_request(
@@ -46,8 +46,8 @@ module WechatPay
46
46
  # Example:
47
47
  #
48
48
  # ``` ruby
49
- # WechatPay::Ecommerce.query_refund(sub_mchid: '16000000', out_refund_no: 'AFS202104302474')
50
- # WechatPay::Ecommerce.query_refund(sub_mchid: '16000000', refund_id: '50000000382019052709732678859')
49
+ # WechatIpay::Ecommerce.query_refund(sub_mchid: '16000000', out_refund_no: 'AFS202104302474')
50
+ # WechatIpay::Ecommerce.query_refund(sub_mchid: '16000000', refund_id: '50000000382019052709732678859')
51
51
  # ```
52
52
  #
53
53
  def self.query_refund(params)
@@ -62,7 +62,7 @@ module WechatPay
62
62
  end
63
63
 
64
64
  params = params.merge({
65
- sp_mchid: WechatPay.mch_id
65
+ sp_mchid: WechatIpay.mch_id
66
66
  })
67
67
 
68
68
  method = 'GET'
@@ -87,7 +87,7 @@ module WechatPay
87
87
  # Example:
88
88
  #
89
89
  # ``` ruby
90
- # WechatPay::Ecommerce.return_advance_refund(refund_id: '50300908092021043008398036516', sub_mchid: '160000')
90
+ # WechatIpay::Ecommerce.return_advance_refund(refund_id: '50300908092021043008398036516', sub_mchid: '160000')
91
91
  # ```
92
92
  #
93
93
  def self.return_advance_refund(params)
@@ -112,8 +112,8 @@ module WechatPay
112
112
  # Example:
113
113
  #
114
114
  # ``` ruby
115
- # WechatPay::Ecommerce.query_refund(sub_mchid: '16000000', out_refund_no: 'AFS202104302474')
116
- # WechatPay::Ecommerce.query_refund(sub_mchid: '16000000', refund_id: '50000000382019052709732678859')
115
+ # WechatIpay::Ecommerce.query_refund(sub_mchid: '16000000', out_refund_no: 'AFS202104302474')
116
+ # WechatIpay::Ecommerce.query_refund(sub_mchid: '16000000', refund_id: '50000000382019052709732678859')
117
117
  # ```
118
118
  #
119
119
  def self.query_return_advance_refund(params)
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module WechatPay
3
+ module WechatIpay
4
4
  # 补差相关
5
5
  module Ecommerce
6
6
  REQUEST_SUBSIDIES_FIELDS = %i[sub_mchid transaction_id amount description].freeze # :nodoc:
@@ -12,7 +12,7 @@ module WechatPay
12
12
  # Example:
13
13
  #
14
14
  # ``` ruby
15
- # WechatPay::Ecommerce.request_subsidies(sub_mchid: '16000000', transaction_id: '4323400972202104305131070170', amount: 1, description: '订单补差')
15
+ # WechatIpay::Ecommerce.request_subsidies(sub_mchid: '16000000', transaction_id: '4323400972202104305131070170', amount: 1, description: '订单补差')
16
16
  # ```
17
17
  #
18
18
  def self.request_subsidies(params)
@@ -38,7 +38,7 @@ module WechatPay
38
38
  # Example:
39
39
  #
40
40
  # ``` ruby
41
- # WechatPay::Ecommerce.return_subsidies(sub_mchid: '16000000', transaction_id: '4323400972202104305131070170', amount: 1, description: '订单补差', out_order_no: 'P103333')
41
+ # WechatIpay::Ecommerce.return_subsidies(sub_mchid: '16000000', transaction_id: '4323400972202104305131070170', amount: 1, description: '订单补差', out_order_no: 'P103333')
42
42
  # ```
43
43
 
44
44
  def self.return_subsidies(params)
@@ -64,7 +64,7 @@ module WechatPay
64
64
  # Example:
65
65
  #
66
66
  # ``` ruby
67
- # WechatPay::Ecommerce.return_subsidies(sub_mchid: '1600000', transaction_id: '4323400972202104305131070170', amount: 1, description: '订单补差', out_order_no: 'P103333')
67
+ # WechatIpay::Ecommerce.return_subsidies(sub_mchid: '1600000', transaction_id: '4323400972202104305131070170', amount: 1, description: '订单补差', out_order_no: 'P103333')
68
68
  # ```
69
69
  #
70
70
  def self.cancel_subsidies(params)
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module WechatPay
3
+ module WechatIpay
4
4
  # 提现相关
5
5
  module Ecommerce
6
6
  WITHDRAW_FIELDS = %i[sub_mchid out_request_no amount].freeze # :nodoc:
@@ -12,7 +12,7 @@ module WechatPay
12
12
  # Example:
13
13
  #
14
14
  # ``` ruby
15
- # WechatPay::Ecommerce.withdraw(sub_mchid: '160000', out_request_no: 'P10000', amount: 1)
15
+ # WechatIpay::Ecommerce.withdraw(sub_mchid: '160000', out_request_no: 'P10000', amount: 1)
16
16
  # ```
17
17
  #
18
18
  def self.withdraw(params)
@@ -36,8 +36,8 @@ module WechatPay
36
36
  # Example:
37
37
  #
38
38
  # ``` ruby
39
- # WechatPay::Ecommerce.query_withdraw(withdraw_id: '335556', sub_mchid: '160000')
40
- # WechatPay::Ecommerce.query_withdraw(out_request_no: 'P1000', sub_mchid: '160000')
39
+ # WechatIpay::Ecommerce.query_withdraw(withdraw_id: '335556', sub_mchid: '160000')
40
+ # WechatIpay::Ecommerce.query_withdraw(out_request_no: 'P1000', sub_mchid: '160000')
41
41
  # ```
42
42
  #
43
43
  def self.query_withdraw(params)
@@ -73,8 +73,8 @@ module WechatPay
73
73
  # Example:
74
74
  #
75
75
  # ``` ruby
76
- # WechatPay::Ecommerce.platform_withdraw(out_request_no: 'P10000', amount: 1, account_type: 'BASIC')
77
- # WechatPay::Ecommerce.platform_withdraw(out_request_no: 'P10000', amount: 1, account_type: 'FEES')
76
+ # WechatIpay::Ecommerce.platform_withdraw(out_request_no: 'P10000', amount: 1, account_type: 'BASIC')
77
+ # WechatIpay::Ecommerce.platform_withdraw(out_request_no: 'P10000', amount: 1, account_type: 'FEES')
78
78
  # ```
79
79
  #
80
80
  def self.platform_withdraw(params)
@@ -98,8 +98,8 @@ module WechatPay
98
98
  # Example:
99
99
  #
100
100
  # ``` ruby
101
- # WechatPay::Ecommerce.query_platform_withdraw(out_request_no: 'P1000')
102
- # WechatPay::Ecommerce.query_platform_withdraw(withdraw_id: '12313153')
101
+ # WechatIpay::Ecommerce.query_platform_withdraw(out_request_no: 'P1000')
102
+ # WechatIpay::Ecommerce.query_platform_withdraw(withdraw_id: '12313153')
103
103
  # ```
104
104
  #
105
105
  def self.query_platform_withdraw(params)
@@ -131,7 +131,7 @@ module WechatPay
131
131
  # Document: https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter7_8_4.shtml
132
132
  #
133
133
  # ``` ruby
134
- # WechatPay::Ecommerce.download_exception_withdraw_file(bill_type: 'NO_SUCC', bill_date: '2021-05-10')
134
+ # WechatIpay::Ecommerce.download_exception_withdraw_file(bill_type: 'NO_SUCC', bill_date: '2021-05-10')
135
135
  # ```
136
136
  def self.download_exception_withdraw_file(params)
137
137
  bill_type = params.delete(:bill_type)
@@ -1,25 +1,25 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'json'
4
- require 'wechat-pay/helper'
5
- require 'wechat-pay/ecommerce/withdraw'
6
- require 'wechat-pay/ecommerce/balance'
7
- require 'wechat-pay/ecommerce/applyment'
8
- require 'wechat-pay/ecommerce/order'
9
- require 'wechat-pay/ecommerce/combine_order'
10
- require 'wechat-pay/ecommerce/profitsharing'
11
- require 'wechat-pay/ecommerce/subsidies'
12
- require 'wechat-pay/ecommerce/refund'
13
- require 'wechat-pay/ecommerce/bill'
4
+ require 'wechat-ipay/helper'
5
+ require 'wechat-ipay/ecommerce/withdraw'
6
+ require 'wechat-ipay/ecommerce/balance'
7
+ require 'wechat-ipay/ecommerce/applyment'
8
+ require 'wechat-ipay/ecommerce/order'
9
+ require 'wechat-ipay/ecommerce/combine_order'
10
+ require 'wechat-ipay/ecommerce/profitsharing'
11
+ require 'wechat-ipay/ecommerce/subsidies'
12
+ require 'wechat-ipay/ecommerce/refund'
13
+ require 'wechat-ipay/ecommerce/bill'
14
14
 
15
- module WechatPay
15
+ module WechatIpay
16
16
  # # 服务商相关接口封装(电商平台,服务商有许多接口共用)
17
17
  # 文档: https://pay.weixin.qq.com/wiki/doc/apiv3_partner/open/pay/chapter3_3_3.shtml
18
18
  #
19
19
  # PS: 电商收付通的所有接口已经封装完毕,有需要再补充。
20
20
  #
21
21
  module Ecommerce
22
- include WechatPayHelper
22
+ include WechatIpayHelper
23
23
 
24
24
  # 视频上传
25
25
  #
@@ -28,7 +28,7 @@ module WechatPay
28
28
  # Example:
29
29
  #
30
30
  # ``` ruby
31
- # WechatPay::Ecommerce.media_video_upload(File.open('Your Video'))
31
+ # WechatIpay::Ecommerce.media_video_upload(File.open('Your Video'))
32
32
  # ```
33
33
  #
34
34
  def self.media_video_upload(video)
@@ -63,7 +63,7 @@ module WechatPay
63
63
  # Example:
64
64
  #
65
65
  # ``` ruby
66
- # WechatPay::Ecommerce.media_upload(File.open('Your Image'))
66
+ # WechatIpay::Ecommerce.media_upload(File.open('Your Image'))
67
67
  # ```
68
68
  def self.media_upload(image)
69
69
  url = '/v3/merchant/media/upload'
@@ -2,7 +2,7 @@
2
2
 
3
3
  require 'active_support/concern'
4
4
 
5
- module WechatPayHelper # :nodoc:
5
+ module WechatIpayHelper # :nodoc:
6
6
  GATEWAY_URL = 'https://api.mch.weixin.qq.com'
7
7
 
8
8
  extend ActiveSupport::Concern
@@ -13,7 +13,7 @@ module WechatPayHelper # :nodoc:
13
13
  end
14
14
 
15
15
  def make_request(method:, path:, for_sign: '', payload: {}, extra_headers: {})
16
- authorization = WechatPay::Sign.build_authorization_header(method, path, for_sign)
16
+ authorization = WechatIpay::Sign.build_authorization_header(method, path, for_sign)
17
17
  headers = {
18
18
  'Authorization' => authorization,
19
19
  'Content-Type' => 'application/json',
@@ -5,7 +5,7 @@ require 'base64'
5
5
  require 'securerandom'
6
6
  require 'active_support/core_ext/hash'
7
7
 
8
- module WechatPay
8
+ module WechatIpay
9
9
  # # 微信签名相关的封装
10
10
  # 文档: https://pay.weixin.qq.com/wiki/doc/apiv3/wechatpay/wechatpay4_0.shtml
11
11
  #
@@ -33,10 +33,10 @@ module WechatPay
33
33
  # sub_mchid: 'Your sub mchid',
34
34
  # notify_url: 'the url'
35
35
  # }
36
- # result = WechatPay::Ecommerce.invoke_transactions_in_app(params).body
36
+ # result = WechatIpay::Ecommerce.invoke_transactions_in_app(params).body
37
37
  # # => { prepay_id => 'wx201410272009395522657a690389285100' }
38
38
  # prepay_id = result['prepay_id']
39
- # WechatPay::Sign.generate_app_payment_params_from_prepay_id_and_appid(appid, prepay_id)
39
+ # WechatIpay::Sign.generate_app_payment_params_from_prepay_id_and_appid(appid, prepay_id)
40
40
  # # => params for invoking the wechat pay in app
41
41
  # ```
42
42
 
@@ -47,7 +47,7 @@ module WechatPay
47
47
 
48
48
  {
49
49
  appId: appid,
50
- partnerId: WechatPay.mch_id,
50
+ partnerId: WechatIpay.mch_id,
51
51
  timeStamp: timestamp,
52
52
  nonceStr: noncestr,
53
53
  prepayId: prepay_id,
@@ -82,10 +82,10 @@ module WechatPay
82
82
  # sub_mchid: 'Your sub mchid',
83
83
  # notify_url: 'the url'
84
84
  # }
85
- # result = WechatPay::Ecommerce.invoke_transactions_in_miniprogram(params).body
85
+ # result = WechatIpay::Ecommerce.invoke_transactions_in_miniprogram(params).body
86
86
  # # => { prepay_id => 'wx201410272009395522657a690389285100' }
87
87
  # prepay_id = result['prepay_id']
88
- # WechatPay::Sign.generate_payment_params_from_prepay_id_and_appid(appid, prepay_id)
88
+ # WechatIpay::Sign.generate_payment_params_from_prepay_id_and_appid(appid, prepay_id)
89
89
  # # => params for invoking the wechat pay in miniprogram
90
90
  # ```
91
91
  def generate_payment_params_from_prepay_id_and_appid(appid, prepay_id)
@@ -123,7 +123,7 @@ module WechatPay
123
123
  def notification_from_wechat?(timestamp, noncestr, json_body, signature)
124
124
  string = build_callback_string(timestamp, noncestr, json_body)
125
125
  decoded_signature = Base64.strict_decode64(signature)
126
- WechatPay.platform_cert.public_key.verify('SHA256', decoded_signature, string)
126
+ WechatIpay.platform_cert.public_key.verify('SHA256', decoded_signature, string)
127
127
  end
128
128
 
129
129
  # For signing the sensitive information
@@ -134,7 +134,7 @@ module WechatPay
134
134
  #
135
135
  # ``` ruby
136
136
  # string = 'Ruby'
137
- # WechatPay::Sign.sign_important_info(string)
137
+ # WechatIpay::Sign.sign_important_info(string)
138
138
  # ```
139
139
  #
140
140
  # ``` ruby
@@ -142,7 +142,7 @@ module WechatPay
142
142
  # "K0MK7g3laREAQ4HIlpIndVmFdz4IyxxiVp42hXFx2CzWRB1fn85ANBxnQXESq91vJ1P9mCt94cHZDoshlEOJRkE1KvcxpBCnG3ghIqiSsLKdLZ3ytO94GBDzCt8nsq+vJKXJbK2XuL9p5h0KYGKZyjt2ydU9Ig6daWTpZH8lAKIsLzPTsaUtScuw/v3M/7t8/4py8N0MOLKbDBDnR5Q+MRHbEWI9nCA3HTAWsSerIIgE7igWnzybxsUzhkV8m49P/Shr2zh6yJAlEnyPLFmQG7GuUaYwDTSLKOWzzPYwxMcucWQha2krC9OlwnZJe6ZWUAI3s4ej4kFRfheOYywRoQ=="
143
143
  # ```
144
144
  def sign_important_info(string)
145
- platform_public_key = WechatPay.platform_cert.public_key
145
+ platform_public_key = WechatIpay.platform_cert.public_key
146
146
  Base64.strict_encode64(platform_public_key.public_encrypt(string, OpenSSL::PKey::RSA::PKCS1_OAEP_PADDING))
147
147
  end
148
148
 
@@ -158,7 +158,7 @@ module WechatPay
158
158
  # associated_data = body['resource']['associated_data']
159
159
  # nonce = body['resource']['nonce']
160
160
  # ciphertext = body['resource']['ciphertext']
161
- # res = WechatPay::Sign.decrypt_the_encrypt_params(
161
+ # res = WechatIpay::Sign.decrypt_the_encrypt_params(
162
162
  # associated_data: associated_data,
163
163
  # nonce: nonce,
164
164
  # ciphertext: ciphertext
@@ -171,7 +171,7 @@ module WechatPay
171
171
  # https://contest-server.cs.uchicago.edu/ref/ruby_2_3_1_stdlib/libdoc/openssl/rdoc/OpenSSL/Cipher.html
172
172
  tag_length = 16
173
173
  decipher = OpenSSL::Cipher.new('aes-256-gcm').decrypt
174
- decipher.key = WechatPay.mch_key
174
+ decipher.key = WechatIpay.mch_key
175
175
  decipher.iv = nonce
176
176
  signature = Base64.strict_decode64(ciphertext)
177
177
  length = signature.length
@@ -192,7 +192,7 @@ module WechatPay
192
192
  # method = 'GET'
193
193
  # url = '/v3/certificates'
194
194
  # json_body = ''
195
- # WechatPay::sign.build_authorization_header(method, url, json_body)
195
+ # WechatIpay::sign.build_authorization_header(method, url, json_body)
196
196
  # ```
197
197
  #
198
198
  # ``` ruby
@@ -206,9 +206,9 @@ module WechatPay
206
206
  signature = sign_string(string)
207
207
 
208
208
  params = {
209
- mchid: WechatPay.mch_id,
209
+ mchid: WechatIpay.mch_id,
210
210
  nonce_str: nonce_str,
211
- serial_no: WechatPay.apiclient_serial_no,
211
+ serial_no: WechatIpay.apiclient_serial_no,
212
212
  signature: signature,
213
213
  timestamp: timestamp
214
214
  }
@@ -219,7 +219,7 @@ module WechatPay
219
219
  end
220
220
 
221
221
  def sign_string(string)
222
- result = WechatPay.apiclient_key.sign('SHA256', string) # 商户私钥的SHA256-RSA2048签名
222
+ result = WechatIpay.apiclient_key.sign('SHA256', string) # 商户私钥的SHA256-RSA2048签名
223
223
  Base64.strict_encode64(result) # Base64处理
224
224
  end
225
225
 
@@ -0,0 +1,5 @@
1
+ # frozen_string_literal: true
2
+
3
+ module WechatIpay
4
+ VERSION = '2.1.0'
5
+ end
@@ -3,14 +3,14 @@
3
3
  # frozen_string_literal: true
4
4
 
5
5
  require 'restclient'
6
- require 'wechat-pay/sign'
7
- require 'wechat-pay/direct' # 直连模式
8
- require 'wechat-pay/ecommerce' # 电商平台
6
+ require 'wechat-ipay/sign'
7
+ require 'wechat-ipay/direct' # 直连模式
8
+ require 'wechat-ipay/ecommerce' # 电商平台
9
9
 
10
10
  # # 微信支付
11
11
  #
12
12
  # 设置关键信息
13
- module WechatPay
13
+ module WechatIpay
14
14
  class << self
15
15
  attr_accessor :app_id, :mch_id, :mch_key
16
16
  attr_reader :apiclient_key, :apiclient_cert, :platform_cert
@@ -20,7 +20,7 @@ module WechatPay
20
20
  @apiclient_key = OpenSSL::PKey::RSA.new(key)
21
21
  end
22
22
 
23
- # 设置平台证书,通过接口获取 https://github.com/lanzhiheng/wechat-pay/blob/master/lib/wechat-pay/ecommerce/applyment.rb#L116
23
+ # 设置平台证书,通过接口获取 https://github.com/lanzhiheng/wechat-ipay/blob/master/lib/wechat-ipay/ecommerce/applyment.rb#L116
24
24
  def platform_cert=(cert)
25
25
  @platform_cert = OpenSSL::X509::Certificate.new(cert)
26
26
  end
data/wechat-ipay.gemspec CHANGED
@@ -2,11 +2,11 @@
2
2
 
3
3
  $LOAD_PATH.push File.expand_path('lib', __dir__)
4
4
 
5
- require 'wechat-pay/version'
5
+ require 'wechat-ipay/version'
6
6
 
7
7
  Gem::Specification.new do |s|
8
8
  s.name = 'wechat-ipay'
9
- s.version = WechatPay::VERSION
9
+ s.version = WechatIpay::VERSION
10
10
  s.summary = 'Wechat Pay in api V3'
11
11
  s.description = 'A simple Wechat pay ruby gem in api V3.'
12
12
  s.authors = ['tianlu1677']
@@ -17,7 +17,7 @@ Gem::Specification.new do |s|
17
17
 
18
18
  s.required_ruby_version = '>= 2.6'
19
19
  s.require_paths = ['lib']
20
- s.homepage = 'https://github.com/tianlu1677/wechat-pay/'
20
+ s.homepage = 'https://github.com/tianlu1677/wechat-ipay/'
21
21
  s.license = 'MIT'
22
22
 
23
23
  s.add_runtime_dependency 'rest-client', '~> 2.0', '>= 2.0.0'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wechat-ipay
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0
4
+ version: 2.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - tianlu1677
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-11-29 00:00:00.000000000 Z
11
+ date: 2024-12-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client
@@ -93,23 +93,23 @@ files:
93
93
  - Gemfile
94
94
  - README.md
95
95
  - Rakefile
96
- - lib/wechat-pay.rb
97
- - lib/wechat-pay/direct.rb
98
- - lib/wechat-pay/ecommerce.rb
99
- - lib/wechat-pay/ecommerce/applyment.rb
100
- - lib/wechat-pay/ecommerce/balance.rb
101
- - lib/wechat-pay/ecommerce/bill.rb
102
- - lib/wechat-pay/ecommerce/combine_order.rb
103
- - lib/wechat-pay/ecommerce/order.rb
104
- - lib/wechat-pay/ecommerce/profitsharing.rb
105
- - lib/wechat-pay/ecommerce/refund.rb
106
- - lib/wechat-pay/ecommerce/subsidies.rb
107
- - lib/wechat-pay/ecommerce/withdraw.rb
108
- - lib/wechat-pay/helper.rb
109
- - lib/wechat-pay/sign.rb
110
- - lib/wechat-pay/version.rb
96
+ - lib/wechat-ipay.rb
97
+ - lib/wechat-ipay/direct.rb
98
+ - lib/wechat-ipay/ecommerce.rb
99
+ - lib/wechat-ipay/ecommerce/applyment.rb
100
+ - lib/wechat-ipay/ecommerce/balance.rb
101
+ - lib/wechat-ipay/ecommerce/bill.rb
102
+ - lib/wechat-ipay/ecommerce/combine_order.rb
103
+ - lib/wechat-ipay/ecommerce/order.rb
104
+ - lib/wechat-ipay/ecommerce/profitsharing.rb
105
+ - lib/wechat-ipay/ecommerce/refund.rb
106
+ - lib/wechat-ipay/ecommerce/subsidies.rb
107
+ - lib/wechat-ipay/ecommerce/withdraw.rb
108
+ - lib/wechat-ipay/helper.rb
109
+ - lib/wechat-ipay/sign.rb
110
+ - lib/wechat-ipay/version.rb
111
111
  - wechat-ipay.gemspec
112
- homepage: https://github.com/tianlu1677/wechat-pay/
112
+ homepage: https://github.com/tianlu1677/wechat-ipay/
113
113
  licenses:
114
114
  - MIT
115
115
  metadata: {}
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module WechatPay
4
- VERSION = '2.0.0'
5
- end