currency_cloud 0.12.5 → 1.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (76) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +6 -1
  3. data/currency_cloud.gemspec +9 -3
  4. data/lib/currency_cloud/balance.rb +5 -0
  5. data/lib/currency_cloud/funding_account.rb +8 -0
  6. data/lib/currency_cloud/margin_balance_top_up.rb +5 -0
  7. data/lib/currency_cloud/payment.rb +10 -0
  8. data/lib/currency_cloud/payment_fee_rule.rb +5 -0
  9. data/lib/currency_cloud/payment_tracking_info.rb +5 -0
  10. data/lib/currency_cloud/quote_payment_fee.rb +5 -0
  11. data/lib/currency_cloud/reference.rb +5 -0
  12. data/lib/currency_cloud/version.rb +2 -2
  13. data/lib/currency_cloud/withdrawal_account.rb +17 -0
  14. data/lib/currency_cloud/withdrawal_account_funds.rb +5 -0
  15. data/lib/currency_cloud/withdrawal_accounts.rb +6 -0
  16. data/spec/integration/actions_spec.rb +11 -0
  17. data/spec/integration/funding_account_spec.rb +33 -0
  18. data/spec/integration/payments_spec.rb +28 -0
  19. data/spec/integration/rates_spec.rb +8 -0
  20. data/spec/integration/reference_spec.rb +52 -3
  21. data/spec/integration/withdrawal_accounts_spec.rb +69 -0
  22. data/spec/support/vcr_cassettes/Accounts/can_retrieve_account_payment_charges_settings.yml +2 -2
  23. data/spec/support/vcr_cassettes/Accounts/can_update_account_payment_charges_settings.yml +2 -2
  24. data/spec/support/vcr_cassettes/Actions/can_top_up_margin_balance.yml +39 -0
  25. data/spec/support/vcr_cassettes/Conversions/can_cancel_conversion/with_notes/has_a_non-empty_notes_attribute.yml +3 -3
  26. data/spec/support/vcr_cassettes/Conversions/can_cancel_conversion/without_notes/has_a_empty_notes_attribute.yml +3 -3
  27. data/spec/support/vcr_cassettes/Conversions/can_cancellation_quote.yml +2 -2
  28. data/spec/support/vcr_cassettes/Conversions/can_date_change_conversion.yml +3 -3
  29. data/spec/support/vcr_cassettes/Conversions/can_retrieve_cancellation_quote.yml +3 -3
  30. data/spec/support/vcr_cassettes/Conversions/can_retrieve_date_change_quote.yml +3 -3
  31. data/spec/support/vcr_cassettes/Conversions/can_retrieve_profit_and_loss.yml +2 -2
  32. data/spec/support/vcr_cassettes/Conversions/can_split_conversion.yml +3 -3
  33. data/spec/support/vcr_cassettes/Conversions/can_split_history.yml +3 -3
  34. data/spec/support/vcr_cassettes/Conversions/can_split_preview.yml +3 -3
  35. data/spec/support/vcr_cassettes/FundingAccounts/can_find.yml +141 -0
  36. data/spec/support/vcr_cassettes/IBANs/can_IBANs_for_a_specific_subaccount.yml +2 -2
  37. data/spec/support/vcr_cassettes/IBANs/can_IBANs_for_subaccounts.yml +2 -2
  38. data/spec/support/vcr_cassettes/IBANs/can_find.yml +2 -2
  39. data/spec/support/vcr_cassettes/Payments/can_authorise/when_payment_ids_are_valid.yml +5 -5
  40. data/spec/support/vcr_cassettes/Payments/can_create.yml +3 -3
  41. data/spec/support/vcr_cassettes/Payments/can_get_the_submission.yml +4 -4
  42. data/spec/support/vcr_cassettes/Payments/can_retrieve_confirmation.yml +3 -3
  43. data/spec/support/vcr_cassettes/Payments/can_retrieve_payment_delivery_date.yml +2 -2
  44. data/spec/support/vcr_cassettes/Payments/can_retrieve_payment_tracking_info.yml +291 -0
  45. data/spec/support/vcr_cassettes/Payments/can_retrieve_quote_payment_fee.yml +115 -0
  46. data/spec/support/vcr_cassettes/Rates/can_provided_detailed_rate_with_conversion_date_preference.yml +68 -0
  47. data/spec/support/vcr_cassettes/Reference/can_retrieve_bank_details.yml +2 -2
  48. data/spec/support/vcr_cassettes/Reference/can_retrieve_beneficiary_required_details.yml +2 -2
  49. data/spec/support/vcr_cassettes/Reference/can_retrieve_conversion_dates.yml +253 -110
  50. data/spec/support/vcr_cassettes/Reference/can_retrieve_currencies.yml +2 -2
  51. data/spec/support/vcr_cassettes/Reference/can_retrieve_payer_required_details.yml +2 -2
  52. data/spec/support/vcr_cassettes/Reference/can_retrieve_payment_dates.yml +2 -2
  53. data/spec/support/vcr_cassettes/Reference/can_retrieve_payment_fee_rules.yml +225 -0
  54. data/spec/support/vcr_cassettes/Reference/can_retrieve_payment_purpose_codes.yml +2 -2
  55. data/spec/support/vcr_cassettes/Reference/can_retrieve_settlement_accounts.yml +2 -2
  56. data/spec/support/vcr_cassettes/Reports/can_create_conversions_report.yml +2 -2
  57. data/spec/support/vcr_cassettes/Reports/can_create_payments_report.yml +2 -2
  58. data/spec/support/vcr_cassettes/Reports/can_find_report_requests.yml +2 -2
  59. data/spec/support/vcr_cassettes/Reports/can_retrieve_report_request.yml +2 -2
  60. data/spec/support/vcr_cassettes/Transactions/can_retrieve_sender_details.yml +2 -2
  61. data/spec/support/vcr_cassettes/Transfers/can_create.yml +2 -2
  62. data/spec/support/vcr_cassettes/Transfers/can_find.yml +3 -3
  63. data/spec/support/vcr_cassettes/Transfers/can_retrieve.yml +3 -3
  64. data/spec/support/vcr_cassettes/VirtualAccounts/can_find.yml +2 -2
  65. data/spec/support/vcr_cassettes/VirtualAccounts/can_find_VANs_for_a_specific_subaccount.yml +2 -2
  66. data/spec/support/vcr_cassettes/VirtualAccounts/can_find_VANs_for_subaccounts.yml +2 -2
  67. data/spec/support/vcr_cassettes/WithdrawalAccounts/can_find_withdrawal_accounts.yml +133 -0
  68. data/spec/support/vcr_cassettes/WithdrawalAccounts/can_find_withdrawal_accounts2.yml +140 -0
  69. data/spec/support/vcr_cassettes/WithdrawalAccounts/can_pull_funds.yml +140 -0
  70. metadata +51 -33
  71. data/lib/currency_cloud/settlement.rb +0 -55
  72. data/spec/integration/settlements_spec.rb +0 -66
  73. data/spec/support/vcr_cassettes/Settlements/can_add_conversion.yml +0 -152
  74. data/spec/support/vcr_cassettes/Settlements/can_release.yml +0 -119
  75. data/spec/support/vcr_cassettes/Settlements/can_remove_conversion.yml +0 -119
  76. data/spec/support/vcr_cassettes/Settlements/can_unrelease.yml +0 -119
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: currency_cloud
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.12.5
4
+ version: 1.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Liam McAndrew
@@ -9,64 +9,64 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2019-09-04 00:00:00.000000000 Z
12
+ date: 2020-12-02 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: httparty
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - '='
18
+ - - "~>"
19
19
  - !ruby/object:Gem::Version
