currency_cloud 0.10.0 → 0.11.2

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 +5 -5
  2. data/CONTRIBUTING.md +55 -0
  3. data/HALL_OF_FAME.md +15 -0
  4. data/LICENSE.md +1 -1
  5. data/README.md +27 -1
  6. data/lib/currency_cloud/bank_details.rb +5 -0
  7. data/lib/currency_cloud/conversion.rb +25 -0
  8. data/lib/currency_cloud/conversion_cancellation_quote_result.rb +5 -0
  9. data/lib/currency_cloud/conversion_date_change_quote_result.rb +5 -0
  10. data/lib/currency_cloud/conversion_profit_and_loss.rb +5 -0
  11. data/lib/currency_cloud/conversion_report_result.rb +5 -0
  12. data/lib/currency_cloud/conversion_split_history_result.rb +5 -0
  13. data/lib/currency_cloud/conversion_split_preview_result.rb +5 -0
  14. data/lib/currency_cloud/find_report_requests_result.rb +5 -0
  15. data/lib/currency_cloud/payment.rb +10 -0
  16. data/lib/currency_cloud/payment_confirmation_result.rb +7 -0
  17. data/lib/currency_cloud/payment_delivery_date_result.rb +5 -0
  18. data/lib/currency_cloud/payment_report_result.rb +5 -0
  19. data/lib/currency_cloud/reference.rb +6 -0
  20. data/lib/currency_cloud/report_request_result.rb +5 -0
  21. data/lib/currency_cloud/reports.rb +28 -0
  22. data/lib/currency_cloud/sender.rb +8 -0
  23. data/lib/currency_cloud/sender_details_result.rb +7 -0
  24. data/lib/currency_cloud/transaction.rb +5 -0
  25. data/lib/currency_cloud/version.rb +1 -1
  26. data/spec/integration/conversions_spec.rb +120 -0
  27. data/spec/integration/payments_spec.rb +30 -0
  28. data/spec/integration/reference_spec.rb +18 -0
  29. data/spec/integration/reports_spec.rb +98 -0
  30. data/spec/integration/transactions_spec.rb +20 -0
  31. data/spec/support/vcr_cassettes/Conversions/can_cancel_conversion/with_notes/has_a_non-empty_notes_attribute.yml +3 -3
  32. data/spec/support/vcr_cassettes/Conversions/can_cancel_conversion/without_notes/has_a_empty_notes_attribute.yml +3 -3
  33. data/spec/support/vcr_cassettes/Conversions/can_cancellation_quote.yml +96 -0
  34. data/spec/support/vcr_cassettes/Conversions/can_date_change_conversion.yml +3 -3
  35. data/spec/support/vcr_cassettes/Conversions/can_retrieve_cancellation_quote.yml +88 -0
  36. data/spec/support/vcr_cassettes/Conversions/can_retrieve_date_change_quote.yml +88 -0
  37. data/spec/support/vcr_cassettes/Conversions/can_retrieve_profit_and_loss.yml +59 -0
  38. data/spec/support/vcr_cassettes/Conversions/can_split_conversion.yml +3 -3
  39. data/spec/support/vcr_cassettes/Conversions/can_split_history.yml +88 -0
  40. data/spec/support/vcr_cassettes/Conversions/can_split_preview.yml +88 -0
  41. data/spec/support/vcr_cassettes/IBANs/can_IBANs_for_a_specific_subaccount.yml +2 -2
  42. data/spec/support/vcr_cassettes/IBANs/can_IBANs_for_subaccounts.yml +2 -2
  43. data/spec/support/vcr_cassettes/IBANs/can_find.yml +2 -2
  44. data/spec/support/vcr_cassettes/Payments/can_authorise/when_payment_ids_are_valid.yml +5 -5
  45. data/spec/support/vcr_cassettes/Payments/can_create.yml +3 -3
  46. data/spec/support/vcr_cassettes/Payments/can_get_the_submission.yml +4 -4
  47. data/spec/support/vcr_cassettes/Payments/can_retrieve_confirmation.yml +88 -0
  48. data/spec/support/vcr_cassettes/Payments/can_retrieve_payment_delivery_date.yml +109 -0
  49. data/spec/support/vcr_cassettes/Reference/can_retrieve_bank_details.yml +101 -0
  50. data/spec/support/vcr_cassettes/Reference/can_retrieve_beneficiary_required_details.yml +2 -2
  51. data/spec/support/vcr_cassettes/Reference/can_retrieve_conversion_dates.yml +2 -2
  52. data/spec/support/vcr_cassettes/Reference/can_retrieve_currencies.yml +2 -2
  53. data/spec/support/vcr_cassettes/Reference/can_retrieve_payer_required_details.yml +2 -2
  54. data/spec/support/vcr_cassettes/Reference/can_retrieve_payment_dates.yml +2 -2
  55. data/spec/support/vcr_cassettes/Reference/can_retrieve_payment_purpose_codes.yml +2 -2
  56. data/spec/support/vcr_cassettes/Reference/can_retrieve_settlement_accounts.yml +2 -2
  57. data/spec/support/vcr_cassettes/Reports/can_create_conversions_report.yml +59 -0
  58. data/spec/support/vcr_cassettes/Reports/can_create_payments_report.yml +59 -0
  59. data/spec/support/vcr_cassettes/Reports/can_find_report_requests.yml +59 -0
  60. data/spec/support/vcr_cassettes/Reports/can_retrieve_report_request.yml +59 -0
  61. data/spec/support/vcr_cassettes/Settlements/can_add_conversion.yml +1 -1
  62. data/spec/support/vcr_cassettes/Settlements/can_release.yml +1 -1
  63. data/spec/support/vcr_cassettes/Settlements/can_remove_conversion.yml +1 -1
  64. data/spec/support/vcr_cassettes/Settlements/can_unrelease.yml +1 -1
  65. data/spec/support/vcr_cassettes/Transactions/can_retrieve_sender_details.yml +49 -0
  66. data/spec/support/vcr_cassettes/Transfers/can_create.yml +2 -2
  67. data/spec/support/vcr_cassettes/Transfers/can_find.yml +3 -3
  68. data/spec/support/vcr_cassettes/Transfers/can_retrieve.yml +3 -3
  69. data/spec/support/vcr_cassettes/VirtualAccounts/can_find.yml +2 -2
  70. data/spec/support/vcr_cassettes/VirtualAccounts/can_find_VANs_for_a_specific_subaccount.yml +2 -2
  71. data/spec/support/vcr_cassettes/VirtualAccounts/can_find_VANs_for_subaccounts.yml +2 -2
  72. metadata +70 -21
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'spec_helper'
2
4
 
