bloom_remit_client 0.11.0 → 0.12.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
  SHA1:
3
- metadata.gz: cbac33b6e51679d2130cf9bd4a143066aedb8f1f
4
- data.tar.gz: 6085bfee06b7b23548d7fe6cc60a74a8fbe7dafb
3
+ metadata.gz: cdba69cae9f6859697db89f1db640dab97be5e26
4
+ data.tar.gz: 6cb6990e89202acdec82e8cceea2f33fa578cbdf
5
5
  SHA512:
6
- metadata.gz: 8244f31df11ab1a07224f14f1c5f82ac71213e7f40a9c92a65669aa167c13f6152a477c30bbfa851ef42912ab7823c61c244560711ed670602ee0334beee0880
7
- data.tar.gz: cfdbc9f841671769de0f2fbefc05461d684eb8dd51c1d2a8de85ccb773477a0fe8a7d643fa0144b2d37785941e7d69d95b01e0c4c29143ec5648bc188126be8e
6
+ metadata.gz: 7c41ee07a343defcab42bc347b6e9db8fef3dcd98726e0f9eb1f5c107904637e6fa72e1fb3b8fa7ae821cc562836f62977c7b7362a5847bcbcdee4646b8106be
7
+ data.tar.gz: 7f63e7f357eaa84f5314adac1b62ba315949515604ba4cf3cf15d7b89838fd084358d36f98f29c88a40c7eb1bcf558f1c9e11172fe992b7dda171311336019e1
@@ -2,6 +2,13 @@
2
2
  All notable changes to this project will be documented in this file.
3
3
  This project adheres to [Semantic Versioning](http://semver.org/).
4
4
 
5
+ ## [0.12.0] - 2016-10-04
6
+ ### Added
7
+ - Add `#create_txn` that uses a single endpoint to create remittances and payments
8
+
9
+ ### Fixed
10
+ - Sender `agent_id` when creating a sender
11
+
5
12
  ## [0.11.0] - 2016-09-30
6
13
  ### Added
7
14
  - Expose `DepositStrategy#country`
@@ -30,6 +30,7 @@ require "bloom_remit_client/requests/payments/create"
30
30
  require "bloom_remit_client/requests/remittances/create"
31
31
  require "bloom_remit_client/requests/recipients/create"
32
32
  require "bloom_remit_client/requests/remittances/calculate"
33
+ require "bloom_remit_client/requests/txns/create"
33
34
  require "bloom_remit_client/responses/base"
34
35
  require "bloom_remit_client/responses/billers/list"
35
36
  require "bloom_remit_client/responses/deposit_strategies/list"
@@ -38,6 +39,7 @@ require "bloom_remit_client/responses/payments/create"
38
39
  require "bloom_remit_client/responses/remittances/create"
39
40
  require "bloom_remit_client/responses/recipients/create"
40
41
  require "bloom_remit_client/responses/remittances/calculate"
42
+ require "bloom_remit_client/responses/txns/create"
41
43
 
42
44
  module BloomRemitClient
43
45
  PRODUCTION = 'api.bloom.solutions'
@@ -107,6 +107,17 @@ module BloomRemitClient
107
107
  Responses::DepositStrategies::List.new(raw_response: raw_response)
108
108
  end
109
109
 
110
+ def create_txn(txn_params={})
111
+ params = {txn: txn_params}.merge(
112
+ sender_id: txn_params[:sender_id],
113
+ recipient_id: txn_params[:recipient_id],
114
+ )
115
+ request_params = params.merge(default_params).merge(access_params)
116
+ request = Requests::Txns::Create.new(request_params)
117
+ raw_response = request.call!
118
+ Responses::Txns::Create.new(raw_response: raw_response)
119
+ end
120
+
110
121
  private
111
122
 
112
123
  # Should overwrite any other `:api_token`, `:api_secret`
@@ -8,6 +8,7 @@ module BloomRemitClient
8
8
  PATH = "/api/v1/partners/:token/senders.json"
9
9
 
10
10
  attribute :sender, Hash
11
+ attribute :agent_id, String
11
12
 
12
13
  private
13
14
 
@@ -20,7 +21,7 @@ module BloomRemitClient
20
21
  end
21
22
 
22
23
  def body_params
23
- { sender: sender }
24
+ attributes.slice(:agent_id, :sender)
24
25
  end
25
26
 
26
27
  end
@@ -0,0 +1,30 @@
1
+ # frozen_string_literal: true
2
+ module BloomRemitClient
3
+ module Requests
4
+ module Txns
5
+ class Create < Base
6
+ include Concerns::HasBaseAuthentification
7
+ PATH = "/api/v3/txns"
8
+
9
+ attribute :txn, Hash
10
+ attribute :sender_id, String
11
+ attribute :recipient_id, String
12
+ attribute :agent_id, String
13
+
14
+ private
15
+
16
+ def path
17
+ Requests.normalize_path(PATH, attributes.slice(:api_token, :sender_id))
18
+ end
19
+
20
+ def type
21
+ POST
22
+ end
23
+
24
+ def body_params
25
+ attributes.slice(*%i[api_token agent_id recipient_id sender_id txn])
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,20 @@
1
+ module BloomRemitClient
2
+ module Responses
3
+ module Txns
4
+ class Create < Base
5
+
6
+ attribute(:txn, Object, {
7
+ lazy: true,
8
+ default: :default_txn,
9
+ })
10
+
11
+ private
12
+
13
+ def default_txn
14
+ Remittance.new(body[:txn])
15
+ end
16
+
17
+ end
18
+ end
19
+ end
20
+ end
@@ -1,3 +1,3 @@
1
1
  module BloomRemitClient
2
- VERSION = "0.11.0"
2
+ VERSION = "0.12.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bloom_remit_client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.0
4
+ version: 0.12.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ramon Tayag
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-09-30 00:00:00.000000000 Z
11
+ date: 2016-10-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activemodel
@@ -226,6 +226,7 @@ files:
226
226
  - lib/bloom_remit_client/requests/remittances/create.rb
227
227
  - lib/bloom_remit_client/requests/requests_sender.rb
228
228
  - lib/bloom_remit_client/requests/senders/create.rb
229
+ - lib/bloom_remit_client/requests/txns/create.rb
229
230
  - lib/bloom_remit_client/requests/url_builder.rb
230
231
  - lib/bloom_remit_client/responses/base.rb
231
232
  - lib/bloom_remit_client/responses/billers/list.rb
@@ -235,6 +236,7 @@ files:
235
236
  - lib/bloom_remit_client/responses/remittances/calculate.rb
236
237
  - lib/bloom_remit_client/responses/remittances/create.rb
237
238
  - lib/bloom_remit_client/responses/senders/create.rb
239
+ - lib/bloom_remit_client/responses/txns/create.rb
238
240
  - lib/bloom_remit_client/version.rb
239
241
  homepage: https://github.com/imacchiato/bloom_remit_client-ruby
240
242
  licenses: