currency_cloud 0.9.0 → 0.10.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (84) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +31 -0
  3. data/.rubocop.yml +6 -0
  4. data/.travis.yml +2 -4
  5. data/Gemfile +0 -3
  6. data/LICENSE.md +16 -17
  7. data/README.md +5 -3
  8. data/Rakefile +12 -12
  9. data/currency_cloud.gemspec +9 -9
  10. data/examples/server.rb +7 -7
  11. data/lib/currency_cloud/client.rb +5 -1
  12. data/lib/currency_cloud/conversion.rb +15 -0
  13. data/lib/currency_cloud/conversion_cancel_result.rb +5 -0
  14. data/lib/currency_cloud/conversion_date_change_result.rb +5 -0
  15. data/lib/currency_cloud/conversion_split_result.rb +5 -0
  16. data/lib/currency_cloud/errors/api_error.rb +2 -2
  17. data/lib/currency_cloud/errors/error_utils.rb +4 -4
  18. data/lib/currency_cloud/errors/unexpected_error.rb +3 -3
  19. data/lib/currency_cloud/iban.rb +22 -0
  20. data/lib/currency_cloud/ibans.rb +6 -0
  21. data/lib/currency_cloud/payer_required_details.rb +5 -0
  22. data/lib/currency_cloud/payment.rb +10 -0
  23. data/lib/currency_cloud/payment_authorisation_result.rb +5 -0
  24. data/lib/currency_cloud/payment_dates.rb +5 -0
  25. data/lib/currency_cloud/payment_submission.rb +5 -0
  26. data/lib/currency_cloud/purpose_code.rb +5 -0
  27. data/lib/currency_cloud/reference.rb +20 -5
  28. data/lib/currency_cloud/request_handler.rb +1 -3
  29. data/lib/currency_cloud/response_handler.rb +7 -7
  30. data/lib/currency_cloud/session.rb +2 -3
  31. data/lib/currency_cloud/transfer.rb +8 -0
  32. data/lib/currency_cloud/version.rb +1 -1
  33. data/lib/currency_cloud/virtual_account.rb +22 -0
  34. data/lib/currency_cloud/virtual_accounts.rb +6 -0
  35. data/spec/currency_cloud_spec.rb +9 -9
  36. data/spec/integration/authentication_spec.rb +2 -2
  37. data/spec/integration/conversions_spec.rb +94 -0
  38. data/spec/integration/error_utils_spec.rb +12 -12
  39. data/spec/integration/errors_spec.rb +84 -102
  40. data/spec/integration/ibans_spec.rb +42 -0
  41. data/spec/integration/payment_spec.rb +31 -0
  42. data/spec/integration/payments_spec.rb +67 -0
  43. data/spec/integration/reference_spec.rb +37 -14
  44. data/spec/integration/transfers_spec.rb +39 -0
  45. data/spec/integration/virtual_accounts_spec.rb +37 -0
  46. data/spec/spec_helper.rb +9 -1
  47. data/spec/support/vcr_cassettes/Authentication/can_be_closed.yml +1 -1
  48. data/spec/support/vcr_cassettes/Authentication/handles_session_timeout_error.yml +1 -1
  49. data/spec/support/vcr_cassettes/Authentication/happens_lazily.yml +1 -1
  50. data/spec/support/vcr_cassettes/Conversions/can_cancel_conversion/with_notes/has_a_non-empty_notes_attribute.yml +158 -0
  51. data/spec/support/vcr_cassettes/Conversions/can_cancel_conversion/without_notes/has_a_empty_notes_attribute.yml +157 -0
  52. data/spec/support/vcr_cassettes/Conversions/can_date_change_conversion.yml +157 -0
  53. data/spec/support/vcr_cassettes/Conversions/can_split_conversion.yml +157 -0
  54. data/spec/support/vcr_cassettes/Error/contains_full_details_for_api_error.yml +1 -1
  55. data/spec/support/vcr_cassettes/Error/is_raised_on_a_bad_request.yml +1 -1
  56. data/spec/support/vcr_cassettes/Error/is_raised_on_a_forbidden_request.yml +1 -1
  57. data/spec/support/vcr_cassettes/Error/is_raised_on_an_internal_server_error.yml +1 -1
  58. data/spec/support/vcr_cassettes/Error/is_raised_on_incorrect_authentication_details.yml +1 -1
  59. data/spec/support/vcr_cassettes/Error/is_raised_when_too_many_requests_have_been_issued.yml +1 -1
  60. data/spec/support/vcr_cassettes/IBANs/can_IBANs_for_a_specific_subaccount.yml +109 -0
  61. data/spec/support/vcr_cassettes/IBANs/can_IBANs_for_subaccounts.yml +108 -0
  62. data/spec/support/vcr_cassettes/IBANs/can_find.yml +114 -0
  63. data/spec/support/vcr_cassettes/Payments/can_authorise/when_payment_ids_are_valid.yml +263 -0
  64. data/spec/support/vcr_cassettes/Payments/can_create.yml +155 -0
  65. data/spec/support/vcr_cassettes/Payments/can_get_the_submission.yml +205 -0
  66. data/spec/support/vcr_cassettes/Reference/can_retrieve_beneficiary_required_details.yml +77 -12
  67. data/spec/support/vcr_cassettes/Reference/can_retrieve_conversion_dates.yml +183 -22
  68. data/spec/support/vcr_cassettes/Reference/can_retrieve_currencies.yml +110 -22
  69. data/spec/support/vcr_cassettes/Reference/can_retrieve_payer_required_details.yml +103 -0
  70. data/spec/support/vcr_cassettes/Reference/can_retrieve_payment_dates.yml +110 -0
  71. data/spec/support/vcr_cassettes/Reference/can_retrieve_payment_purpose_codes.yml +128 -0
  72. data/spec/support/vcr_cassettes/Reference/can_retrieve_settlement_accounts.yml +76 -11
  73. data/spec/support/vcr_cassettes/Settlements/can_add_conversion.yml +56 -6
  74. data/spec/support/vcr_cassettes/Settlements/can_release.yml +55 -5
  75. data/spec/support/vcr_cassettes/Settlements/can_remove_conversion.yml +55 -5
  76. data/spec/support/vcr_cassettes/Settlements/can_unrelease.yml +55 -5
  77. data/spec/support/vcr_cassettes/Transfers/can_create.yml +101 -0
  78. data/spec/support/vcr_cassettes/Transfers/can_find.yml +151 -0
  79. data/spec/support/vcr_cassettes/Transfers/can_retrieve.yml +151 -0
  80. data/spec/support/vcr_cassettes/VirtualAccounts/can_find.yml +108 -0
  81. data/spec/support/vcr_cassettes/VirtualAccounts/can_find_VANs_for_a_specific_subaccount.yml +108 -0
  82. data/spec/support/vcr_cassettes/VirtualAccounts/can_find_VANs_for_subaccounts.yml +108 -0
  83. metadata +82 -20
  84. data/Guardfile +0 -14
@@ -1,5 +1,53 @@
1
1
  ---
2
2
  http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://devapi.currencycloud.com/v2/authenticate/api
6
+ body:
7
+ encoding: US-ASCII
8
+ string: login_id=development%40currencycloud.com&api_key=deadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef
9
+ headers:
10
+ User-Agent:
11
+ - CurrencyCloudSDK/2.0 Ruby/0.9.0
12
+ response:
13
+ status:
14
+ code: 200
15
+ message: OK
16
+ headers:
17
+ Date:
18
+ - Mon, 16 Jul 2018 08:20:17 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=psrM5eI1i6lNEU9SJhYiTKsd2Se5u57EchbHNtI2pwh3qwhd3q5bgl1FJJLqWEGkYnnm2BfPaK+JRFrIErOqceHLykU1Lb90VJxzFsnMHIyeNnN/3Z3qMp4XFQoV; Expires=Mon, 23 Jul 2018 08:20:15 GMT; Path=/
27
+ - __cfduid=dd6d2422ea8d120d58f413c77030c28701531729215; expires=Tue, 16-Jul-19 08:20:15 GMT; path=/; domain=.currencycloud.com; HttpOnly
28
+ Access-Control-Allow-Origin:
29
+ - "*"
30
+ X-Request-Id:
31
+ - 6d7d67a3-ab28-4cd7-b1c3-efa59b54b2d5
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
+ - 43b30c6c4bd91383-LHR
46
+ body:
47
+ encoding: US-ASCII
48
+ string: '{"auth_token":"deadbeefdeadbeefdeadbeefdeadbeef"}'
49
+ http_version:
50
+ recorded_at: Mon, 16 Jul 2018 08:20:17 GMT
3
51
  - request:
4
52
  method: get
5
53
  uri: https://devapi.currencycloud.com/v2/reference/conversion_dates?conversion_pair=GBPUSD
@@ -8,39 +56,152 @@ http_interactions:
8
56
  string: ''
9
57
  headers:
10
58
  X-Auth-Token:
11
- - 1c9da5726314246acfb09ec5651307a5
59
+ - deadbeefdeadbeefdeadbeefdeadbeef
60
+ User-Agent:
61
+ - CurrencyCloudSDK/2.0 Ruby/0.9.0
12
62
  response:
13
63
  status:
14
64
  code: 200
15
65
  message: OK
16
66
  headers:
17
- Server:
18
- - nginx
19
67
  Date:
20
- - Wed, 29 Apr 2015 21:04:08 GMT
68
+ - Mon, 16 Jul 2018 08:20:17 GMT
21
69
  Content-Type:
22
70
  - application/json;charset=utf-8
23
- Content-Length:
24
- - '845'
71
+ Transfer-Encoding:
72
+ - chunked
25
73
  Connection:
26
74
  - keep-alive