3
5
  describe 'Payments', vcr: true do
@@ -64,4 +66,32 @@ describe 'Payments', vcr: true do
64
66
  expect(authorisation.updated).to eq true
65
67
  end
66
68
  end
69
+
70
+ it "can retrieve #confirmation" do
71
+ payment = CurrencyCloud::Payment.retrieve('fda8cf13-ccf6-4423-8b0f-1443e3459ce0')
72
+ payment_confirmation_result = payment.confirmation
73
+
74
+ expect(payment_confirmation_result.id).to eq('5d9c99a7-1522-48b1-9221-69e929eb3807')
75
+ expect(payment_confirmation_result.payment_id).to eq('fda8cf13-ccf6-4423-8b0f-1443e3459ce0')
76
+ expect(payment_confirmation_result.account_id).to eq('bf5b1007-b364-43cc-b3d6-9f2d1be75297')
77
+ expect(payment_confirmation_result.short_reference).to eq('PC-9727672-HCPLFC')
78
+ expect(payment_confirmation_result.status).to eq('completed')
79
+ expect(payment_confirmation_result.confirmation_url).to eq('https://ccycloud-payment-confirmations-prod-demo1.s3.eu-west-1.amazonaws.com/payment_confirmations/5d9c99a7-1522-48b1-9221-69e929eb3807/181107-VTCWNQ001.pdf?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=cred123abc&X-Amz-Date=20181130T080707Z&X-Amz-Expires=172800&X-Amz-SignedHeaders=host&X-Amz-Security-Token=token123abc&X-Amz-Signature=signature123abc')
80
+ expect(payment_confirmation_result.created_at).to eq('2018-11-30T07:57:24+00:00')
81
+ expect(payment_confirmation_result.updated_at).to eq('2018-11-30T07:57:24+00:00')
82
+ expect(payment_confirmation_result.expires_at).to eq('2018-12-02T00:00:00+00:00')
83
+ end
84
+
85
+
86
+ it "can retrieve #payment_delivery_date" do
87
+ result = CurrencyCloud::Payment.payment_delivery_date(payment_date: '2019-06-07', payment_type: 'regular', currency: 'GBP', bank_country: 'GB')
88
+
89
+ expect(result).to_not be_nil
90
+ expect(result.payment_date).to eq('2019-06-07')
91
+ expect(result.payment_delivery_date).to eq('2019-06-07T00:00:00+00:00')
92
+ expect(result.payment_cutoff_time).to eq('2019-06-07T14:30:00+00:00')
93
+ expect(result.payment_type).to eq('regular')
94
+ expect(result.currency).to eq('GBP')
95
+ expect(result.bank_country).to eq('GB')
96
+ end
67
97
  end
