currency_cloud 0.16.2 → 1.2.1

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.
Files changed (72) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +3 -8
  3. data/README.md +4 -8
  4. data/currency_cloud.gemspec +4 -8
  5. data/lib/currency_cloud/errors/api_error.rb +6 -2
  6. data/lib/currency_cloud/payment.rb +4 -0
  7. data/lib/currency_cloud/payment_tracking_info.rb +5 -0
  8. data/lib/currency_cloud/version.rb +2 -2
  9. data/lib/currency_cloud/withdrawal_account.rb +17 -0
  10. data/lib/currency_cloud/withdrawal_account_funds.rb +5 -0
  11. data/lib/currency_cloud/withdrawal_accounts.rb +6 -0
  12. data/spec/integration/funding_account_spec.rb +29 -0
  13. data/spec/integration/payments_spec.rb +29 -0
  14. data/spec/integration/rates_spec.rb +8 -0
  15. data/spec/integration/reference_spec.rb +5 -3
  16. data/spec/integration/withdrawal_accounts_spec.rb +69 -0
  17. data/spec/support/vcr_cassettes/Accounts/can_retrieve_account_payment_charges_settings.yml +2 -2
  18. data/spec/support/vcr_cassettes/Accounts/can_update_account_payment_charges_settings.yml +2 -2
  19. data/spec/support/vcr_cassettes/Conversions/can_cancel_conversion/with_notes/has_a_non-empty_notes_attribute.yml +4 -4
  20. data/spec/support/vcr_cassettes/Conversions/can_cancel_conversion/without_notes/has_a_empty_notes_attribute.yml +4 -4
  21. data/spec/support/vcr_cassettes/Conversions/can_cancellation_quote.yml +3 -3
  22. data/spec/support/vcr_cassettes/Conversions/can_date_change_conversion.yml +4 -4
  23. data/spec/support/vcr_cassettes/Conversions/can_retrieve_cancellation_quote.yml +4 -4
  24. data/spec/support/vcr_cassettes/Conversions/can_retrieve_date_change_quote.yml +4 -4
  25. data/spec/support/vcr_cassettes/Conversions/can_retrieve_profit_and_loss.yml +2 -2
  26. data/spec/support/vcr_cassettes/Conversions/can_split_conversion.yml +4 -4
  27. data/spec/support/vcr_cassettes/Conversions/can_split_history.yml +4 -4
  28. data/spec/support/vcr_cassettes/Conversions/can_split_preview.yml +4 -4
  29. data/spec/support/vcr_cassettes/FundingAccounts/can_find.yml +2 -2
  30. data/spec/support/vcr_cassettes/FundingAccounts/can_find_bad_request.yml +142 -0
  31. data/spec/support/vcr_cassettes/FundingAccounts/can_find_missing_currency.yml +122 -0
  32. data/spec/support/vcr_cassettes/FundingAccounts/can_find_unauthorized.yml +62 -0
  33. data/spec/support/vcr_cassettes/IBANs/can_IBANs_for_a_specific_subaccount.yml +2 -2
  34. data/spec/support/vcr_cassettes/IBANs/can_IBANs_for_subaccounts.yml +2 -2
  35. data/spec/support/vcr_cassettes/IBANs/can_find.yml +1 -1
  36. data/spec/support/vcr_cassettes/Payments/can_authorise/when_payment_ids_are_valid.yml +5 -5
  37. data/spec/support/vcr_cassettes/Payments/can_create.yml +3 -3
  38. data/spec/support/vcr_cassettes/Payments/can_create_bad_request.yml +191 -0
  39. data/spec/support/vcr_cassettes/Payments/can_get_the_submission.yml +4 -4
  40. data/spec/support/vcr_cassettes/Payments/can_retrieve_confirmation.yml +3 -3
  41. data/spec/support/vcr_cassettes/Payments/can_retrieve_payment_delivery_date.yml +2 -2
  42. data/spec/support/vcr_cassettes/Payments/can_retrieve_payment_tracking_info.yml +291 -0
  43. data/spec/support/vcr_cassettes/Payments/can_retrieve_quote_payment_fee.yml +2 -2
  44. data/spec/support/vcr_cassettes/Rates/can_provided_detailed_rate_with_conversion_date_preference.yml +68 -0
  45. data/spec/support/vcr_cassettes/Reference/can_retrieve_bank_details.yml +2 -2
  46. data/spec/support/vcr_cassettes/Reference/can_retrieve_conversion_dates.yml +253 -110
  47. data/spec/support/vcr_cassettes/Reference/can_retrieve_currencies.yml +2 -2
  48. data/spec/support/vcr_cassettes/Reference/can_retrieve_payer_required_details.yml +2 -2
  49. data/spec/support/vcr_cassettes/Reference/can_retrieve_payment_dates.yml +2 -2
  50. data/spec/support/vcr_cassettes/Reference/can_retrieve_payment_fee_rules.yml +1 -1
  51. data/spec/support/vcr_cassettes/Reference/can_retrieve_payment_purpose_codes.yml +2 -2
  52. data/spec/support/vcr_cassettes/Reference/can_retrieve_settlement_accounts.yml +2 -2
  53. data/spec/support/vcr_cassettes/Reports/can_create_payments_report.yml +2 -2
  54. data/spec/support/vcr_cassettes/Reports/can_find_report_requests.yml +2 -2
  55. data/spec/support/vcr_cassettes/Reports/can_retrieve_report_request.yml +2 -2
  56. data/spec/support/vcr_cassettes/Transactions/can_retrieve_sender_details.yml +2 -2
  57. data/spec/support/vcr_cassettes/Transfers/can_create.yml +2 -2
  58. data/spec/support/vcr_cassettes/Transfers/can_find.yml +3 -3
  59. data/spec/support/vcr_cassettes/Transfers/can_retrieve.yml +3 -3
  60. data/spec/support/vcr_cassettes/VirtualAccounts/can_find.yml +2 -2
  61. data/spec/support/vcr_cassettes/VirtualAccounts/can_find_VANs_for_a_specific_subaccount.yml +2 -2
  62. data/spec/support/vcr_cassettes/VirtualAccounts/can_find_VANs_for_subaccounts.yml +2 -2
  63. data/spec/support/vcr_cassettes/WithdrawalAccounts/can_find_withdrawal_accounts.yml +133 -0
  64. data/spec/support/vcr_cassettes/WithdrawalAccounts/can_find_withdrawal_accounts2.yml +140 -0
  65. data/spec/support/vcr_cassettes/WithdrawalAccounts/can_pull_funds.yml +140 -0
  66. metadata +44 -31
  67. data/lib/currency_cloud/settlement.rb +0 -55
  68. data/spec/integration/settlements_spec.rb +0 -66
  69. data/spec/support/vcr_cassettes/Settlements/can_add_conversion.yml +0 -152
  70. data/spec/support/vcr_cassettes/Settlements/can_release.yml +0 -119
  71. data/spec/support/vcr_cassettes/Settlements/can_remove_conversion.yml +0 -119
  72. data/spec/support/vcr_cassettes/Settlements/can_unrelease.yml +0 -119
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ede0ca2f2c49e836e993842a9ee166b688e553c98fdaee673f3dbf612e6e491d
4
- data.tar.gz: 65f38498aa910ab12917c1a98dd0280736dff4e9a93faff0e640fc95cd1292d0
3
+ metadata.gz: 2d4b1daa96913bd271032c9f92557fd3f63b59831d19c5d854b4d03646208d25
4
+ data.tar.gz: 176c9b3738f6fc231d6522a2371965bb72fdae6caf50ada5881d8f1185a1aa2a
5
5
  SHA512:
6
- metadata.gz: 77a79896ebe304b82d07efbc4cd118e054cc9e6364976cbe1705067f3323925180780f3cb8465f2568db611c5255a5f20c628daca25aa754a61616c2dd6663c9
7
- data.tar.gz: 122137afe91f830d09a20e7c254382961bd680e48c909a7a426a219f8f6c3389054e9b40a1e0d3d1e575c6d4a6c6ec30d82157a7e812a01e63dd8c7740699008
6
+ metadata.gz: 96a63a804f773cde7c331c78f8e5770eaf01879238c59fdbb995ca4fdc8cb93142eeb687ce9917fea160fa3f5d85bf553b8fb365848d776b6fdc3e8bf06b8f96
7
+ data.tar.gz: 28b697c34b4231ed0ae8318a210224be4252641b339381716bf41c266ed0732d2df80d0a696a1a90fe6cdb830239a1ddba8b569494611480cdc173f00a6b6468
data/.travis.yml CHANGED
@@ -4,12 +4,7 @@ script: bundle exec rspec
4
4
  cache: bundler
5
5
 
6
6
  rvm:
7
- - 1.9.3
8
- - 2.2
9
- - 2.3.4
10
- - 2.4.1
11
- - 2.5.3
12
- - 2.6.3
13
- - jruby-19mode
14
- - jruby-9.1.17.0
7
+ - 2.5.8
8
+ - 2.6.6
9
+ - 2.7.2
15
10
  - jruby-9.2.0.0
data/README.md CHANGED
@@ -16,20 +16,16 @@ you just want to use the library in your application, you should run:
16
16
  If you want to build the gem from source:
17
17
 
18
18
  `gem build currency_cloud.gemspec`
19
+
19
20
 
20
21
  ## Supported Ruby versions
21
22
 
22
23
  This library aims to support and is [tested against][travis] the following Ruby
23
24
  implementations:
24
25
 
25
- * MRI 1.9.3
26
- * MRI 2.0.0
27
- * MRI 2.1.0
28
- * MRI 2.2.0
29
- * MRI 2.3.4
30
- * MRI 2.4.1
31
- * MRI 2.5.3
32
- * MRI 2.6.3
26
+ * MRI 2.5
27
+ * MRI 2.6
28
+ * MRI 2.7
33
29
  * [JRuby][jruby]
34
30
  * [Rubinius][rubinius]
35
31
 
@@ -11,18 +11,14 @@ Gem::Specification.new do |s|
11
11
  s.email = ['liam.mcandrew@currencycloud.com', 'richard.nienaber@currencycloud.com']
12
12
  s.homepage = 'https://github.com/Currencycloud/currencycloud-ruby/'
13
13
  s.licenses = ['MIT']
14
- s.required_ruby_version = '>= 1.9'
14
+ s.required_ruby_version = '>= 2.5'
15
15
 
16
16
  s.add_dependency('httparty', '~> 0.14')
17
- if RUBY_VERSION == '1.9.3'
18
- s.add_dependency('json', '>= 1.8', '<= 2.2')
19
- else
20
- s.add_dependency('json', '>= 1.8')
21
- end
22
17
 
18
+ s.add_dependency('json', '~> 2.3.0')
19
+ s.add_development_dependency('rake', '~> 12.3.3')
23
20
 
24
- s.add_development_dependency('addressable', '<= 2.4.0')
25
- s.add_development_dependency('rake', '~> 10.3')
21
+ s.add_development_dependency('addressable', '<= 2.8.0')
26
22
  s.add_development_dependency('rspec', '~> 3.1')
27
23
  s.add_development_dependency('vcr', '~> 3.0.3')
28
24
  s.add_development_dependency('webmock', '~> 2.3.2')
@@ -37,8 +37,12 @@ module CurrencyCloud
37
37
  return unless errors['error_messages']
38
38
 
39
39
  errors['error_messages'].each do |field, messages|
40
- messages.each do |message|
41
- @messages << ApiErrorMessage.new(field, message)
40
+ if messages.is_a?(Array)
41
+ messages.each do |message|
42
+ @messages << ApiErrorMessage.new(field, message)
43
+ end
44
+ else
45
+ @messages << ApiErrorMessage.new(field, messages)
42
46
  end
43
47
  end
44
48
  end
@@ -30,5 +30,9 @@ module CurrencyCloud
30
30
  QuotePaymentFee.new(result)
31
31
  end
32
32
 
33
+ def self.tracking_info(id)
34
+ result = client.get("#{id}/tracking_info")
35
+ PaymentTrackingInfo.new(result)
36
+ end
33
37
  end
34
38
  end
@@ -0,0 +1,5 @@
1
+ module CurrencyCloud
2
+ class PaymentTrackingInfo
3
+ include CurrencyCloud::Resource
4
+ end
5
+ end
@@ -1,6 +1,6 @@
1
1
  # Separate Gem version from 'API version'
2
2
 
3
3
  module CurrencyCloud
4
- API_VERSION = 'v2'.freeze # API Version
5
- VERSION = '0.16.2'.freeze # Gem Version
4
+ API_VERSION = "v2".freeze # API Version
5
+ VERSION = "1.2.1".freeze # Gem Version
6
6
  end
@@ -0,0 +1,17 @@
1
+ module CurrencyCloud
2
+ class WithdrawalAccount
3
+ include CurrencyCloud::Resource
4
+
5
+ resource :withdrawal_accounts
6
+
7
+ def self.find(params = {})
8
+ result = client.get("/", params)
9
+ WithdrawalAccounts.new(:withdrawal_accounts, self, result)
10
+ end
11
+
12
+ def self.pull_funds(withdrawal_account_id, params = {})
13
+ result = client.post("#{withdrawal_account_id}/pull_funds", params)
14
+ WithdrawalAccountFunds.new(result)
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,5 @@
1
+ module CurrencyCloud
2
+ class WithdrawalAccountFunds
3
+ include CurrencyCloud::Resource
4
+ end
5
+ end
@@ -0,0 +1,6 @@
1
+ require "currency_cloud/resourceful_collection"
2
+
3
+ module CurrencyCloud
4
+ class WithdrawalAccounts < CurrencyCloud::ResourcefulCollection
5
+ end
6
+ end
@@ -30,4 +30,33 @@ describe "FundingAccounts", vcr: true do
30
30
  expect(account.updated_at).to eq "2018-05-14T14:19:30+00:00"