75
+ Set-Cookie:
76
+ - AWSALB=i6eeUC7XaPyqqW/MiEtAUQf7FOU/Rxj5MPq6ym0BVFHuovTzsICzzI2e2sV68UZB1x0A3C+CM73iQO4PRllMbaogv+ZDHeuGql8jfqAi9tqyiAifGk+nJWrKqugY; Expires=Mon, 23 Jul 2018 08:20:17 GMT; Path=/
77
+ - __cfduid=dc9e86e886e9a1ec2957f398c2e6887ef1531729217; expires=Tue, 16-Jul-19 08:20:17 GMT; path=/; domain=.currencycloud.com; HttpOnly
78
+ Access-Control-Allow-Origin:
79
+ - "*"
27
80
  X-Request-Id:
28
- - '2775201681275056976'
81
+ - 66f8e26d-5197-4794-ae7b-7e86cf4b4478
82
+ Access-Control-Allow-Methods:
83
+ - GET
29
84
  X-Content-Type-Options:
30
85
  - nosniff
86
+ Vary:
87
+ - Origin
88
+ Access-Control-Allow-Headers:
89
+ - authorization,Access-Control-Allow-Origin,Content-Type,SOAPAction,X-Auth-Token,Origin,Authority
90
+ Expect-Ct:
91
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
92
+ Server:
93
+ - cloudflare
94
+ Cf-Ray:
95
+ - 43b30c778e33137d-LHR
31
96
  body:
32
- encoding: UTF-8
33
- string: '{"invalid_conversion_dates":{"2015-05-02":"No trading on Saturday","2015-05-03":"No
34
- trading on Sunday","2015-05-04":"Early May bank holiday","2015-05-09":"No
35
- trading on Saturday","2015-05-10":"No trading on Sunday","2015-05-16":"No
36
- trading on Saturday","2015-05-17":"No trading on Sunday","2015-05-23":"No
37
- trading on Saturday","2015-05-24":"No trading on Sunday","2015-05-25":"Spring
38
- bank holiday","2015-05-30":"No trading on Saturday","2015-05-31":"No trading
39
- on Sunday","2015-06-06":"No trading on Saturday","2015-06-07":"No trading
40
- on Sunday","2015-06-13":"No trading on Saturday","2015-06-14":"No trading
41
- on Sunday","2015-06-20":"No trading on Saturday","2015-06-21":"No trading
42
- on Sunday","2015-06-27":"No trading on Saturday","2015-06-28":"No trading
43
- on Sunday"},"first_conversion_date":"2015-04-30","default_conversion_date":"2015-04-30"}'
44
- http_version:
45
- recorded_at: Wed, 29 Apr 2015 21:04:08 GMT
46
- recorded_with: VCR 2.9.3
97
+ encoding: US-ASCII
98
+ string: '{"invalid_conversion_dates":{"2018-07-21":"No trading on Saturday","2018-07-22":"No
99
+ trading on Sunday","2018-07-28":"No trading on Saturday","2018-07-29":"No
100
+ trading on Sunday","2018-08-04":"No trading on Saturday","2018-08-05":"No
101
+ trading on Sunday","2018-08-11":"No trading on Saturday","2018-08-12":"No
102
+ trading on Sunday","2018-08-18":"No trading on Saturday","2018-08-19":"No
103
+ trading on Sunday","2018-08-25":"No trading on Saturday","2018-08-26":"No
104
+ trading on Sunday","2018-08-27":"Public Holiday","2018-09-01":"No trading
105
+ on Saturday","2018-09-02":"No trading on Sunday","2018-09-03":"Public Holiday","2018-09-08":"No
106
+ trading on Saturday","2018-09-09":"No trading on Sunday","2018-09-15":"No
107
+ trading on Saturday","2018-09-16":"No trading on Sunday","2018-09-22":"No
108
+ trading on Saturday","2018-09-23":"No trading on Sunday","2018-09-29":"No
109
+ trading on Saturday","2018-09-30":"No trading on Sunday","2018-10-06":"No
110
+ trading on Saturday","2018-10-07":"No trading on Sunday","2018-10-08":"Public
111
+ Holiday","2018-10-13":"No trading on Saturday","2018-10-14":"No trading on
112
+ Sunday","2018-10-20":"No trading on Saturday","2018-10-21":"No trading on
113
+ Sunday","2018-10-27":"No trading on Saturday","2018-10-28":"No trading on
114
+ Sunday","2018-11-03":"No trading on Saturday","2018-11-04":"No trading on
115
+ Sunday","2018-11-10":"No trading on Saturday","2018-11-11":"No trading on
116
+ Sunday","2018-11-12":"Public Holiday","2018-11-17":"No trading on Saturday","2018-11-18":"No
117
+ trading on Sunday","2018-11-22":"Public Holiday","2018-11-24":"No trading
118
+ on Saturday","2018-11-25":"No trading on Sunday","2018-12-01":"No trading
119
+ on Saturday","2018-12-02":"No trading on Sunday","2018-12-08":"No trading
120
+ on Saturday","2018-12-09":"No trading on Sunday","2018-12-15":"No trading
121
+ on Saturday","2018-12-16":"No trading on Sunday","2018-12-22":"No trading
122
+ on Saturday","2018-12-23":"No trading on Sunday","2018-12-25":"Public Holiday","2018-12-26":"Public
123
+ Holiday","2018-12-29":"No trading on Saturday","2018-12-30":"No trading on
124
+ Sunday","2019-01-05":"No trading on Saturday","2019-01-06":"No trading on
125
+ Sunday","2019-01-12":"No trading on Saturday","2019-01-13":"No trading on
126
+ Sunday","2019-01-19":"No trading on Saturday","2019-01-20":"No trading on
127
+ Sunday","2019-01-26":"No trading on Saturday","2019-01-27":"No trading on
128
+ Sunday","2019-02-02":"No trading on Saturday","2019-02-03":"No trading on
129
+ Sunday","2019-02-09":"No trading on Saturday","2019-02-10":"No trading on
130
+ Sunday","2019-02-16":"No trading on Saturday","2019-02-17":"No trading on
131
+ Sunday","2019-02-23":"No trading on Saturday","2019-02-24":"No trading on
132
+ Sunday","2019-03-02":"No trading on Saturday","2019-03-03":"No trading on
133
+ Sunday","2019-03-09":"No trading on Saturday","2019-03-10":"No trading on
134
+ Sunday","2019-03-16":"No trading on Saturday","2019-03-17":"No trading on
135
+ Sunday","2019-03-23":"No trading on Saturday","2019-03-24":"No trading on
136
+ Sunday","2019-03-30":"No trading on Saturday","2019-03-31":"No trading on
137
+ Sunday","2019-04-06":"No trading on Saturday","2019-04-07":"No trading on
138
+ Sunday","2019-04-13":"No trading on Saturday","2019-04-14":"No trading on
139
+ Sunday","2019-04-20":"No trading on Saturday","2019-04-21":"No trading on
140
+ Sunday","2019-04-27":"No trading on Saturday","2019-04-28":"No trading on
141
+ Sunday","2019-05-04":"No trading on Saturday","2019-05-05":"No trading on
142
+ Sunday","2019-05-11":"No trading on Saturday","2019-05-12":"No trading on
143
+ Sunday","2019-05-18":"No trading on Saturday","2019-05-19":"No trading on
144
+ Sunday","2019-05-25":"No trading on Saturday","2019-05-26":"No trading on
145
+ Sunday","2019-06-01":"No trading on Saturday","2019-06-02":"No trading on
146
+ Sunday","2019-06-08":"No trading on Saturday","2019-06-09":"No trading on
147
+ Sunday","2019-06-15":"No trading on Saturday","2019-06-16":"No trading on
148
+ Sunday","2019-06-22":"No trading on Saturday","2019-06-23":"No trading on
149
+ Sunday","2019-06-29":"No trading on Saturday","2019-06-30":"No trading on
150
+ Sunday","2019-07-06":"No trading on Saturday","2019-07-07":"No trading on
151
+ Sunday","2019-07-13":"No trading on Saturday","2019-07-14":"No trading on
152
+ Sunday","2019-07-20":"No trading on Saturday","2019-07-21":"No trading on
153
+ Sunday","2019-07-27":"No trading on Saturday","2019-07-28":"No trading on
154
+ Sunday","2019-08-03":"No trading on Saturday","2019-08-04":"No trading on
155
+ Sunday","2019-08-10":"No trading on Saturday","2019-08-11":"No trading on
156
+ Sunday","2019-08-17":"No trading on Saturday","2019-08-18":"No trading on
157
+ Sunday","2019-08-24":"No trading on Saturday","2019-08-25":"No trading on
158
+ Sunday","2019-08-31":"No trading on Saturday","2019-09-01":"No trading on
159
+ Sunday","2019-09-07":"No trading on Saturday","2019-09-08":"No trading on
160
+ Sunday","2019-09-14":"No trading on Saturday","2019-09-15":"No trading on
161
+ Sunday","2019-09-21":"No trading on Saturday","2019-09-22":"No trading on
162
+ Sunday","2019-09-28":"No trading on Saturday","2019-09-29":"No trading on
163
+ Sunday","2019-10-05":"No trading on Saturday","2019-10-06":"No trading on
164
+ Sunday","2019-10-12":"No trading on Saturday","2019-10-13":"No trading on
165
+ Sunday","2019-10-19":"No trading on Saturday","2019-10-20":"No trading on
166
+ Sunday","2019-10-26":"No trading on Saturday","2019-10-27":"No trading on
167
+ Sunday","2019-11-02":"No trading on Saturday","2019-11-03":"No trading on
168
+ Sunday","2019-11-09":"No trading on Saturday","2019-11-10":"No trading on
169
+ Sunday","2019-11-16":"No trading on Saturday","2019-11-17":"No trading on
170
+ Sunday","2019-11-23":"No trading on Saturday","2019-11-24":"No trading on
171
+ Sunday","2019-11-30":"No trading on Saturday","2019-12-01":"No trading on
172
+ Sunday","2019-12-07":"No trading on Saturday","2019-12-08":"No trading on
173
+ Sunday","2019-12-14":"No trading on Saturday","2019-12-15":"No trading on
174
+ Sunday","2019-12-21":"No trading on Saturday","2019-12-22":"No trading on
175
+ Sunday","2019-12-28":"No trading on Saturday","2019-12-29":"No trading on
176
+ Sunday","2020-01-04":"No trading on Saturday","2020-01-05":"No trading on
177
+ Sunday","2020-01-11":"No trading on Saturday","2020-01-12":"No trading on
178
+ Sunday","2020-01-18":"No trading on Saturday","2020-01-19":"No trading on
179
+ Sunday","2020-01-25":"No trading on Saturday","2020-01-26":"No trading on
180
+ Sunday","2020-02-01":"No trading on Saturday","2020-02-02":"No trading on
181
+ Sunday","2020-02-08":"No trading on Saturday","2020-02-09":"No trading on
182
+ Sunday","2020-02-15":"No trading on Saturday","2020-02-16":"No trading on
183
+ Sunday","2020-02-22":"No trading on Saturday","2020-02-23":"No trading on
184
+ Sunday","2020-02-29":"No trading on Saturday","2020-03-01":"No trading on
185
+ Sunday","2020-03-07":"No trading on Saturday","2020-03-08":"No trading on
186
+ Sunday","2020-03-14":"No trading on Saturday","2020-03-15":"No trading on
187
+ Sunday","2020-03-21":"No trading on Saturday","2020-03-22":"No trading on
188
+ Sunday","2020-03-28":"No trading on Saturday","2020-03-29":"No trading on
189
+ Sunday","2020-04-04":"No trading on Saturday","2020-04-05":"No trading on
190
+ Sunday","2020-04-11":"No trading on Saturday","2020-04-12":"No trading on
191
+ Sunday","2020-04-18":"No trading on Saturday","2020-04-19":"No trading on
192
+ Sunday","2020-04-25":"No trading on Saturday","2020-04-26":"No trading on
193
+ Sunday","2020-05-02":"No trading on Saturday","2020-05-03":"No trading on
194
+ Sunday","2020-05-09":"No trading on Saturday","2020-05-10":"No trading on
195
+ Sunday","2020-05-16":"No trading on Saturday","2020-05-17":"No trading on
196
+ Sunday","2020-05-23":"No trading on Saturday","2020-05-24":"No trading on
197
+ Sunday","2020-05-30":"No trading on Saturday","2020-05-31":"No trading on
198
+ Sunday","2020-06-06":"No trading on Saturday","2020-06-07":"No trading on
199
+ Sunday","2020-06-13":"No trading on Saturday","2020-06-14":"No trading on
200
+ Sunday","2020-06-20":"No trading on Saturday","2020-06-21":"No trading on
201
+ Sunday","2020-06-27":"No trading on Saturday","2020-06-28":"No trading on
202
+ Sunday","2020-07-04":"No trading on Saturday","2020-07-05":"No trading on
203
+ Sunday","2020-07-11":"No trading on Saturday","2020-07-12":"No trading on
204
+ Sunday"},"first_conversion_date":"2018-07-16","default_conversion_date":"2018-07-18"}'
205
+ http_version:
206
+ recorded_at: Mon, 16 Jul 2018 08:20:17 GMT
207
+ recorded_with: VCR 4.0.0
@@ -1,5 +1,53 @@
1
1
  ---