@@ -77,4 +77,22 @@ describe 'Reference', vcr: true do
77
77
  expect(settlement_account.bank_account_holder_name).to eq('The Currency Cloud GBP - Client Seg A/C')
78
78
  expect(settlement_account.bank_address).to be_empty
79
79
  end
80
+
81
+ it 'can retrieve #bank_details' do
82
+ details = CurrencyCloud::Reference.bank_details(identifier_type: 'iban', identifier_value: 'GB19TCCL00997901654515')
83
+ expect(details).to_not be_nil
84
+ expect(details.identifier_value).to eq('GB19TCCL00997901654515')
85
+ expect(details.identifier_type).to eq('iban')
86
+ expect(details.account_number).to eq('GB19TCCL00997901654515')
87
+ expect(details.bic_swift).to eq('TCCLGB22XXX')
88
+ expect(details.bank_name).to eq('THE CURRENCY CLOUD LIMITED')
89
+ expect(details.bank_branch).to eq('')
90
+ expect(details.bank_address).to eq('12 STEWARD STREET THE STEWARD BUILDING FLOOR 0')
91
+ expect(details.bank_city).to eq('LONDON')
92
+ expect(details.bank_state).to eq('LONDON')
93
+ expect(details.bank_post_code).to eq('E1 6FQ')
94
+ expect(details.bank_country).to eq('UNITED KINGDOM')
95
+ expect(details.bank_country_ISO).to eq('GB')
96
+ expect(details.currency).to be_nil
97
+ end
80
98
  end