31
31
  end
32
32
 
33
+ it "can find #missing_currency" do
34
+ begin
35
+ accounts = CurrencyCloud::FundingAccount.find()
36
+ rescue CurrencyCloud::BadRequestError => error
37
+ # All Good. Expected
38
+ expect(error.messages.length).to eq 1
39
+ expect(error.messages[0].code).to eq "currency_is_required"
40
+ end
41
+ end
42
+
43
+ it "can find #bad_request" do
44
+ begin
45
+ accounts = CurrencyCloud::FundingAccount.find(currency: "a", payment_type: "x", account_id: "x")
46
+ rescue CurrencyCloud::BadRequestError => error
47
+ # All Good. Expected
48
+ expect(error.messages.length).to eq 3
49
+ end
50
+ end
51
+
52
+ it "can find #unauthorized" do
53
+ begin
54
+ accounts = CurrencyCloud::FundingAccount.find(currency: "GBP")
55
+ rescue CurrencyCloud::AuthenticationError => error
56
+ # All Good. Expected
57
+ expect(error.messages.length).to eq 1
58
+ expect(error.messages[0].code).to eq "invalid_supplied_credentials"
59
+ end
60
+ end
61
+
33
62
  end
@@ -107,4 +107,33 @@ describe 'Payments', vcr: true do
107
107
  expect(quote_payment_fee.payment_type).to eq("regular")
108
108
  expect(quote_payment_fee.charge_type).to be_nil
109
109
  end
110
+
111
+ it "can retrieve #payment_tracking_info" do
112
+ payment_tracking_info = CurrencyCloud::Payment.tracking_info("46ed4827-7b6f-4491-a06f-b548d5a7512d")
113
+
114
+ expect(payment_tracking_info).to be_a(CurrencyCloud::PaymentTrackingInfo)
115
+ expect(payment_tracking_info.uetr).to eq("46ed4827-7b6f-4491-a06f-b548d5a7512d")
116
+ expect(payment_tracking_info.transaction_status["status"]).to eq("processing")
117
+ expect(payment_tracking_info.transaction_status["reason"]).to eq("transferred_and_tracked")
118
+ expect(payment_tracking_info.initiation_time).to eq("2019-07-09T13:20:30+00:00")
119
+ expect(payment_tracking_info.completion_time).to be_nil
120
+ expect(payment_tracking_info.last_update_time).to eq("2019-07-10T15:39:08+00:00")
121
+ expect(payment_tracking_info.payment_events.length).to eq(7)
122
+ expect(payment_tracking_info.payment_events[6]["tracker_event_type"]).to eq("customer_credit_transfer_payment")
123
+ expect(payment_tracking_info.payment_events[6]["instructed_amount"]["amount"]).to eq("745437.57")
124
+ end
125
+
126
+ it 'can create #bad_request' do
127
+ begin
128
+ payment = CurrencyCloud::Payment.create()
129
+ rescue CurrencyCloud::BadRequestError => error
130
+ #All Good. Expected
131
+ expect(error.messages.length).to eq 10
132
+ expect(error.messages[0].field).to eq "currency"
133
+ expect(error.messages[0].code).to eq "currency_is_required"
134
+ expect(error.messages[2].field).to eq "beneficiary_id"
135
+ expect(error.messages[2].code).to eq "beneficiary_id_is_required"
136
+ end
137
+ end
138
+
110
139
  end
@@ -36,4 +36,12 @@ describe 'Rates', vcr: true do
36
36
  expect(detailed_rate.client_sell_amount).to eq('15234.00')
37
37
  expect(detailed_rate.settlement_cut_off_time).to eq('2015-04-29T14:00:00Z')
38
38
  end
39
+
40
+ it 'can provided #detailed rate with conversion date preference' do
41
+ detailed_rate = CurrencyCloud::Rate.detailed(buy_currency: 'GBP', sell_currency: 'USD', fixed_side: 'buy', amount: '10000', conversion_date_preference: 'optimize_liquidity')
42
+
43
+ expect(detailed_rate).to be_a_kind_of(CurrencyCloud::Rate)
44
+ expect(detailed_rate.client_sell_amount).to eq('14081.00')
45
+ expect(detailed_rate.settlement_cut_off_time).to eq('2020-05-21T14:00:00Z')
46
+ end
39
47
  end
@@ -24,9 +24,11 @@ describe 'Reference', vcr: true do
24
24
 
