asaas-ruby 0.2.12 → 0.2.17
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.
- checksums.yaml +4 -4
- data/.byebug_history +20 -0
- data/.gitignore +2 -1
- data/.ruby-version +1 -1
- data/Gemfile +1 -1
- data/README.md +55 -0
- data/asaas-ruby.gemspec +3 -1
- data/lib/asaas-ruby.rb +1 -0
- data/lib/asaas/api.rb +1 -0
- data/lib/asaas/api/base.rb +10 -3
- data/lib/asaas/api/transfer.rb +11 -0
- data/lib/asaas/client.rb +4 -0
- data/lib/asaas/models/account.rb +2 -1
- data/lib/asaas/models/payment.rb +2 -3
- data/lib/asaas/models/transfer.rb +22 -0
- data/lib/asaas/types.rb +1 -1
- data/lib/asaas/version.rb +1 -1
- metadata +28 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 94a8d6b0afba265529e845becfadc043fdc70b3c3346726c34b97188b0365885
|
4
|
+
data.tar.gz: 1f8b083270382ab6fc2f7ac07273f69287a58400cf0d3b857353e279ed8b5a47
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a0a15a87bada9387a1d0a43a418e3f8a33f8e3d34d472f244424114f9045063550c3e75d9d8f7edaf2a89969e25073bcd6f7d8f87772e8d39133dad867bf5112
|
7
|
+
data.tar.gz: f778d7b10e0d7b4571f04c943ceb58cee7e31537c49495a5bcc7e308a2cfc974176d7b1b34ea833ebf569b056361de02cb993ead2be7c1492ac16ea016f8ed11
|
data/.byebug_history
ADDED
data/.gitignore
CHANGED
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.3.
|
1
|
+
2.3.3
|
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -0,0 +1,55 @@
|
|
1
|
+
# Asaas Ruby
|
2
|
+
|
3
|
+
[](https://travis-ci.org/thiagodiniz/asaas-ruby)
|
4
|
+
|
5
|
+
A biblioteca Asaas Ruby tem provê um acesso a API Rest do asaas.com.br
|
6
|
+
|
7
|
+
## Installation
|
8
|
+
|
9
|
+
You don't need this source code unless you want to modify the gem. If you just
|
10
|
+
want to use the package, just run:
|
11
|
+
|
12
|
+
```sh
|
13
|
+
gem install asaas-ruby
|
14
|
+
```
|
15
|
+
|
16
|
+
Para fazer o build da gem
|
17
|
+
|
18
|
+
```sh
|
19
|
+
gem build asaas-ruby.gemspec
|
20
|
+
```
|
21
|
+
|
22
|
+
### Changelog
|
23
|
+
|
24
|
+
- 0.2.16 - Wallet account tranfers
|
25
|
+
- 0.2.15 - Bank account tranfers
|
26
|
+
|
27
|
+
### Requirements
|
28
|
+
|
29
|
+
- Ruby 2.3+.
|
30
|
+
|
31
|
+
## Usage
|
32
|
+
|
33
|
+
```ruby
|
34
|
+
require 'asaas-ruby'
|
35
|
+
|
36
|
+
Asaas.setup do |config|
|
37
|
+
config.token = 'token'
|
38
|
+
end
|
39
|
+
|
40
|
+
asaas_client = Asaas::Client.new()
|
41
|
+
|
42
|
+
customer = Asaas::Customer.new({name: 'Thiago Diniz', cpfCnpj: '05201932419', email: 'email@example.org'})
|
43
|
+
asaas_client.customers.create(customer)
|
44
|
+
|
45
|
+
charge = Asaas::Payment.new({
|
46
|
+
customer: customer.id,
|
47
|
+
dueDate: '2019-10-10',
|
48
|
+
billingType: 'BOLETO',
|
49
|
+
description: "Teste de boleto",
|
50
|
+
value: BigDecimal("103.54").to_f,
|
51
|
+
postalService: false
|
52
|
+
})
|
53
|
+
|
54
|
+
asaas_client.payments.create(charge)
|
55
|
+
```
|
data/asaas-ruby.gemspec
CHANGED
@@ -21,8 +21,10 @@ Gem::Specification.new do |spec|
|
|
21
21
|
spec.add_development_dependency "bundler", "~> 1.12"
|
22
22
|
spec.add_development_dependency "rake", "~> 10.0"
|
23
23
|
spec.add_development_dependency "rspec", "~> 3.2"
|
24
|
+
spec.add_development_dependency "webmock", "~> 3.7.2"
|
25
|
+
|
24
26
|
|
25
|
-
spec.add_dependency "activesupport",
|
27
|
+
spec.add_dependency "activesupport", '>= 4.2', "< 6"
|
26
28
|
spec.add_dependency "virtus", '~> 1.0', "~> 1.0.5"
|
27
29
|
spec.add_dependency "dry-types", '0.15.0'
|
28
30
|
spec.add_dependency "dry-struct", '0.7.0'
|
data/lib/asaas-ruby.rb
CHANGED
data/lib/asaas/api.rb
CHANGED
data/lib/asaas/api/base.rb
CHANGED
@@ -86,19 +86,26 @@ module Asaas
|
|
86
86
|
end
|
87
87
|
|
88
88
|
def request(method, params = {}, body = nil)
|
89
|
-
body = body
|
89
|
+
body = body.to_h
|
90
|
+
body = body.delete_if { |k, v| v.nil? || v.to_s.empty? }
|
91
|
+
body = body.to_json
|
90
92
|
@response = Typhoeus::Request.new(
|
91
93
|
parse_url(params.fetch(:id, false)),
|
92
94
|
method: method,
|
93
|
-
body: body
|
95
|
+
body: body,
|
94
96
|
params: params,
|
95
|
-
headers: {
|
97
|
+
headers: {
|
98
|
+
'access_token': @token || Asaas::Configuration.token,
|
99
|
+
'Content-Type': 'application/json'
|
100
|
+
},
|
101
|
+
verbose: Asaas::Configuration.debug
|
96
102
|
).run
|
97
103
|
end
|
98
104
|
|
99
105
|
def response_success
|
100
106
|
entity = nil
|
101
107
|
hash = JSON.parse(@response.body)
|
108
|
+
puts hash if Asaas::Configuration.debug
|
102
109
|
if hash.fetch("object", false) === "list"
|
103
110
|
entity = Asaas::Entity::Meta.new(hash)
|
104
111
|
else
|
data/lib/asaas/client.rb
CHANGED
@@ -32,6 +32,10 @@ module Asaas
|
|
32
32
|
@subscriptions ||= Asaas::Api::Subscription.new(@token, @api_version)
|
33
33
|
end
|
34
34
|
|
35
|
+
def transfers
|
36
|
+
@transfers ||= Asaas::Api::Transfer.new(@token, @api_version)
|
37
|
+
end
|
38
|
+
|
35
39
|
def webhooks
|
36
40
|
@webhooks ||= Asaas::Api::Webhook.new(@token, @api_version)
|
37
41
|
end
|
data/lib/asaas/models/account.rb
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
module Asaas
|
2
2
|
class Account < Model
|
3
3
|
attribute :id, Types::Coercible::String.optional.default(nil)
|
4
|
+
attribute :walletId, Types::Coercible::String.optional.default(nil)
|
4
5
|
attribute :name, Types::Coercible::String.optional
|
5
6
|
attribute :email, Types::Coercible::String.optional
|
6
7
|
attribute :cpfCnpj, Types::Coercible::String.optional
|
@@ -11,6 +12,6 @@ module Asaas
|
|
11
12
|
attribute :complement, Types::Coercible::String.optional
|
12
13
|
attribute :province, Types::Coercible::String.optional
|
13
14
|
attribute :postalCode, Types::Coercible::String.optional
|
14
|
-
attribute :apiKey, Types::Coercible::String.optional
|
15
|
+
attribute :apiKey, Types::Coercible::String.optional.default(nil)
|
15
16
|
end
|
16
17
|
end
|
data/lib/asaas/models/payment.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
module Asaas
|
2
2
|
class Payment < Model
|
3
|
-
BillingTypes = Types::Strict::String.enum('BOLETO', 'CREDIT_CARD', 'UNDEFINED', 'TRANSFER')
|
3
|
+
BillingTypes = Types::Strict::String.enum('BOLETO', 'CREDIT_CARD', 'UNDEFINED', 'TRANSFER', 'DEPOSIT')
|
4
4
|
Status = Types::Strict::String.enum('PENDING', 'RECEIVED', 'CONFIRMED', 'OVERDUE', 'REFUNDED', 'RECEIVED_IN_CASH', 'REFUND_REQUESTED', 'CHARGEBACK_DISPUTE', 'AWAITING_CHARGEBACK_REVERSAL')
|
5
5
|
|
6
6
|
attribute :id, Types::Coercible::String.optional.default(nil)
|
@@ -29,6 +29,5 @@ module Asaas
|
|
29
29
|
attribute :bankSlipUrl, Types::Coercible::String.optional.default(nil)
|
30
30
|
attribute :invoiceNumber, Types::Coercible::String.optional.default(nil)
|
31
31
|
attribute :deleted, Types::Coercible::String.optional.default(nil)
|
32
|
-
|
33
32
|
end
|
34
|
-
end
|
33
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
module Asaas
|
2
|
+
class Transfer < Model
|
3
|
+
Status = Types::Strict::String.enum('PENDING', 'BANK_PROCESSING', 'DONE',
|
4
|
+
'CANCELLED', 'FAILED')
|
5
|
+
AccountType = Types::Strict::String.enum('BANK_ACCOUNT','ASAAS_ACCOUNT')
|
6
|
+
|
7
|
+
attribute :id, Types::Coercible::String.optional.default(nil)
|
8
|
+
attribute :dateCreated, Types::Coercible::String.optional.default(nil)
|
9
|
+
attribute :value, Types::Coercible::Decimal.optional.default(nil)
|
10
|
+
attribute :netValue, Types::Coercible::Decimal.optional.default(nil)
|
11
|
+
attribute :transferFee, Types::Coercible::Decimal.optional.default(nil)
|
12
|
+
attribute :status, Status.optional.default(nil)
|
13
|
+
attribute :effectiveDate, Types::Coercible::String.optional.default(nil)
|
14
|
+
attribute :scheduleDate, Types::Coercible::String.optional.default(nil)
|
15
|
+
attribute :authorized, Types::Coercible::String.optional.default(nil)
|
16
|
+
attribute :transactionReceiptUrl, Types::Coercible::String.optional.default(nil)
|
17
|
+
attribute :bankAccount, Types::Coercible::Hash.optional.default(nil)
|
18
|
+
attribute :type, AccountType.optional.default(nil)
|
19
|
+
attribute :walletId, Types::Coercible::String.optional.default(nil)
|
20
|
+
attribute :account, Types::Coercible::Hash.optional.default(nil)
|
21
|
+
end
|
22
|
+
end
|
data/lib/asaas/types.rb
CHANGED
data/lib/asaas/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: asaas-ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.17
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Marcos Junior
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-12-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -53,19 +53,39 @@ dependencies:
|
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '3.2'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
56
|
+
name: webmock
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: 3.7.2
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - "~>"
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: 3.7.2
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: activesupport
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">="
|
60
74
|
- !ruby/object:Gem::Version
|
61
75
|
version: '4.2'
|
76
|
+
- - "<"
|
77
|
+
- !ruby/object:Gem::Version
|
78
|
+
version: '6'
|
62
79
|
type: :runtime
|
63
80
|
prerelease: false
|
64
81
|
version_requirements: !ruby/object:Gem::Requirement
|
65
82
|
requirements:
|
66
|
-
- - "
|
83
|
+
- - ">="
|
67
84
|
- !ruby/object:Gem::Version
|
68
85
|
version: '4.2'
|
86
|
+
- - "<"
|
87
|
+
- !ruby/object:Gem::Version
|
88
|
+
version: '6'
|
69
89
|
- !ruby/object:Gem::Dependency
|
70
90
|
name: virtus
|
71
91
|
requirement: !ruby/object:Gem::Requirement
|
@@ -195,6 +215,7 @@ executables: []
|
|
195
215
|
extensions: []
|
196
216
|
extra_rdoc_files: []
|
197
217
|
files:
|
218
|
+
- ".byebug_history"
|
198
219
|
- ".gitignore"
|
199
220
|
- ".rspec"
|
200
221
|
- ".ruby-gemset"
|
@@ -214,6 +235,7 @@ files:
|
|
214
235
|
- lib/asaas/api/notification.rb
|
215
236
|
- lib/asaas/api/payment.rb
|
216
237
|
- lib/asaas/api/subscription.rb
|
238
|
+
- lib/asaas/api/transfer.rb
|
217
239
|
- lib/asaas/api/webhook.rb
|
218
240
|
- lib/asaas/client.rb
|
219
241
|
- lib/asaas/configuration.rb
|
@@ -237,6 +259,7 @@ files:
|
|
237
259
|
- lib/asaas/models/interest.rb
|
238
260
|
- lib/asaas/models/model.rb
|
239
261
|
- lib/asaas/models/payment.rb
|
262
|
+
- lib/asaas/models/transfer.rb
|
240
263
|
- lib/asaas/models/webhook.rb
|
241
264
|
- lib/asaas/types.rb
|
242
265
|
- lib/asaas/version.rb
|
@@ -258,8 +281,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
258
281
|
- !ruby/object:Gem::Version
|
259
282
|
version: '0'
|
260
283
|
requirements: []
|
261
|
-
|
262
|
-
rubygems_version: 2.7.9
|
284
|
+
rubygems_version: 3.0.6
|
263
285
|
signing_key:
|
264
286
|
specification_version: 4
|
265
287
|
summary: Asass.com Ruby API Wrapper
|