increase 0.1.2 → 0.1.3
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/README.md +49 -6
- data/lib/increase/resources/check_transfers.rb +14 -0
- data/lib/increase/resources/limits.rb +12 -0
- data/lib/increase/resources/routing_numbers.rb +9 -0
- data/lib/increase/version.rb +1 -1
- metadata +4 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5dab8c774d39cce112627bc75d36a10947419d640db56e45dfc4f2cd75330656
|
4
|
+
data.tar.gz: a93d12bf1e5a64938dcf41b339a1de33c36c82ad8b5430169156cb868e0cf87a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f74f1fd78799702a1dfed5180e93155ca7595a4f8d758545e483f3aee5db6cac853ff044fe043bcc33918eb85dd17c4544ea359654adfa1b52448240e1a38d42
|
7
|
+
data.tar.gz: ce8aacf00abb9d1660cff928a80ecc5f74900f6ea998cb47a512dedb080cfd252740e4c7f15d982580dae0f026c172948d3948fcbd9438a0348e6b8dd2ee28f6
|
data/README.md
CHANGED
@@ -98,7 +98,7 @@ rescue Increase::ApiError => e
|
|
98
98
|
puts e.detail # "No resource of type transaction was found with ID transaction_1234abcd."
|
99
99
|
puts e.status # 404
|
100
100
|
|
101
|
-
puts e.response # This contains the full response from the API, including headers! (its a Faraday::
|
101
|
+
puts e.response # This contains the full response from the API, including headers! (its a Faraday::Response object)
|
102
102
|
|
103
103
|
puts e.class # Increase::ObjectNotFoundError (it's a subclass of Increase::ApiError!)
|
104
104
|
end
|
@@ -129,15 +129,58 @@ Increase.api_key = 'terabytes_of_cash' # Default: nil (you'll need one tho!)
|
|
129
129
|
Increase.base_url = :production # Default: :production
|
130
130
|
Increase.raise_api_errors = true # Default: true
|
131
131
|
|
132
|
-
# Or, you can
|
132
|
+
# Or, you can pass in a hash
|
133
|
+
Increase.configure(api_key: 'just_my_two_cents')
|
134
|
+
|
135
|
+
# Or, you can use a block!
|
133
136
|
Increase.configure do |config|
|
134
137
|
config.api_key = 'digital_dough'
|
135
|
-
config.base_url = :sandbox
|
136
|
-
config.raise_api_errors = false
|
138
|
+
config.base_url = :sandbox # Default: :production
|
139
|
+
config.raise_api_errors = false # Default: true
|
137
140
|
end
|
141
|
+
```
|
138
142
|
|
139
|
-
|
140
|
-
|
143
|
+
If you are using Rails, the recommended way is to set your configurations as a block in an initializer.
|
144
|
+
|
145
|
+
```ruby
|
146
|
+
# config/initializers/increase.rb
|
147
|
+
|
148
|
+
Increase.configure do |config|
|
149
|
+
config.api_key = 'money_cant_buy_happiness'
|
150
|
+
config.base_url = :production
|
151
|
+
end
|
152
|
+
```
|
153
|
+
|
154
|
+
### Webhooks
|
155
|
+
|
156
|
+
**Increase**'s webhooks include a `Increase-Webhook-Signature` header for securing your webhook endpoint. Although not
|
157
|
+
required, it's strongly recommended that you verify the signature to ensure the request is coming from **Increase**.
|
158
|
+
|
159
|
+
Here is an example for Rails.
|
160
|
+
|
161
|
+
```ruby
|
162
|
+
|
163
|
+
class IncreaseController < ApplicationController
|
164
|
+
protect_from_forgery except: :webhook # Ignore CSRF checks
|
165
|
+
|
166
|
+
def webhook
|
167
|
+
payload = request.body.read
|
168
|
+
sig_header = request.headers['Increase-Webhook-Signature']
|
169
|
+
secret = Rails.application.credentials.dig(:increase, :webhook_secret)
|
170
|
+
|
171
|
+
Increase::Webhook::Signature.verify?(
|
172
|
+
payload: payload,
|
173
|
+
signature_header: sig_header,
|
174
|
+
secret: secret
|
175
|
+
)
|
176
|
+
|
177
|
+
# It's a valid webhook! Do something with it...
|
178
|
+
|
179
|
+
render json: {success: true}
|
180
|
+
rescue Increase::WebhookSignatureVerificationError => e
|
181
|
+
render json: {error: 'Webhook signature verification failed'}, status: :bad_request
|
182
|
+
end
|
183
|
+
end
|
141
184
|
```
|
142
185
|
|
143
186
|
### Idempotency
|
@@ -0,0 +1,14 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "increase/resource"
|
4
|
+
|
5
|
+
module Increase
|
6
|
+
class CheckTransfers < Resource
|
7
|
+
create
|
8
|
+
list
|
9
|
+
retrieve
|
10
|
+
endpoint :approve, :post, with: :id
|
11
|
+
endpoint :cancel, :post, with: :id
|
12
|
+
endpoint :stop_payment, :post, with: :id
|
13
|
+
end
|
14
|
+
end
|
data/lib/increase/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: increase
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gary Tou
|
@@ -133,8 +133,11 @@ files:
|
|
133
133
|
- lib/increase/resources/accounts.rb
|
134
134
|
- lib/increase/resources/ach_transfers.rb
|
135
135
|
- lib/increase/resources/cards.rb
|
136
|
+
- lib/increase/resources/check_transfers.rb
|
136
137
|
- lib/increase/resources/events.rb
|
138
|
+
- lib/increase/resources/limits.rb
|
137
139
|
- lib/increase/resources/pending_transactions.rb
|
140
|
+
- lib/increase/resources/routing_numbers.rb
|
138
141
|
- lib/increase/resources/transactions.rb
|
139
142
|
- lib/increase/response_hash.rb
|
140
143
|
- lib/increase/util.rb
|