20
- version: 0.14.0
20
+ version: '0.14'
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
- - - '='
25
+ - - "~>"
26
26
  - !ruby/object:Gem::Version
27
- version: 0.14.0
27
+ version: '0.14'
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: json
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - ">="
32
+ - - "~>"
33
33
  - !ruby/object:Gem::Version
34
- version: '1.8'
34
+ version: '2.3'
35
35
  type: :runtime
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - ">="
39
+ - - "~>"
40
40
  - !ruby/object:Gem::Version
41
- version: '1.8'
41
+ version: '2.3'
42
42
  - !ruby/object:Gem::Dependency
43
- name: addressable
43
+ name: rake
44
44
  requirement: !ruby/object:Gem::Requirement
45
45
  requirements:
46
- - - "<="
46
+ - - "~>"
47
47
  - !ruby/object:Gem::Version
48
- version: 2.4.0
48
+ version: 12.3.3
49
49
  type: :development
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
- - - "<="
53
+ - - "~>"
54
54
  - !ruby/object:Gem::Version
55
- version: 2.4.0
55
+ version: 12.3.3
56
56
  - !ruby/object:Gem::Dependency
57
- name: rake
57
+ name: addressable
58
58
  requirement: !ruby/object:Gem::Requirement
59
59
  requirements:
60
- - - "~>"
60
+ - - "<="
61
61
  - !ruby/object:Gem::Version
62
- version: '10.3'
62
+ version: 2.4.0
63
63
  type: :development
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
- - - "~>"
67
+ - - "<="
68
68
  - !ruby/object:Gem::Version
