currency_cloud 0.16.2 → 1.2.1

Sign up to get free protection for your applications and to get access to all the features.
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