25
25
  expect(dates.invalid_conversion_dates).to_not be_empty
26
26
  invalid_conversion_date = dates.invalid_conversion_dates.first
27
- expect(invalid_conversion_date).to eq(['2018-07-21', 'No trading on Saturday'])
28
- expect(dates.first_conversion_date).to eq('2018-07-16')
29
- expect(dates.default_conversion_date).to eq('2018-07-18')
27
+ expect(invalid_conversion_date).to eq(["2020-11-11", "Veterans' Day"])
28
+ expect(dates.first_conversion_date).to eq("2020-11-10")
29
+ expect(dates.default_conversion_date).to eq("2020-11-12")
30
+ expect(dates.first_conversion_cutoff_datetime).to eq("2020-11-10T15:30:00+00:00")
31
+ expect(dates.optimize_liquidity_conversion_date).to eq("2020-11-12")
30
32
  end
31
33
 
32
34
  it 'can retrieve #currencies' do
@@ -0,0 +1,69 @@
1
+ require "spec_helper"
2
+
3
+ describe "WithdrawalAccounts", vcr: true do
4
+ before do
5
+ CurrencyCloud.login_id = "development@currencycloud.com"
6
+ CurrencyCloud.api_key = "deadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef"
7
+ CurrencyCloud.environment = :demonstration
8
+ CurrencyCloud.reset_session
9
+ end
10
+
11
+ it "can find #withdrawal_accounts" do
12
+ withdrawal_accounts = CurrencyCloud::WithdrawalAccount.find(
13
+ account_id: "72970a7c-7921-431c-b95f-3438724ba16f"
14
+ )
15
+ expect(withdrawal_accounts.length).to eq(1)
16
+
17
+ withdrawal_account = withdrawal_accounts[0]
18
+ expect(withdrawal_account).to be_a(CurrencyCloud::WithdrawalAccount)
19
+ expect(withdrawal_account.id).to eq("0886ac00-6ab6-41a6-b0e1-8d3faf2e0de2")
20
+ expect(withdrawal_account.account_name).to eq("currencycloud")
21
+ expect(withdrawal_account.account_holder_name).to eq("The Currency Cloud")
22
+ expect(withdrawal_account.account_holder_dob).to be_nil
23
+ expect(withdrawal_account.routing_code).to eq("123456789")
24
+ expect(withdrawal_account.account_number).to eq("01234567890")
25
+ expect(withdrawal_account.currency).to eq("USD")
26
+ expect(withdrawal_account.account_id).to eq("72970a7c-7921-431c-b95f-3438724ba16f")
27
+ end
28
+
29
+ it "can find #withdrawal_accounts2" do
30
+ withdrawal_accounts = CurrencyCloud::WithdrawalAccount.find()
31
+ expect(withdrawal_accounts.length).to eq(2)
32
+
33
+ withdrawal_account1 = withdrawal_accounts[0]
34
+ expect(withdrawal_account1).to be_a(CurrencyCloud::WithdrawalAccount)
35
+ expect(withdrawal_account1.id).to eq("0886ac00-6ab6-41a6-b0e1-8d3faf2e0de2")
36
+ expect(withdrawal_account1.account_name).to eq("currencycloud")
37
+ expect(withdrawal_account1.account_holder_name).to eq("The Currency Cloud")
38
+ expect(withdrawal_account1.account_holder_dob).to be_nil
39
+ expect(withdrawal_account1.routing_code).to eq("123456789")
40
+ expect(withdrawal_account1.account_number).to eq("01234567890")
41
+ expect(withdrawal_account1.currency).to eq("USD")
42
+ expect(withdrawal_account1.account_id).to eq("72970a7c-7921-431c-b95f-3438724ba16f")
43
+
44
+ withdrawal_account2 = withdrawal_accounts[1]
45
+ expect(withdrawal_account2).to be_a(CurrencyCloud::WithdrawalAccount)
46
+ expect(withdrawal_account2.id).to eq("0886ac00-6ab6-41a6-b0e1-8d3faf2e0de3")
47
+ expect(withdrawal_account2.account_name).to eq("currencycloud2")
48
+ expect(withdrawal_account2.account_holder_name).to eq("The Currency Cloud 2")
49
+ expect(withdrawal_account2.account_holder_dob).to eq("1990-07-20")
50
+ expect(withdrawal_account2.routing_code).to eq("223456789")
51
+ expect(withdrawal_account2.account_number).to eq("01234567892")
52
+ expect(withdrawal_account2.currency).to eq("GBP")
53
+ expect(withdrawal_account2.account_id).to eq("72970a7c-7921-431c-b95f-3438724ba16e")
54
+ end
55
+
56
+ it "can pull funds" do
57
+ withdrawal_account_funds = CurrencyCloud::WithdrawalAccount.pull_funds(
58
+ "0886ac00-6ab6-41a6-b0e1-8d3faf2e0de2",
59
+ reference: "PullFunds1",
60
+ amount: 100.0
61
+ )
62
+ expect(withdrawal_account_funds).to be_a(CurrencyCloud::WithdrawalAccountFunds)
63
+ expect(withdrawal_account_funds.id).to eq("e2e6b7aa-c9e8-4625-96a6-b97d4baab758")
64
+ expect(withdrawal_account_funds.withdrawal_account_id).to eq("0886ac00-6ab6-41a6-b0e1-8d3faf2e0de2")
65
+ expect(withdrawal_account_funds.reference).to eq("PullFunds1")
66
+ expect(withdrawal_account_funds.amount).to eq("100.00")
67
+ expect(withdrawal_account_funds.created_at).to eq("2020-06-29T08:02:31+00:00")
68
+ end
69
+ end
@@ -8,7 +8,7 @@ http_interactions:
8
8
  string: login_id=development%40currencycloud.com&api_key=deadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef
9
9
  headers:
10
10
  User-Agent:
11
- - CurrencyCloudSDK/2.0 Ruby/0.16.2
11
+ - CurrencyCloudSDK/2.0 Ruby/1.2.1
12
12
  response:
13
13
  status:
14
14
  code: 200
@@ -58,7 +58,7 @@ http_interactions:
58
58
  X-Auth-Token:
59
59
  - deadbeefdeadbeefdeadbeefdeadbeef
60
60
  User-Agent:
61
- - CurrencyCloudSDK/2.0 Ruby/0.16.2
61
+ - CurrencyCloudSDK/2.0 Ruby/1.2.1
62
62
  response:
63
63
  status:
64
64
  code: 200
@@ -8,7 +8,7 @@ http_interactions:
8
8
  string: login_id=development%40currencycloud.com&api_key=deadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef
9
9
  headers:
10
10
  User-Agent:
11
- - CurrencyCloudSDK/2.0 Ruby/0.16.2
11
+ - CurrencyCloudSDK/2.0 Ruby/1.2.1
12
12
  response:
13
13
  status:
14
14
  code: 200
@@ -58,7 +58,7 @@ http_interactions:
58
58
  X-Auth-Token:
59
59
  - deadbeefdeadbeefdeadbeefdeadbeef
60
60
  User-Agent:
61
- - CurrencyCloudSDK/2.0 Ruby/0.16.2
61
+ - CurrencyCloudSDK/2.0 Ruby/1.2.1
62
62
  response:
63
63
  status:
64
64
  code: 200
@@ -8,7 +8,7 @@ http_interactions:
8
8
  string: login_id=development%40currencycloud.com&api_key=deadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef
9
9
  headers:
10
10
  User-Agent:
11
- - CurrencyCloudSDK/2.0 Ruby/0.16.2
11
+ - CurrencyCloudSDK/2.0 Ruby/1.2.1
12
12
  response:
13
13
  status:
14
14
  code: 200
@@ -60,7 +60,7 @@ http_interactions:
60
60
  X-Auth-Token:
61
61
  - deadbeefdeadbeefdeadbeefdeadbeef
62
62
  User-Agent:
63
- - CurrencyCloudSDK/2.0 Ruby/0.16.2
63
+ - CurrencyCloudSDK/2.0 Ruby/1.2.1
64
64
  response:
65
65
  status:
66
66
  code: 200
@@ -99,7 +99,7 @@ http_interactions:
99
99
  - 43b3dae5d9980a66-LHR
100
100
  body:
101
101
  encoding: UTF-8