69
- version: '10.3'
69
+ version: 2.4.0
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: rspec
72
72
  requirement: !ruby/object:Gem::Requirement
@@ -162,8 +162,10 @@ files:
162
162
  - lib/currency_cloud/errors/general_error.rb
163
163
  - lib/currency_cloud/errors/unexpected_error.rb
164
164
  - lib/currency_cloud/find_report_requests_result.rb
165
+ - lib/currency_cloud/funding_account.rb
165
166
  - lib/currency_cloud/iban.rb
166
167
  - lib/currency_cloud/ibans.rb
168
+ - lib/currency_cloud/margin_balance_top_up.rb
167
169
  - lib/currency_cloud/pagination.rb
168
170
  - lib/currency_cloud/payer.rb
169
171
  - lib/currency_cloud/payer_required_details.rb
@@ -172,9 +174,12 @@ files:
172
174
  - lib/currency_cloud/payment_confirmation_result.rb
173
175
  - lib/currency_cloud/payment_dates.rb
174
176
  - lib/currency_cloud/payment_delivery_date_result.rb
177
+ - lib/currency_cloud/payment_fee_rule.rb
175
178
  - lib/currency_cloud/payment_report_result.rb
176
179
  - lib/currency_cloud/payment_submission.rb
180
+ - lib/currency_cloud/payment_tracking_info.rb
177
181
  - lib/currency_cloud/purpose_code.rb
182
+ - lib/currency_cloud/quote_payment_fee.rb
178
183
  - lib/currency_cloud/rate.rb
179
184
  - lib/currency_cloud/rates.rb
180
185
  - lib/currency_cloud/reference.rb
@@ -187,13 +192,15 @@ files:
187
192
  - lib/currency_cloud/sender.rb
188
193
  - lib/currency_cloud/sender_details_result.rb
189
194
  - lib/currency_cloud/session.rb
190
- - lib/currency_cloud/settlement.rb
191
195
  - lib/currency_cloud/settlement_account.rb
192
196
  - lib/currency_cloud/transaction.rb
193
197
  - lib/currency_cloud/transfer.rb
194
198
  - lib/currency_cloud/version.rb
195
199
  - lib/currency_cloud/virtual_account.rb
196
200
  - lib/currency_cloud/virtual_accounts.rb
201
+ - lib/currency_cloud/withdrawal_account.rb
202
+ - lib/currency_cloud/withdrawal_account_funds.rb
203
+ - lib/currency_cloud/withdrawal_accounts.rb
197
204
  - spec/currency_cloud/request_handler_spec.rb
198
205
  - spec/currency_cloud/resource_spec.rb
199
206
  - spec/currency_cloud_spec.rb
@@ -203,16 +210,17 @@ files:
203
210
  - spec/integration/conversions_spec.rb
204
211
  - spec/integration/error_utils_spec.rb
205
212
  - spec/integration/errors_spec.rb
213
+ - spec/integration/funding_account_spec.rb
206
214
  - spec/integration/ibans_spec.rb
207
215
  - spec/integration/payment_spec.rb
208
216
  - spec/integration/payments_spec.rb
209
217
  - spec/integration/rates_spec.rb
210
218
  - spec/integration/reference_spec.rb
211
219
  - spec/integration/reports_spec.rb
212
- - spec/integration/settlements_spec.rb
213
220
  - spec/integration/transactions_spec.rb
214
221
  - spec/integration/transfers_spec.rb
215
222
  - spec/integration/virtual_accounts_spec.rb
223
+ - spec/integration/withdrawal_accounts_spec.rb
216
224
  - spec/spec_helper.rb
217
225
  - spec/support/vcr_cassettes/Accounts/can_retrieve_account_payment_charges_settings.yml
218
226
  - spec/support/vcr_cassettes/Accounts/can_update_account_payment_charges_settings.yml
@@ -222,6 +230,7 @@ files:
222
230
  - spec/support/vcr_cassettes/Actions/can_find.yml
223
231
  - spec/support/vcr_cassettes/Actions/can_first.yml
224
232
  - spec/support/vcr_cassettes/Actions/can_retrieve.yml
233
+ - spec/support/vcr_cassettes/Actions/can_top_up_margin_balance.yml
225
234
  - spec/support/vcr_cassettes/Actions/can_update.yml
226
235
  - spec/support/vcr_cassettes/Actions/can_use_currency_to_retrieve_balance.yml
227
236
  - spec/support/vcr_cassettes/Actions/can_validate_beneficiaries.yml