2
2
  http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://devapi.currencycloud.com/v2/authenticate/api
6
+ body:
7
+ encoding: US-ASCII
8
+ string: login_id=development%40currencycloud.com&api_key=deadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef
9
+ headers:
10
+ User-Agent:
11
+ - CurrencyCloudSDK/2.0 Ruby/0.9.0
12
+ response:
13
+ status:
14
+ code: 200
15
+ message: OK
16
+ headers:
17
+ Date:
18
+ - Mon, 16 Jul 2018 08:20:19 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=7lDOezz4i2FsXydLDmHDsJJv6Qfuz+kDqogbQj7KzpAugp/XnxOouVvsT7cesHvNcoyjIuqH+3yDPW/4KuFA/2TWbw5UBJ1VIgNJhikRJIjlxZZ/RiFJxtPXNJ4F; Expires=Mon, 23 Jul 2018 08:20:18 GMT; Path=/
27
+ - __cfduid=dfc0c08f9f877c3a21982d2df03d0a42f1531729218; expires=Tue, 16-Jul-19 08:20:18 GMT; path=/; domain=.currencycloud.com; HttpOnly
28
+ Access-Control-Allow-Origin:
29
+ - "*"
30
+ X-Request-Id:
31
+ - 50e5cdf8-6487-434c-b3e4-b2d79376d5f9
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
+ - 43b30c7d9f7d06c4-LHR
46
+ body:
47
+ encoding: US-ASCII
48
+ string: '{"auth_token":"deadbeefdeadbeefdeadbeefdeadbeef"}'
49
+ http_version:
50
+ recorded_at: Mon, 16 Jul 2018 08:20:19 GMT
3
51
  - request:
4
52
  method: get
5
53
  uri: https://devapi.currencycloud.com/v2/reference/currencies