102
- string: '{"id":"81b23958-cde7-4882-a4ae-f0da6a95d6cb","settlement_date":"2018-07-18T15:30:00+00:00","conversion_date":"2018-07-18T00:00:00+00:00","short_reference":"20180716-MGHWYQ","creator_contact_id":"04d0c252-7b78-4d72-b408-df78841e3ddc","account_id":"67e1b252-40a7-454d-a097-8f77d385889d","currency_pair":"GBPUSD","status":"awaiting_funds","buy_currency":"USD","sell_currency":"GBP","client_buy_amount":"95000.00","client_sell_amount":"67476.38","fixed_side":"buy","core_rate":"1.4079","partner_rate":"","partner_status":"awaiting_funds","partner_buy_amount":"0.00","partner_sell_amount":"0.00","client_rate":"1.4079","deposit_required":false,"deposit_amount":"0.00","deposit_currency":"","deposit_status":"not_required","deposit_required_at":"","payment_ids":[],"unallocated_funds":"0.00","unique_request_id":null,"created_at":"2018-07-16T10:41:12+00:00","updated_at":"2018-07-16T10:41:13+00:00","mid_market_rate":"1.4080"}'
102
+ string: '{"id":"81b23958-cde7-4882-a4ae-f0da6a95d6cb","settlement_date":"2018-07-18T15:30:00+00:00","conversion_date":"2018-07-18T00:00:00+00:00","short_reference":"20180716-MGHWYQ","creator_contact_id":"04d0c252-7b78-4d72-b408-df78841e3ddc","account_id":"67e1b252-40a7-454d-a097-8f77d385889d","currency_pair":"GBPUSD","status":"awaiting_funds","buy_currency":"USD","sell_currency":"GBP","client_buy_amount":"95000.00","client_sell_amount":"67476.38","fixed_side":"buy","core_rate":"1.4079","partner_rate":"","partner_buy_amount":"0.00","partner_sell_amount":"0.00","client_rate":"1.4079","deposit_required":false,"deposit_amount":"0.00","deposit_currency":"","deposit_status":"not_required","deposit_required_at":"","payment_ids":[],"unallocated_funds":"0.00","unique_request_id":null,"created_at":"2018-07-16T10:41:12+00:00","updated_at":"2018-07-16T10:41:13+00:00","mid_market_rate":"1.4080"}'
103
103
  http_version:
104
104
  recorded_at: Mon, 16 Jul 2018 10:41:13 GMT
105
105
  - request:
@@ -112,7 +112,7 @@ http_interactions:
112
112
  X-Auth-Token:
113
113
  - deadbeefdeadbeefdeadbeefdeadbeef
114
114
  User-Agent:
115
- - CurrencyCloudSDK/2.0 Ruby/0.16.2
115
+ - CurrencyCloudSDK/2.0 Ruby/1.2.1
116
116
  response:
117
117
  status:
118
118
  code: 200
@@ -8,7 +8,7 @@ http_interactions:
8
8
  string: login_id=development%40currencycloud.com&api_key=deadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef
9
9
  headers:
10
10
  User-Agent:
11
- - CurrencyCloudSDK/2.0 Ruby/0.16.2
11
+ - CurrencyCloudSDK/2.0 Ruby/1.2.1
12
12
  response:
13
13
  status:
14
14
  code: 200
@@ -60,7 +60,7 @@ http_interactions:
60
60
  X-Auth-Token:
61
61
  - deadbeefdeadbeefdeadbeefdeadbeef
62
62
  User-Agent:
63
- - CurrencyCloudSDK/2.0 Ruby/0.16.2
63
+ - CurrencyCloudSDK/2.0 Ruby/1.2.1
64
64
  response:
65
65
  status:
66
66
  code: 200
@@ -99,7 +99,7 @@ http_interactions:
99
99
  - 43b3dad01b820a66-LHR
100
100
  body:
101
101
  encoding: UTF-8
102
- string: '{"id":"70e15a24-9a4c-4c56-8f68-3816965eb311","settlement_date":"2018-07-18T15:30:00+00:00","conversion_date":"2018-07-18T00:00:00+00:00","short_reference":"20180716-YTCSSY","creator_contact_id":"04d0c252-7b78-4d72-b408-df78841e3ddc","account_id":"67e1b252-40a7-454d-a097-8f77d385889d","currency_pair":"GBPUSD","status":"awaiting_funds","buy_currency":"USD","sell_currency":"GBP","client_buy_amount":"95000.00","client_sell_amount":"67476.38","fixed_side":"buy","core_rate":"1.4079","partner_rate":"","partner_status":"awaiting_funds","partner_buy_amount":"0.00","partner_sell_amount":"0.00","client_rate":"1.4079","deposit_required":false,"deposit_amount":"0.00","deposit_currency":"","deposit_status":"not_required","deposit_required_at":"","payment_ids":[],"unallocated_funds":"0.00","unique_request_id":null,"created_at":"2018-07-16T10:41:09+00:00","updated_at":"2018-07-16T10:41:09+00:00","mid_market_rate":"1.4080"}'
102
+ string: '{"id":"70e15a24-9a4c-4c56-8f68-3816965eb311","settlement_date":"2018-07-18T15:30:00+00:00","conversion_date":"2018-07-18T00:00:00+00:00","short_reference":"20180716-YTCSSY","creator_contact_id":"04d0c252-7b78-4d72-b408-df78841e3ddc","account_id":"67e1b252-40a7-454d-a097-8f77d385889d","currency_pair":"GBPUSD","status":"awaiting_funds","buy_currency":"USD","sell_currency":"GBP","client_buy_amount":"95000.00","client_sell_amount":"67476.38","fixed_side":"buy","core_rate":"1.4079","partner_rate":"","partner_buy_amount":"0.00","partner_sell_amount":"0.00","client_rate":"1.4079","deposit_required":false,"deposit_amount":"0.00","deposit_currency":"","deposit_status":"not_required","deposit_required_at":"","payment_ids":[],"unallocated_funds":"0.00","unique_request_id":null,"created_at":"2018-07-16T10:41:09+00:00","updated_at":"2018-07-16T10:41:09+00:00","mid_market_rate":"1.4080"}'
103
103
  http_version:
104
104
  recorded_at: Mon, 16 Jul 2018 10:41:09 GMT
105
105
  - request:
@@ -112,7 +112,7 @@ http_interactions:
112
112
  X-Auth-Token:
113
113
  - deadbeefdeadbeefdeadbeefdeadbeef
114
114
  User-Agent:
115
- - CurrencyCloudSDK/2.0 Ruby/0.16.2
115
+ - CurrencyCloudSDK/2.0 Ruby/1.2.1
116
116
  response:
117
117
  status:
118
118
  code: 200
@@ -8,7 +8,7 @@ http_interactions:
8
8
  string: login_id=development%40currencycloud.com&api_key=deadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef
9
9
  headers:
10
10
  User-Agent:
11
- - CurrencyCloudSDK/2.0 Ruby/0.16.2
11
+ - CurrencyCloudSDK/2.0 Ruby/1.2.1
12
12
  response:
13
13
  status:
14
14
  code: 200
@@ -58,7 +58,7 @@ http_interactions:
58
58
  X-Auth-Token:
59
59
  - deadbeefdeadbeefdeadbeefdeadbeef
60
60
  User-Agent:
61
- - CurrencyCloudSDK/2.0 Ruby/0.16.2
61
+ - CurrencyCloudSDK/2.0 Ruby/1.2.1
62
62
  response:
63
63
  status:
64
64
  code: 200
@@ -89,7 +89,7 @@ http_interactions:
89
89
  - 480d51a338b1b6d4-LHR
90
90
  body:
91
91
  encoding: UTF-8
92
- string: '{"id":"d391e0a1-2643-44ff-b063-bbe39c98a2b5","settlement_date":"2018-11-19T16:30:00+00:00","conversion_date":"2018-11-19T00:00:00+00:00","short_reference":"20181115-GHXVKW","creator_contact_id":"a66ca63f-e668-47af-8bb9-74363240d781","account_id":"72970a7c-7921-431c-b95f-3438724ba16f","currency_pair":"GBPUSD","status":"awaiting_funds","buy_currency":"USD","sell_currency":"GBP","client_buy_amount":"150.00","client_sell_amount":"106.39","fixed_side":"buy","core_rate":"1.4099","partner_rate":"","partner_status":"funds_arrived","partner_buy_amount":"0.00","partner_sell_amount":"0.00","client_rate":"1.4099","deposit_required":false,"deposit_amount":"0.00","deposit_currency":"","deposit_status":"not_required","deposit_required_at":"","payment_ids":[],"unallocated_funds":"150.00","unique_request_id":null,"created_at":"2018-11-15T14:07:58+00:00","updated_at":"2018-11-15T14:07:59+00:00","mid_market_rate":"1.4100"}'
92
+ string: '{"id":"d391e0a1-2643-44ff-b063-bbe39c98a2b5","settlement_date":"2018-11-19T16:30:00+00:00","conversion_date":"2018-11-19T00:00:00+00:00","short_reference":"20181115-GHXVKW","creator_contact_id":"a66ca63f-e668-47af-8bb9-74363240d781","account_id":"72970a7c-7921-431c-b95f-3438724ba16f","currency_pair":"GBPUSD","status":"awaiting_funds","buy_currency":"USD","sell_currency":"GBP","client_buy_amount":"150.00","client_sell_amount":"106.39","fixed_side":"buy","core_rate":"1.4099","partner_rate":"","partner_buy_amount":"0.00","partner_sell_amount":"0.00","client_rate":"1.4099","deposit_required":false,"deposit_amount":"0.00","deposit_currency":"","deposit_status":"not_required","deposit_required_at":"","payment_ids":[],"unallocated_funds":"150.00","unique_request_id":null,"created_at":"2018-11-15T14:07:58+00:00","updated_at":"2018-11-15T14:07:59+00:00","mid_market_rate":"1.4100"}'
93
93
  http_version:
94
94
  recorded_at: Wed, 28 Nov 2018 13:53:07 GMT
95
95