@@ -246,6 +255,7 @@ files:
246
255
  - spec/support/vcr_cassettes/Error/is_raised_on_incorrect_authentication_details.yml
247
256
  - spec/support/vcr_cassettes/Error/is_raised_when_a_resource_is_not_found.yml
248
257
  - spec/support/vcr_cassettes/Error/is_raised_when_too_many_requests_have_been_issued.yml
258
+ - spec/support/vcr_cassettes/FundingAccounts/can_find.yml
249
259
  - spec/support/vcr_cassettes/IBANs/can_IBANs_for_a_specific_subaccount.yml
250
260
  - spec/support/vcr_cassettes/IBANs/can_IBANs_for_subaccounts.yml
251
261
  - spec/support/vcr_cassettes/IBANs/can_find.yml
@@ -254,24 +264,24 @@ files:
254
264
  - spec/support/vcr_cassettes/Payments/can_get_the_submission.yml
255
265
  - spec/support/vcr_cassettes/Payments/can_retrieve_confirmation.yml
256
266
  - spec/support/vcr_cassettes/Payments/can_retrieve_payment_delivery_date.yml
267
+ - spec/support/vcr_cassettes/Payments/can_retrieve_payment_tracking_info.yml
268
+ - spec/support/vcr_cassettes/Payments/can_retrieve_quote_payment_fee.yml
257
269
  - spec/support/vcr_cassettes/Rates/can_find.yml
258
270
  - spec/support/vcr_cassettes/Rates/can_provided_detailed_rate.yml
271
+ - spec/support/vcr_cassettes/Rates/can_provided_detailed_rate_with_conversion_date_preference.yml
259
272
  - spec/support/vcr_cassettes/Reference/can_retrieve_bank_details.yml
260
273
  - spec/support/vcr_cassettes/Reference/can_retrieve_beneficiary_required_details.yml
261
274
  - spec/support/vcr_cassettes/Reference/can_retrieve_conversion_dates.yml
262
275
  - spec/support/vcr_cassettes/Reference/can_retrieve_currencies.yml
263
276
  - spec/support/vcr_cassettes/Reference/can_retrieve_payer_required_details.yml
264
277
  - spec/support/vcr_cassettes/Reference/can_retrieve_payment_dates.yml
278
+ - spec/support/vcr_cassettes/Reference/can_retrieve_payment_fee_rules.yml
265
279
  - spec/support/vcr_cassettes/Reference/can_retrieve_payment_purpose_codes.yml
266
280
  - spec/support/vcr_cassettes/Reference/can_retrieve_settlement_accounts.yml
267
281
  - spec/support/vcr_cassettes/Reports/can_create_conversions_report.yml
268
282
  - spec/support/vcr_cassettes/Reports/can_create_payments_report.yml
269
283
  - spec/support/vcr_cassettes/Reports/can_find_report_requests.yml
270
284
  - spec/support/vcr_cassettes/Reports/can_retrieve_report_request.yml
271
- - spec/support/vcr_cassettes/Settlements/can_add_conversion.yml
272
- - spec/support/vcr_cassettes/Settlements/can_release.yml
273
- - spec/support/vcr_cassettes/Settlements/can_remove_conversion.yml
274
- - spec/support/vcr_cassettes/Settlements/can_unrelease.yml
275
285
  - spec/support/vcr_cassettes/Transactions/can_retrieve_sender_details.yml
276
286
  - spec/support/vcr_cassettes/Transfers/can_create.yml
277
287
  - spec/support/vcr_cassettes/Transfers/can_find.yml
@@ -279,6 +289,9 @@ files:
279
289
  - spec/support/vcr_cassettes/VirtualAccounts/can_find.yml
280
290
  - spec/support/vcr_cassettes/VirtualAccounts/can_find_VANs_for_a_specific_subaccount.yml
281
291
  - spec/support/vcr_cassettes/VirtualAccounts/can_find_VANs_for_subaccounts.yml
292
+ - spec/support/vcr_cassettes/WithdrawalAccounts/can_find_withdrawal_accounts.yml
293
+ - spec/support/vcr_cassettes/WithdrawalAccounts/can_find_withdrawal_accounts2.yml
294
+ - spec/support/vcr_cassettes/WithdrawalAccounts/can_pull_funds.yml
282
295
  homepage: https://github.com/Currencycloud/currencycloud-ruby/
283
296
  licenses:
284
297
  - MIT
@@ -298,8 +311,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
298
311
  - !ruby/object:Gem::Version
299
312
  version: '0'
300
313
  requirements: []
301
- rubyforge_project:
302
- rubygems_version: 2.7.9
314
+ rubygems_version: 3.0.6
303
315
  signing_key:
304
316
  specification_version: 4
305
317
  summary: Ruby SDK for the Currency Cloud API
@@ -313,16 +325,17 @@ test_files:
313
325
  - spec/integration/conversions_spec.rb
314
326
  - spec/integration/error_utils_spec.rb
315
327
  - spec/integration/errors_spec.rb
328
+ - spec/integration/funding_account_spec.rb
316
329
  - spec/integration/ibans_spec.rb
317
330
  - spec/integration/payment_spec.rb
318
331
  - spec/integration/payments_spec.rb
319
332
  - spec/integration/rates_spec.rb
320
333
  - spec/integration/reference_spec.rb
321
334
  - spec/integration/reports_spec.rb
322
- - spec/integration/settlements_spec.rb
323
335
  - spec/integration/transactions_spec.rb
324
336
  - spec/integration/transfers_spec.rb
325
337
  - spec/integration/virtual_accounts_spec.rb
338
+ - spec/integration/withdrawal_accounts_spec.rb
326
339
  - spec/spec_helper.rb
327
340
  - spec/support/vcr_cassettes/Accounts/can_retrieve_account_payment_charges_settings.yml
328
341
  - spec/support/vcr_cassettes/Accounts/can_update_account_payment_charges_settings.yml
@@ -332,6 +345,7 @@ test_files:
332
345
  - spec/support/vcr_cassettes/Actions/can_find.yml
333
346
  - spec/support/vcr_cassettes/Actions/can_first.yml
334
347
  - spec/support/vcr_cassettes/Actions/can_retrieve.yml
348
+ - spec/support/vcr_cassettes/Actions/can_top_up_margin_balance.yml
335
349
  - spec/support/vcr_cassettes/Actions/can_update.yml
336
350
  - spec/support/vcr_cassettes/Actions/can_use_currency_to_retrieve_balance.yml
337
351
  - spec/support/vcr_cassettes/Actions/can_validate_beneficiaries.yml
@@ -356,6 +370,7 @@ test_files:
356
370
  - spec/support/vcr_cassettes/Error/is_raised_on_incorrect_authentication_details.yml
357
371
  - spec/support/vcr_cassettes/Error/is_raised_when_a_resource_is_not_found.yml
358
372
  - spec/support/vcr_cassettes/Error/is_raised_when_too_many_requests_have_been_issued.yml
373
+ - spec/support/vcr_cassettes/FundingAccounts/can_find.yml
359
374
  - spec/support/vcr_cassettes/IBANs/can_IBANs_for_a_specific_subaccount.yml
360
375
  - spec/support/vcr_cassettes/IBANs/can_IBANs_for_subaccounts.yml
361
376
  - spec/support/vcr_cassettes/IBANs/can_find.yml
@@ -364,24 +379,24 @@ test_files:
364
379
  - spec/support/vcr_cassettes/Payments/can_get_the_submission.yml
365
380
  - spec/support/vcr_cassettes/Payments/can_retrieve_confirmation.yml
366
381
  - spec/support/vcr_cassettes/Payments/can_retrieve_payment_delivery_date.yml
382
+ - spec/support/vcr_cassettes/Payments/can_retrieve_payment_tracking_info.yml
383
+ - spec/support/vcr_cassettes/Payments/can_retrieve_quote_payment_fee.yml
367
384
  - spec/support/vcr_cassettes/Rates/can_find.yml
368
385
  - spec/support/vcr_cassettes/Rates/can_provided_detailed_rate.yml
386
+ - spec/support/vcr_cassettes/Rates/can_provided_detailed_rate_with_conversion_date_preference.yml
369
387
  - spec/support/vcr_cassettes/Reference/can_retrieve_bank_details.yml
370
388
  - spec/support/vcr_cassettes/Reference/can_retrieve_beneficiary_required_details.yml
371
389
  - spec/support/vcr_cassettes/Reference/can_retrieve_conversion_dates.yml
372
390
  - spec/support/vcr_cassettes/Reference/can_retrieve_currencies.yml
373
391
  - spec/support/vcr_cassettes/Reference/can_retrieve_payer_required_details.yml
374
392
  - spec/support/vcr_cassettes/Reference/can_retrieve_payment_dates.yml
393
+ - spec/support/vcr_cassettes/Reference/can_retrieve_payment_fee_rules.yml
375
394
  - spec/support/vcr_cassettes/Reference/can_retrieve_payment_purpose_codes.yml
376
395
  - spec/support/vcr_cassettes/Reference/can_retrieve_settlement_accounts.yml
377
396
  - spec/support/vcr_cassettes/Reports/can_create_conversions_report.yml