@@ -0,0 +1,98 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'spec_helper'
4
+
5
+ describe 'Reports', vcr: true do
6
+
7
+
8
+ it "can #create_conversions_report" do
9
+ conversions_report = CurrencyCloud::Reports.create_conversions_report
10
+
11
+ expect(conversions_report.id).to eql('2f06edb7-7ff7-4370-9c32-0512ed1825ae')
12
+ expect(conversions_report.short_reference).to eql('RP-8675452-YNXMLJ')
13
+ expect(conversions_report.description).to eql(nil)
14
+ expect(conversions_report.search_params['scope']).to eql('own')
15
+ expect(conversions_report.report_type).to eql('conversion')
16
+ expect(conversions_report.status).to eql('processing')
17
+ expect(conversions_report.failure_reason).to eql(nil)
18
+ expect(conversions_report.expiration_date).to eql(nil)
19
+ expect(conversions_report.report_url).to eql('')
20
+ expect(conversions_report.account_id).to eql('72970a7c-7921-431c-b95f-3438724ba16f')
21
+ expect(conversions_report.contact_id).to eql('a66ca63f-e668-47af-8bb9-74363240d781')
22
+ expect(conversions_report.created_at).to eql('2018-11-15T14:08:19+00:00')
23
+ expect(conversions_report.updated_at).to eql('2018-11-15T14:08:19+00:00')
24
+ end
25
+
26
+ it "can #create_payments_report" do
27
+ payments_report = CurrencyCloud::Reports.create_payments_report
28
+
29
+ expect(payments_report.id).to eql('6e3b3230-5cd8-420e-ae52-c6052d55e6fb')
30
+ expect(payments_report.short_reference).to eql('RP-3199188-JPZZXS')
31
+ expect(payments_report.description).to eql(nil)
32
+ expect(payments_report.search_params['scope']).to eql('own')
33
+ expect(payments_report.report_type).to eql('payment')
34
+ expect(payments_report.status).to eql('processing')
35
+ expect(payments_report.failure_reason).to eql(nil)
36
+ expect(payments_report.expiration_date).to eql(nil)
37
+ expect(payments_report.report_url).to eql('')
38
+ expect(payments_report.account_id).to eql('72970a7c-7921-431c-b95f-3438724ba16f')
39
+ expect(payments_report.contact_id).to eql('a66ca63f-e668-47af-8bb9-74363240d781')
40
+ expect(payments_report.created_at).to eql('2018-11-15T14:08:20+00:00')
41
+ expect(payments_report.updated_at).to eql('2018-11-15T14:08:20+00:00')
42
+ end
43
+
44
+ it "can #find_report_requests" do
45
+ report_requests_result = CurrencyCloud::Reports.find_report_requests
46
+
47
+ expect(report_requests_result.report_requests[0]['id']).to eql('075ce584-b977-4538-a524-16b759277d66')
48
+ expect(report_requests_result.report_requests[0]['short_reference']).to eql('RP-5279826-KZJHNX')
49
+ expect(report_requests_result.report_requests[0]['description']).to eql(nil)
50
+ expect(report_requests_result.report_requests[0]['search_params']['buy_currency']).to eql('EUR')
51
+ expect(report_requests_result.report_requests[0]['search_params']['sell_currency']).to eql('GBP')
52
+ expect(report_requests_result.report_requests[0]['search_params']['scope']).to eql('own')
53
+ expect(report_requests_result.report_requests[0]['report_type']).to eql('conversion')
54
+ expect(report_requests_result.report_requests[0]['status']).to eql('completed')
55
+ expect(report_requests_result.report_requests[0]['failure_reason']).to eql(nil)
56
+ expect(report_requests_result.report_requests[0]['expiration_date']).to eql('2018-10-18T00:00:00+00:00')
57
+ expect(report_requests_result.report_requests[0]['report_url']).to eql('https://ccycloud-reports-prod-demo1-customer-reporting.s3.eu-west-1.amazonaws.com/customer_reporting/075ce584-b977-4538-a524-16b759277d66/conversion_report_1610201808101539677748.csv?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=Acredentialsabc&X-Amz-Date=20181203T081009Z&X-Amz-Expires=172800&X-Amz-SignedHeaders=host&X-Amz-Security-Token=tokenabc&X-Amz-Signature=signatureabc')
58
+ expect(report_requests_result.report_requests[0]['account_id']).to eql('bf5b1007-b364-43cc-b3d6-9f2d1be75297')
59
+ expect(report_requests_result.report_requests[0]['contact_id']).to eql('ba33d76a-4a7f-4cb3-afa8-5678d5bc712a')
60
+ expect(report_requests_result.report_requests[0]['created_at']).to eql('2018-10-16T08:15:46+00:00')
61
+ expect(report_requests_result.report_requests[0]['updated_at']).to eql('2018-10-16T08:15:48+00:00')
62
+
63
+ expect(report_requests_result.report_requests[1]['id']).to eql('f196bff2-d757-48b1-8ff9-91d7f4a6722b')
64
+ expect(report_requests_result.report_requests[1]['short_reference']).to eql('RP-6268341-YWPLYH')
65
+ expect(report_requests_result.report_requests[1]['description']).to eql('Test Report for Payment')
66
+ expect(report_requests_result.report_requests[1]['search_params']['currency']).to eql('EUR')
67
+ expect(report_requests_result.report_requests[1]['search_params']['scope']).to eql('own')
68
+ expect(report_requests_result.report_requests[1]['report_type']).to eql('payment')
69
+ expect(report_requests_result.report_requests[1]['status']).to eql('completed')
70
+ expect(report_requests_result.report_requests[1]['failure_reason']).to eql(nil)
71
+ expect(report_requests_result.report_requests[1]['expiration_date']).to eql('2018-10-28T00:00:00+00:00')
72
+ expect(report_requests_result.report_requests[1]['report_url']).to eql('https://ccycloud-reports-prod-demo1-customer-reporting.s3.eu-west-1.amazonaws.com/customer_reporting/f196bff2-d757-48b1-8ff9-91d7f4a6722b/payment_report_2610201807101540538496.csv?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=credentialsabc&X-Amz-Date=20181203T081010Z&X-Amz-Expires=172800&X-Amz-SignedHeaders=host&X-Amz-Security-Token=tokenabc&X-Amz-Signature=signatureabc')
73
+ expect(report_requests_result.report_requests[1]['account_id']).to eql('bf5b1007-b364-43cc-b3d6-9f2d1be75297')
74
+ expect(report_requests_result.report_requests[1]['contact_id']).to eql('ba33d76a-4a7f-4cb3-afa8-5678d5bc712a')
75
+ expect(report_requests_result.report_requests[1]['created_at']).to eql('2018-10-26T07:21:32+00:00')
76
+ expect(report_requests_result.report_requests[1]['updated_at']).to eql('2018-10-26T07:21:36+00:00')
77
+ end
78
+
79
+ it "can #retrieve_report_request" do
80
+ report_request = CurrencyCloud::Reports.retrieve_report_request('075ce584-b977-4538-a524-16b759277d66')
81
+
82
+ expect(report_request.id).to eql('075ce584-b977-4538-a524-16b759277d66')
83
+ expect(report_request.short_reference).to eql('RP-5279826-KZJHNX')
84
+ expect(report_request.description).to eql(nil)
85
+ expect(report_request.search_params['buy_currency']).to eql('EUR')
86
+ expect(report_request.search_params['sell_currency']).to eql('GBP')
87
+ expect(report_request.search_params['scope']).to eql('own')
88
+ expect(report_request.report_type).to eql('conversion')
89
+ expect(report_request.status).to eql('completed')
90
+ expect(report_request.failure_reason).to eql(nil)
91
+ expect(report_request.expiration_date).to eql('2018-10-18T00:00:00+00:00')
92
+ expect(report_request.report_url).to eql('https://ccycloud-reports-prod-demo1-customer-reporting.s3.eu-west-1.amazonaws.com/customer_reporting/075ce584-b977-4538-a524-16b759277d66/conversion_report_1610201808101539677748.csv?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=Acredentialsabc&X-Amz-Date=20181203T081009Z&X-Amz-Expires=172800&X-Amz-SignedHeaders=host&X-Amz-Security-Token=tokenabc&X-Amz-Signature=signatureabc')
93
+ expect(report_request.account_id).to eql('bf5b1007-b364-43cc-b3d6-9f2d1be75297')
94
+ expect(report_request.contact_id).to eql('ba33d76a-4a7f-4cb3-afa8-5678d5bc712a')
95
+ expect(report_request.created_at).to eql('2018-10-16T08:15:46+00:00')
96
+ expect(report_request.updated_at).to eql('2018-10-16T08:15:48+00:00')
97
+ end
98
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'spec_helper'
4
+
5
+ describe 'Transactions', vcr: true do
6
+ it 'can #retrieve_sender_details' do
7
+ sender_details = CurrencyCloud::Transaction.retrieve_sender_details('e68301d3-5b04-4c1d-8f8b-13a9b8437040')
8
+
9
+ expect(sender_details.id).to eq('e68301d3-5b04-4c1d-8f8b-13a9b8437040')
10
+ expect(sender_details.amount).to eq('1701.51')
11
+ expect(sender_details.currency).to eq('EUR')
12
+ expect(sender_details.additional_information).to eq('USTRD-0001')
13
+ expect(sender_details.value_date).to eq('2018-07-04T00:00:00+00:00')
14
+ expect(sender_details.sender).to eq('FR7615589290001234567890113, CMBRFR2BARK, Debtor, FR, Centre ville')
15
+ expect(sender_details.receiving_account_number).to eq(nil)
16
+ expect(sender_details.receiving_account_iban).to eq('GB99OXPH94665099600083')
17
+ expect(sender_details.created_at).to eq('2018-07-04T14:57:38+00:00')
18
+ expect(sender_details.updated_at).to eq('2018-07-04T14:57:39+00:00')
19
+ end
20
+ 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.9.0
11
+ - CurrencyCloudSDK/2.0 Ruby/0.11.2
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.9.0
63
+ - CurrencyCloudSDK/2.0 Ruby/0.11.2
64
64
  response:
65
65
  status:
66
66
  code: 200
@@ -112,7 +112,7 @@ http_interactions:
112
112
  X-Auth-Token:
113
113
  - deadbeefdeadbeefdeadbeefdeadbeef
114
114
  User-Agent:
115
- - CurrencyCloudSDK/2.0 Ruby/0.9.0
115
+ - CurrencyCloudSDK/2.0 Ruby/0.11.2
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.9.0
11
+ - CurrencyCloudSDK/2.0 Ruby/0.11.2
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.9.0
63
+ - CurrencyCloudSDK/2.0 Ruby/0.11.2
64
64
  response:
65
65
  status:
66
66
  code: 200
@@ -112,7 +112,7 @@ http_interactions:
112
112
  X-Auth-Token:
113
113
  - deadbeefdeadbeefdeadbeefdeadbeef
114
114
  User-Agent:
115
- - CurrencyCloudSDK/2.0 Ruby/0.9.0
115
+ - CurrencyCloudSDK/2.0 Ruby/0.11.2
116
116
  response:
117
117
  status:
118
118
  code: 200
@@ -0,0 +1,96 @@
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
+ - Thu, 29 Nov 2018 09:20:50 GMT
19
+ Content-Type:
20
+ - application/json;charset=utf-8
21
+ Transfer-Encoding:
22
+ - chunked
23
+ Connection:
24
+ - keep-alive
25
+ Set-Cookie:
26
+ - __cfduid=d851b90b699937dafa8eb1e13aa0701a41543483248; expires=Fri, 29-Nov-19
27
+ 09:20:48 GMT; path=/; domain=.currencycloud.com; HttpOnly
28
+ Access-Control-Allow-Origin:
29
+ - '*'
30
+ X-Request-Id:
31
+ - d6fa2319-aefb-45bf-bdb6-e0698f1de5d1
32
+ Access-Control-Allow-Methods:
33
+ - POST
34
+ X-Content-Type-Options:
35
+ - nosniff
36
+ Vary:
37
+ - Origin
38
+ Access-Control-Allow-Headers:
39
+ - authorization,Access-Control-Allow-Origin,Content-Type,SOAPAction,X-Auth-Token,Origin,Authority
40
+ Expect-Ct:
41
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
42
+ Server:
43
+ - cloudflare
44
+ Cf-Ray:
45
+ - 4814001e6ae6b6ce-LHR
46
+ body:
47
+ encoding: UTF-8
48
+ string: '{"auth_token":"deadbeefdeadbeefdeadbeefdeadbeef"}'
49
+ http_version:
50
+ recorded_at: Thu, 29 Nov 2018 09:20:50 GMT
51
+ - request:
52
+ method: post
53
+ uri: https://devapi.currencycloud.com/v2/conversions/create
54
+ body:
55
+ encoding: UTF-8
56
+ string: buy_currency=USD&sell_currency=GBP&fixed_side=buy&amount=150&reason=SDK%20conversion%20testing&term_agreement=true
57
+ headers:
58
+ X-Auth-Token:
59
+ - deadbeefdeadbeefdeadbeefdeadbeef
60
+ User-Agent:
61
+ - CurrencyCloudSDK/2.0 Ruby/0.11.2
62
+ response:
63
+ status:
64
+ code: 200
65
+ message: OK
66
+ headers:
67
+ Date:
68
+ - Wed, 28 Nov 2018 13:53:07 GMT
69
+ Content-Type:
70
+ - application/json
71
+ Content-Length:
72
+ - '176'
73
+ Connection:
74
+ - keep-alive
75
+ Set-Cookie:
76
+ - __cfduid=d2c823694250189fcdf9007608088530a1543413187; expires=Thu, 28-Nov-19
77
+ 13:53:07 GMT; path=/; domain=.currencycloud.com; HttpOnly
78
+ X-Request-Id:
79
+ - e4d20626-3044-4dd9-9c25-3dc3e2879393
80
+ X-Content-Type-Options:
81
+ - nosniff
82
+ Vary:
83
+ - Origin
84
+ Expect-Ct:
85
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
86
+ Server:
87
+ - cloudflare
88
+ Cf-Ray:
89
+ - 480d51a338b1b6d4-LHR
90
+ body:
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"}'
93
+ http_version:
94
+ recorded_at: Wed, 28 Nov 2018 13:53:07 GMT
95
+
96
+ recorded_with: VCR 3.0.3
@@ -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.9.0
11
+ - CurrencyCloudSDK/2.0 Ruby/0.11.2
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.9.0
63
+ - CurrencyCloudSDK/2.0 Ruby/0.11.2
64
64
  response:
65
65
  status:
66
66
  code: 200
@@ -112,7 +112,7 @@ http_interactions:
112
112
  X-Auth-Token:
113
113
  - deadbeefdeadbeefdeadbeefdeadbeef
114
114
  User-Agent:
115
- - CurrencyCloudSDK/2.0 Ruby/0.9.0
115
+ - CurrencyCloudSDK/2.0 Ruby/0.11.2
116
116
  response:
117
117
  status:
118
118
  code: 200
@@ -0,0 +1,88 @@
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
+ - Thu, 29 Nov 2018 09:20:50 GMT
19
+ Content-Type:
20
+ - application/json;charset=utf-8
21
+ Transfer-Encoding:
22
+ - chunked
23
+ Connection:
24
+ - keep-alive
25
+ body:
26
+ encoding: UTF-8
27
+ string: '{"auth_token":"deadbeefdeadbeefdeadbeefdeadbeef"}'
28
+ http_version:
29
+ recorded_at: Thu, 29 Nov 2018 09:20:50 GMT
30
+ - request:
31
+ method: post
32
+ uri: https://devapi.currencycloud.com/v2/conversions/create
33
+ body:
34
+ encoding: UTF-8
35
+ string: buy_currency=USD&sell_currency=GBP&fixed_side=buy&amount=150&reason=SDK%20conversion%20testing&term_agreement=true
36
+ headers:
37
+ X-Auth-Token:
38
+ - deadbeefdeadbeefdeadbeefdeadbeef
39
+ User-Agent:
40
+ - CurrencyCloudSDK/2.0 Ruby/0.11.2
41
+ response:
42
+ status:
43
+ code: 200
44
+ message: OK
45
+ headers:
46
+ Date:
47
+ - Wed, 28 Nov 2018 13:53:07 GMT
48
+ Content-Type:
49
+ - application/json
50
+ Content-Length:
51
+ - '176'
52
+ Connection:
53
+ - keep-alive
54
+ body:
55
+ encoding: UTF-8
56
+ 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"}'
57
+ http_version:
58
+ recorded_at: Wed, 28 Nov 2018 13:53:07 GMT
59
+ - request:
60
+ method: get
61
+ uri: https://devapi.currencycloud.com/v2/conversions/d391e0a1-2643-44ff-b063-bbe39c98a2b5/cancellation_quote
62
+ body:
63
+ encoding: US-ASCII
64
+ string: ''
65
+ headers:
66
+ X-Auth-Token:
67
+ - deadbeefdeadbeefdeadbeefdeadbeef
68
+ User-Agent:
69
+ - CurrencyCloudSDK/2.0 Ruby/0.11.2
70
+ response:
71
+ status:
72
+ code: 200
73
+ message: OK
74
+ headers:
75
+ Date:
76
+ - Thu, 29 Nov 2018 14:33:48 GMT
77
+ Content-Type:
78
+ - application/json
79
+ Transfer-Encoding:
80
+ - chunked
81
+ Connection:
82
+ - keep-alive
83
+ body:
84
+ encoding: UTF-8
85
+ string: '{"amount":"-0.01","currency":"GBP","event_date_time":"2018-11-15T14:08:07+00:00"}'
86
+ http_version:
87
+ recorded_at: Thu, 29 Nov 2018 14:33:48 GMT
88
+ recorded_with: VCR 3.0.3