@@ -8,40 +56,80 @@ http_interactions:
8
56
  string: ''
9
57
  headers:
10
58
  X-Auth-Token:
11
- - 1c9da5726314246acfb09ec5651307a5
59
+ - deadbeefdeadbeefdeadbeefdeadbeef
60
+ User-Agent:
61
+ - CurrencyCloudSDK/2.0 Ruby/0.9.0
12
62
  response:
13
63
  status:
14
64
  code: 200
15
65
  message: OK
16
66
  headers:
17
- Server:
18
- - nginx
19
67
  Date:
20
- - Wed, 29 Apr 2015 21:04:08 GMT
68
+ - Mon, 16 Jul 2018 08:20:20 GMT
21
69
  Content-Type:
22
70
  - application/json;charset=utf-8
23
- Content-Length:
24
- - '1363'
71
+ Transfer-Encoding:
72
+ - chunked
25
73
  Connection:
26
74
  - keep-alive
75
+ Set-Cookie:
76
+ - AWSALB=Lta69yW3gAYeshaCyhTA9CdIcLgQ33kA+Kl9JNNjik5ilwQH+rNP0OkBbFKZWPq1FMfSFuXF3Rb5g+O1oUPuNOS7RYb2JP6xkQMD5LOPNRE7wAJ5NLeHKPxnggvS; Expires=Mon, 23 Jul 2018 08:20:19 GMT; Path=/
77
+ - __cfduid=dba454b948f89441eede645d3da78bd961531729219; expires=Tue, 16-Jul-19 08:20:19 GMT; path=/; domain=.currencycloud.com; HttpOnly
78
+ Access-Control-Allow-Origin:
79
+ - "*"
27
80
  X-Request-Id:
28
- - '2775201683481262929'
81
+ - 96bb9b59-27e4-4eae-ab3b-909441e710c8
82
+ Access-Control-Allow-Methods:
83
+ - GET
29
84
  X-Content-Type-Options:
30
85
  - nosniff
86
+ Vary:
87
+ - Origin
88
+ Access-Control-Allow-Headers:
89
+ - authorization,Access-Control-Allow-Origin,Content-Type,SOAPAction,X-Auth-Token,Origin,Authority
90
+ Expect-Ct:
91
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
92
+ Server:
93
+ - cloudflare
94
+ Cf-Ray:
95
+ - 43b30c889ee20a90-LHR
31
96
  body:
32
- encoding: UTF-8
97
+ encoding: US-ASCII
33
98
  string: '{"currencies":[{"code":"AED","decimal_places":2,"name":"United Arab