378
397
  - spec/support/vcr_cassettes/Reports/can_create_payments_report.yml
379
398
  - spec/support/vcr_cassettes/Reports/can_find_report_requests.yml
380
399
  - spec/support/vcr_cassettes/Reports/can_retrieve_report_request.yml
381
- - spec/support/vcr_cassettes/Settlements/can_add_conversion.yml
382
- - spec/support/vcr_cassettes/Settlements/can_release.yml
383
- - spec/support/vcr_cassettes/Settlements/can_remove_conversion.yml
384
- - spec/support/vcr_cassettes/Settlements/can_unrelease.yml
385
400
  - spec/support/vcr_cassettes/Transactions/can_retrieve_sender_details.yml
386
401
  - spec/support/vcr_cassettes/Transfers/can_create.yml
387
402
  - spec/support/vcr_cassettes/Transfers/can_find.yml
@@ -389,3 +404,6 @@ test_files:
389
404
  - spec/support/vcr_cassettes/VirtualAccounts/can_find.yml
390
405
  - spec/support/vcr_cassettes/VirtualAccounts/can_find_VANs_for_a_specific_subaccount.yml
391
406
  - spec/support/vcr_cassettes/VirtualAccounts/can_find_VANs_for_subaccounts.yml
407
+ - spec/support/vcr_cassettes/WithdrawalAccounts/can_find_withdrawal_accounts.yml
408
+ - spec/support/vcr_cassettes/WithdrawalAccounts/can_find_withdrawal_accounts2.yml
409
+ - spec/support/vcr_cassettes/WithdrawalAccounts/can_pull_funds.yml
@@ -1,55 +0,0 @@
1
- module CurrencyCloud
2
- class Settlement
3
- include CurrencyCloud::Resource
4
-
5
- resource :settlements
6
- actions :create, :retrieve, :find, :delete
7
-
8
- def add_conversion(conversion_id)
9
- update_attributes(Settlement.add_conversion(id, conversion_id))
10
- end
11
-
12
- def remove_conversion(conversion_id)
13
- update_attributes(Settlement.remove_conversion(id, conversion_id))
14
- end
15
-
16
- def release
17
- update_attributes(Settlement.release(id))
18
- end
19
-
20
- def unrelease
21
- update_attributes(Settlement.unrelease(id))
22
- end
23
-
24
- def self.add_conversion(settlement_id, conversion_id)
25
- attrs = client.post("#{settlement_id}/add_conversion", conversion_id: conversion_id)
26
- new(attrs)
27
- end
28
-
29
- def self.remove_conversion(settlement_id, conversion_id)
30
- attrs = client.post("#{settlement_id}/remove_conversion", conversion_id: conversion_id)
31
- new(attrs)
32
- end
33
-
34
- def self.release(settlement_id)
35
- attrs = client.post("#{settlement_id}/release")
36
- new(attrs)
37
- end
38
-
39
- def self.unrelease(settlement_id)
40
- attrs = client.post("#{settlement_id}/unrelease")
41
- new(attrs)
42
- end
43
-
44
- private
45
-
46
- def update_attributes(settlement)
47
- self.conversion_ids = settlement.conversion_ids
48
- self.status = settlement.status
49
- self.entries = settlement.entries
50
- self.updated_at = settlement.updated_at
51
- self.released_at = settlement.released_at
52
- self
53
- end
54
- end
55
- end
@@ -1,66 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe 'Settlements', vcr: true do
4
- before(:all) do
5
- CurrencyCloud.reset_session
6
- CurrencyCloud.environment = :demonstration
7
- CurrencyCloud.token = '6f5f99d1b860fc47e8a186e3dce0d3f9'
8
-
9
- @params = {
10
- buy_currency: 'GBP',
11
- sell_currency: 'USD',
12
- fixed_side: 'buy',
13
- amount: 1000,
14
- reason: 'mortgage payment',
15
- term_agreement: true
16
- }
17
- end
18
-
19
- it 'can #add_conversion' do
20
- conversion = CurrencyCloud::Conversion.create(@params)
21
- settlement = CurrencyCloud::Settlement.create
22
-
23
- updated_settlement = settlement.add_conversion(conversion.id)
24
-
25
- expect(settlement).to eq(updated_settlement)
26
-
27
- expect(settlement.conversion_ids).to eq(['24d2ee7f-c7a3-4181-979e-9c58dbace992'])
28
- expect(settlement.entries).to_not be_empty
29
-
30
- gbp_currency = settlement.entries[0]
31
- expect(gbp_currency).to include('GBP' => { 'receive_amount' => '1000.00', 'send_amount' => '0.00' })
32
-
33
- usd_currency = settlement.entries[1]
34
- expect(usd_currency).to include('USD' => { 'receive_amount' => '0.00', 'send_amount' => '1511.70' })
35
-
36
- expect(settlement.updated_at).to eq('2015-05-04T20:40:56+00:00')
37
- end
38
-
39
- it 'can #remove_conversion' do
40
- settlement = CurrencyCloud::Settlement.retrieve('63eeef54-3531-4e65-827a-7d0f37503fcc')
41
- deleted_settlement = settlement.remove_conversion('24d2ee7f-c7a3-4181-979e-9c58dbace992')
42
-
43
- expect(deleted_settlement).to_not be_nil
44
- expect(deleted_settlement.type).to eq('bulk')
45
- expect(deleted_settlement.created_at).to eq('2015-05-04T20:29:16+00:00')
46
- expect(deleted_settlement.status).to eq('open')
47
- end
48
-
49
- it 'can #release' do
50
- settlement = CurrencyCloud::Settlement.retrieve('51c619e0-0256-40ad-afba-ca4114b936f9')
51
- released_settlement = settlement.release
52
-
53
- expect(released_settlement).to eq(settlement)
54
- expect(released_settlement.released_at).to eq('2015-05-04T21:44:23+00:00')
55
- expect(released_settlement.status).to eq('released')
56
- end
57
-
58
- it 'can #unrelease' do
59
- settlement = CurrencyCloud::Settlement.retrieve('51c619e0-0256-40ad-afba-ca4114b936f9')
60
- unreleased_settlement = settlement.unrelease
61
-
62
- expect(unreleased_settlement).to eq(settlement)
63
- expect(unreleased_settlement.released_at).to eq('')
64
- expect(unreleased_settlement.status).to eq('open')
65
- end
66
- end
@@ -1,152 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: post
5
- uri: https://devapi.currencycloud.com/v2/authenticate/api
6
- body:
7
- encoding: UTF-8
8
- string: login_id=development%40currencycloud.com&api_key=deadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef
9
- headers:
10
- User-Agent:
11
- - CurrencyCloudSDK/2.0 Ruby/0.11.2
12
- response:
13
- status:
14
- code: 200
15
- message: OK
16
- headers:
17
- Date:
18
- - Mon, 16 Jul 2018 10:54:45 GMT
19
- Content-Type:
20
- - application/json;charset=utf-8
21
- Transfer-Encoding:
22
- - chunked
23
- Connection:
24
- - keep-alive
25
- Set-Cookie:
26
- - AWSALB=Zh+t/oSWavtYb7qJamC/2EHIzmUymRr6x/0IWy+j2l9FHJldhSpfDz3aCksiYUQMmwM+jdQJZYeudrnPk/zoSjWS6enr0eQ5A6kL56MefO9/vWf3OGB4RvvcdtIP;
27
- Expires=Mon, 23 Jul 2018 10:54:44 GMT; Path=/
28
- - __cfduid=dd7a74226221a50b10a53281124c436681531738484; expires=Tue, 16-Jul-19
29
- 10:54:44 GMT; path=/; domain=.currencycloud.com; HttpOnly
30
- Access-Control-Allow-Origin:
31
- - "*"
32
- X-Request-Id:
33
- - 12f15e80-b4e5-4a6a-a2a5-fabd31791a25
34
- Access-Control-Allow-Methods:
35
- - POST
36
- X-Content-Type-Options:
37
- - nosniff
38
- Vary:
39
- - Origin
40
- Access-Control-Allow-Headers:
41
- - authorization,Access-Control-Allow-Origin,Content-Type,SOAPAction,X-Auth-Token,Origin,Authority
42
- Expect-Ct:
43
- - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
44
- Server:
45
- - cloudflare
46
- Cf-Ray:
47
- - 43b3eeb6f88106be-LHR
48
- body:
49
- encoding: UTF-8
50
- string: '{"auth_token":"deadbeefdeadbeefdeadbeefdeadbeef"}'
51
- http_version:
52
- recorded_at: Mon, 16 Jul 2018 10:54:45 GMT
53
- - request:
54
- method: post
55
- uri: https://devapi.currencycloud.com/v2/conversions/create
56
- body:
57
- encoding: UTF-8
58
- string: buy_currency=GBP&sell_currency=USD&fixed_side=buy&amount=1000&reason=mortgage%20payment&term_agreement=true
59
- headers:
60
- X-Auth-Token:
61
- - deadbeefdeadbeefdeadbeefdeadbeef
62
- response:
63
- status:
64
- code: 200
65
- message: OK
66
- headers:
67
- Server:
68
- - nginx
69
- Date:
70
- - Mon, 04 May 2015 20:28:29 GMT
71
- Content-Type:
72
- - application/json;charset=utf-8
73
- Content-Length:
74
- - '865'
75
- Connection:
76
- - keep-alive
77
- X-Request-Id:
78
- - '2778807612227406608'
79
- X-Content-Type-Options:
80
- - nosniff
81
- body:
82
- encoding: UTF-8
83
- string: '{"id":"24d2ee7f-c7a3-4181-979e-9c58dbace992","settlement_date":"2015-05-06T14:00:00+00:00","conversion_date":"2015-05-06T00:00:00+00:00","short_reference":"20150504-PGRNVJ","creator_contact_id":"c4d838e8-1625-44c6-a9fb-39bcb1fe353d","account_id":"8ec3a69b-02d1-4f09-9a6b-6bd54a61b3a8","currency_pair":"GBPUSD","status":"awaiting_funds","buy_currency":"GBP","sell_currency":"USD","client_buy_amount":"1000.00","client_sell_amount":"1511.70","fixed_side":"buy","mid_market_rate":"1.5118","core_rate":"1.5117","partner_rate":"","partner_status":"funds_arrived","partner_buy_amount":"0.00","partner_sell_amount":"0.00","client_rate":"1.5117","deposit_required":false,"deposit_amount":"0.00","deposit_currency":"","deposit_status":"not_required","deposit_required_at":"","payment_ids":[],"created_at":"2015-05-04T20:28:29+00:00","updated_at":"2015-05-04T20:28:29+00:00"}'
84
- http_version:
85
- recorded_at: Mon, 04 May 2015 20:28:29 GMT
86
- - request:
87
- method: post
88
- uri: https://devapi.currencycloud.com/v2/settlements/create
89
- body:
90
- encoding: US-ASCII
91
- string: ''
92
- headers:
93
- X-Auth-Token:
94
- - deadbeefdeadbeefdeadbeefdeadbeef
95
- response:
96
- status:
97
- code: 200
98
- message: OK
99
- headers:
100
- Server:
101
- - nginx
102
- Date:
103
- - Mon, 04 May 2015 20:29:16 GMT
104
- Content-Type:
105
- - application/json;charset=utf-8
106
- Content-Length:
107
- - '243'
108
- Connection:
109
- - keep-alive
110
- X-Request-Id:
111
- - '2778808011768427319'
112
- X-Content-Type-Options:
113
- - nosniff
114
- body:
115
- encoding: UTF-8
116
- string: '{"id":"63eeef54-3531-4e65-827a-7d0f37503fcc","status":"open","short_reference":"20150504-RKNNBH","type":"bulk","conversion_ids":[],"entries":[],"created_at":"2015-05-04T20:29:16+00:00","updated_at":"2015-05-04T20:29:16+00:00","released_at":""}'
117
- http_version:
118
- recorded_at: Mon, 04 May 2015 20:29:16 GMT
119
- - request:
120
- method: post
121
- uri: https://devapi.currencycloud.com/v2/settlements/63eeef54-3531-4e65-827a-7d0f37503fcc/add_conversion
122
- body:
123
- encoding: UTF-8
124
- string: conversion_id=24d2ee7f-c7a3-4181-979e-9c58dbace992
125
- headers:
126
- X-Auth-Token:
127
- - 6f5f99d1b860fc47e8a186e3dce0d3f9
128
- response:
129
- status:
130
- code: 200
131
- message: OK
132
- headers:
133
- Server:
134
- - nginx
135
- Date:
136
- - Mon, 04 May 2015 20:40:57 GMT
137
- Content-Type:
138
- - application/json;charset=utf-8
139
- Content-Length:
140
- - '396'
141
- Connection:
142
- - keep-alive
143
- X-Request-Id:
144
- - '2778813884314110346'
145
- X-Content-Type-Options:
146
- - nosniff
147
- body:
148
- encoding: UTF-8
149
- string: '{"id":"63eeef54-3531-4e65-827a-7d0f37503fcc","status":"open","short_reference":"20150504-RKNNBH","type":"bulk","conversion_ids":["24d2ee7f-c7a3-4181-979e-9c58dbace992"],"entries":[{"GBP":{"receive_amount":"1000.00","send_amount":"0.00"}},{"USD":{"receive_amount":"0.00","send_amount":"1511.70"}}],"created_at":"2015-05-04T20:29:16+00:00","updated_at":"2015-05-04T20:40:56+00:00","released_at":""}'
150
- http_version:
151
- recorded_at: Mon, 04 May 2015 20:40:57 GMT
152
- recorded_with: VCR 3.0.3