34
- Emirates Dirham"},{"code":"AUD","decimal_places":2,"name":"Australian Dollar"},{"code":"CAD","decimal_places":2,"name":"Canadian
35
- Dollar"},{"code":"CHF","decimal_places":2,"name":"Swiss Franc"},{"code":"CZK","decimal_places":2,"name":"Czech
36
- Koruna"},{"code":"DKK","decimal_places":2,"name":"Danish Krone"},{"code":"EUR","decimal_places":2,"name":"Euro"},{"code":"GBP","decimal_places":2,"name":"Pound
37
- Sterling"},{"code":"HKD","decimal_places":2,"name":"Hong Kong Dollar"},{"code":"HUF","decimal_places":2,"name":"Hungarian
38
- Forint"},{"code":"ILS","decimal_places":2,"name":"Israeli New Sheqel"},{"code":"JPY","decimal_places":0,"name":"Japanese
39
- Yen"},{"code":"MXN","decimal_places":2,"name":"Mexican Peso"},{"code":"NOK","decimal_places":2,"name":"Norwegian
40
- Krone"},{"code":"NZD","decimal_places":2,"name":"New Zealand Dollar"},{"code":"PLN","decimal_places":2,"name":"Polish
41
- Zloty"},{"code":"RON","decimal_places":2,"name":"Romanian New Leu"},{"code":"SEK","decimal_places":2,"name":"Swedish
42
- Krona"},{"code":"SGD","decimal_places":2,"name":"Singapore Dollar"},{"code":"THB","decimal_places":2,"name":"Thai
43
- Baht"},{"code":"TRY","decimal_places":2,"name":"Turkish Lira"},{"code":"USD","decimal_places":2,"name":"United
44
- States Dollar"},{"code":"ZAR","decimal_places":2,"name":"South African Rand"}]}'
45
- http_version:
46
- recorded_at: Wed, 29 Apr 2015 21:04:08 GMT
47
- recorded_with: VCR 2.9.3
99
+ Emirates Dirham","online_trading":true},{"code":"AUD","decimal_places":2,"name":"Australian
100
+ Dollar","online_trading":true},{"code":"BGN","decimal_places":2,"name":"Bulgarian
101
+ Lev","online_trading":true},{"code":"BHD","decimal_places":2,"name":"Bahraini
102
+ Dinar","online_trading":true},{"code":"CAD","decimal_places":2,"name":"Canadian
103
+ Dollar","online_trading":true},{"code":"CHF","decimal_places":2,"name":"Swiss
104
+ Franc","online_trading":true},{"code":"CNY","decimal_places":2,"name":"Chinese
105
+ Yuan","online_trading":true},{"code":"CZK","decimal_places":2,"name":"Czech
106
+ Koruna","online_trading":true},{"code":"DKK","decimal_places":2,"name":"Danish
107
+ Krone","online_trading":true},{"code":"EUR","decimal_places":2,"name":"Euro","online_trading":true},{"code":"GBP","decimal_places":2,"name":"British
108
+ Pound","online_trading":true},{"code":"HKD","decimal_places":2,"name":"Hong
109
+ Kong Dollar","online_trading":true},{"code":"HRK","decimal_places":2,"name":"Croatian
110
+ Kuna","online_trading":true},{"code":"HUF","decimal_places":2,"name":"Hungarian
111
+ Forint","online_trading":true},{"code":"ILS","decimal_places":2,"name":"Israeli
112
+ New Sheqel","online_trading":true},{"code":"INR","decimal_places":2,"name":"Indian
113
+ Rupee","online_trading":true},{"code":"JMD","decimal_places":2,"name":"Jamaican
114
+ Dollar","online_trading":false},{"code":"JPY","decimal_places":0,"name":"Japanese
115
+ Yen","online_trading":true},{"code":"KES","decimal_places":2,"name":"Kenyan
116
+ Shilling","online_trading":true},{"code":"KWD","decimal_places":2,"name":"Kuwaiti
117
+ Dinar","online_trading":true},{"code":"MXN","decimal_places":2,"name":"Mexican
118
+ Peso","online_trading":true},{"code":"NOK","decimal_places":2,"name":"Norwegian
119
+ Krone","online_trading":true},{"code":"NZD","decimal_places":2,"name":"New
120
+ Zealand Dollar","online_trading":true},{"code":"OMR","decimal_places":2,"name":"Omani
121
+ Rial","online_trading":true},{"code":"PLN","decimal_places":2,"name":"Polish
122
+ Zloty","online_trading":true},{"code":"QAR","decimal_places":2,"name":"Qatari
123
+ Rial","online_trading":true},{"code":"RON","decimal_places":2,"name":"Romanian
124
+ New Leu","online_trading":true},{"code":"SAR","decimal_places":2,"name":"Saudi
125
+ Riyal","online_trading":true},{"code":"SEK","decimal_places":2,"name":"Swedish
126
+ Krona","online_trading":true},{"code":"SGD","decimal_places":2,"name":"Singapore
127
+ Dollar","online_trading":true},{"code":"THB","decimal_places":2,"name":"Thai
128
+ Baht","online_trading":true},{"code":"TRY","decimal_places":2,"name":"Turkish
129
+ Lira","online_trading":true},{"code":"UGX","decimal_places":0,"name":"Ugandan
130
+ Shilling","online_trading":true},{"code":"USD","decimal_places":2,"name":"United
131
+ States Dollar","online_trading":true},{"code":"ZAR","decimal_places":2,"name":"South
132
+ African Rand","online_trading":true}]}'
133
+ http_version:
134
+ recorded_at: Mon, 16 Jul 2018 08:20:20 GMT
135
+ recorded_with: VCR 4.0.0
@@ -0,0 +1,103 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://devapi.currencycloud.com/v2/authenticate/api
6
+ body:
7
+ encoding: US-ASCII
8
+ string: login_id=development%40currencycloud.com&api_key=deadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef
9
+ headers:
10
+ User-Agent:
11
+ - CurrencyCloudSDK/2.0 Ruby/0.9.0
12
+ response:
13
+ status:
14
+ code: 200
15
+ message: OK
16
+ headers:
17
+ Date:
18
+ - Mon, 16 Jul 2018 08:20:21 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=blVLeMPq2MWy61ozb8CXCL+g9Mj+lxjKf7z0yedKwqY/0byHy5oZZitCBLynBIrE1VKq49dfUxbrPJdRW273ZbIfrD+X8YotmMyxf9e3CLI55PL+EyPbfi2ykT3D; Expires=Mon, 23 Jul 2018 08:20:20 GMT; Path=/
27
+ - __cfduid=db712c4d4d2d46a75433a07f17c80525e1531729220; expires=Tue, 16-Jul-19 08:20:20 GMT; path=/; domain=.currencycloud.com; HttpOnly
28
+ Access-Control-Allow-Origin:
29
+ - "*"
30
+ X-Request-Id:
31
+ - 0512ffc9-5840-460d-8354-673578e4050c
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
+ - 43b30c8aef16bc50-LHR
46
+ body:
47
+ encoding: US-ASCII
48
+ string: '{"auth_token":"deadbeefdeadbeefdeadbeefdeadbeef"}'
49
+ http_version:
50
+ recorded_at: Mon, 16 Jul 2018 08:20:21 GMT
51
+ - request:
52
+ method: get
53
+ uri: https://devapi.currencycloud.com/v2/reference/payer_required_details?payer_country=GB
54
+ body:
55
+ encoding: US-ASCII
56
+ string: ''
57
+ headers:
58
+ X-Auth-Token:
59
+ - deadbeefdeadbeefdeadbeefdeadbeef
60
+ User-Agent:
61
+ - CurrencyCloudSDK/2.0 Ruby/0.9.0
62
+ response:
63
+ status:
64
+ code: 200
65
+ message: OK
66
+ headers:
67
+ Date:
68
+ - Mon, 16 Jul 2018 08:20:22 GMT
69
+ Content-Type:
70
+ - application/json;charset=utf-8
71
+ Transfer-Encoding:
72
+ - chunked
73
+ Connection:
74
+ - keep-alive
75
+ Set-Cookie:
76
+ - AWSALB=i8gfcAaUj3w7/TbYkeknhbDo9Jqc3jy0vuLOIKRMcvj185Zaa+IQ9aRvWLj2Bl7v58PWJcjZD1xM+U2x4ohbI5+84LFhqdUMlW6JY815Z5VMzs0j6TjThmQPd8JN; Expires=Mon, 23 Jul 2018 08:20:22 GMT; Path=/
77
+ - __cfduid=de3f366161f1233095df0a8804559c13e1531729222; expires=Tue, 16-Jul-19 08:20:22 GMT; path=/; domain=.currencycloud.com; HttpOnly
78
+ Access-Control-Allow-Origin:
79
+ - "*"
80
+ X-Request-Id:
81
+ - 49330a72-e85c-458a-907f-7b582280d5dd
82
+ Access-Control-Allow-Methods:
83
+ - GET
84
+ X-Content-Type-Options:
85
+ - nosniff
86
+ Vary:
87
+ - Origin
88
+ Access-Control-Allow-Headers:
89
+ - authorization,Access-Control-Allow-Origin,Content-Type,SOAPAction,X-Auth-Token,Origin,Authority
90
+ Expect-Ct:
91
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
92
+ Server:
93
+ - cloudflare
94
+ Cf-Ray:
95
+ - 43b30c967ab60a90-LHR
96
+ body:
97
+ encoding: US-ASCII
98
+ string: '{"details":[{"payer_entity_type":"company","payment_type":"priority","required_fields":[{"name":"payer_country","validation_rule":"^[A-z]{2}$"},{"name":"payer_city","validation_rule":"^.{1,255}"},{"name":"payer_address","validation_rule":"^.{1,255}"},{"name":"payer_company_name","validation_rule":"^.{1,255}"},{"name":"payer_identification_value","validation_rule":"^.{1,255}"}],"payer_identification_type":"incorporation_number"},{"payer_entity_type":"individual","payment_type":"priority","required_fields":[{"name":"payer_country","validation_rule":"^[A-z]{2}$"},{"name":"payer_city","validation_rule":"^.{1,255}"},{"name":"payer_address","validation_rule":"^.{1,255}"},{"name":"payer_first_name","validation_rule":"^.{1,255}"},{"name":"payer_last_name","validation_rule":"^.{1,255}"},{"name":"payer_date_of_birth","validation_rule":"/A([+-]?d{4}(?!d{2}\b))((-?)((0[1-9]|1[0-2])(\u0003([12]d|0[1-9]|3[01]))?|W([0-4]d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]d|[12]d{2}|3([0-5]d|6[1-6])))([T
99
+ ]((([01]d|2[0-3])((:?)[0-5]d)?|24:?00)([.,]d+(?!:))?)?(\u000F[0-5]d([.,]d+)?)?([zZ]|([+-])([01]d|2[0-3]):?([0-5]d)?)?)?)?Z/"}]},{"payer_entity_type":"company","payment_type":"regular","required_fields":[{"name":"payer_country","validation_rule":"^[A-z]{2}$"},{"name":"payer_city","validation_rule":"^.{1,255}"},{"name":"payer_address","validation_rule":"^.{1,255}"},{"name":"payer_company_name","validation_rule":"^.{1,255}"}]},{"payer_entity_type":"individual","payment_type":"regular","required_fields":[{"name":"payer_country","validation_rule":"^[A-z]{2}$"},{"name":"payer_city","validation_rule":"^.{1,255}"},{"name":"payer_address","validation_rule":"^.{1,255}"},{"name":"payer_first_name","validation_rule":"^.{1,255}"},{"name":"payer_last_name","validation_rule":"^.{1,255}"},{"name":"payer_date_of_birth","validation_rule":"/A([+-]?d{4}(?!d{2}\b))((-?)((0[1-9]|1[0-2])(\u0003([12]d|0[1-9]|3[01]))?|W([0-4]d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]d|[12]d{2}|3([0-5]d|6[1-6])))([T
100
+ ]((([01]d|2[0-3])((:?)[0-5]d)?|24:?00)([.,]d+(?!:))?)?(\u000F[0-5]d([.,]d+)?)?([zZ]|([+-])([01]d|2[0-3]):?([0-5]d)?)?)?)?Z/"}]}]}'
101
+ http_version:
102
+ recorded_at: Mon, 16 Jul 2018 08:20:22 GMT
103
+ recorded_with: VCR 4.0.0