currency_cloud 0.9.0 → 0.10.0

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 (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
@@ -5,7 +5,7 @@ http_interactions:
5
5
  uri: https://devapi.currencycloud.com/v2/authenticate/api
6
6
  body:
7
7
  encoding: UTF-8
8
- string: login_id=non-existent-login-id&api_key=ef0fd50fca1fb14c1fab3a8436b9ecb57528f0
8
+ string: login_id=non-existent-login-id&api_key=deadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef
9
9
  headers: {}
10
10
  response:
11
11
  status:
@@ -5,7 +5,7 @@ http_interactions:
5
5
  uri: https://devapi.currencycloud.com/v2/authenticate/api
6
6
  body:
7
7
  encoding: US-ASCII
8
- string: login_id=non-existent-login-id&api_key=ef0fd50fca1fb14c1fab3a8436b9ecb57528f0
8
+ string: login_id=non-existent-login-id&api_key=deadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef
9
9
  headers:
10
10
  Accept:
11
11
  - ! '*/*'
@@ -5,7 +5,7 @@ http_interactions:
5
5
  uri: https://devapi.currencycloud.com/v2/authenticate/api
6
6
  body:
7
7
  encoding: UTF-8
8
- string: login_id=rjnienaber%40gmail.com&api_key=ef0fd50fca1fb14c1fab3a8436b9ecb65f02f129fd87eafa45ded8ae257528f0
8
+ string: login_id=development%40currencycloud.com&api_key=deadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef
9
9
  headers: {}
10
10
  response:
11
11
  status:
@@ -5,7 +5,7 @@ http_interactions:
5
5
  uri: https://devapi.currencycloud.com/v2/authenticate/api
6
6
  body:
7
7
  encoding: UTF-8
8
- string: login_id=rjnienaber%40gmail.com&api_key=ef0fd50fca1fb14c1fab3a8436b9ecb65f02f129fd87eafa45ded8ae257528f0
8
+ string: login_id=development%40currencycloud.com&api_key=deadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef
9
9
  headers: {}
10
10
  response:
11
11
  status:
@@ -5,7 +5,7 @@ http_interactions:
5
5
  uri: https://devapi.currencycloud.com/v2/authenticate/api
6
6
  body:
7
7
  encoding: US-ASCII
8
- string: login_id=non-existent-login-id&api_key=efb5ae2af84978b7a37f18dd61c8bbe139b403009faea83484405a3dcb64c4d8
8
+ string: login_id=non-existent-login-id&api_key=deadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef
9
9
  headers:
10
10
  Accept:
11
11
  - ! '*/*'
@@ -5,7 +5,7 @@ http_interactions:
5
5
  uri: https://devapi.currencycloud.com/v2/authenticate/api
6
6
  body:
7
7
  encoding: UTF-8
8
- string: login_id=rjnienaber%40gmail.com2&api_key=ef0fd50fca1fb14c1fab3a8436b9ecb65f02f129fd87eafa45ded8ae257528f0
8
+ string: login_id=development%40currencycloud.com2&api_key=deadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef
9
9
  headers: {}
10
10
  response:
11
11
  status:
@@ -0,0 +1,109 @@
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.9.0
12
+ response:
13
+ status:
14
+ code: 200
15
+ message: OK
16
+ headers:
17
+ Date:
18
+ - Mon, 16 Jul 2018 12:59:23 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=aY/cF/JLSqjnBSnrHJIs2YLyeiVD6aX+RwCeupOy9YwhYXiFC78S2KW7MGMfN+/8rWi5UdRqN/LXxeyDpbZ8+4HLEVXw0J+rh6PBg1yjWDKaAr6MX0U8zLBliJcz;
27
+ Expires=Mon, 23 Jul 2018 12:59:21 GMT; Path=/
28
+ - __cfduid=d3b6f6bc0aa5bde9343ee2ba5c02980ad1531745961; expires=Tue, 16-Jul-19
29
+ 12:59:21 GMT; path=/; domain=.currencycloud.com; HttpOnly
30
+ Access-Control-Allow-Origin:
31
+ - "*"
32
+ X-Request-Id:
33
+ - 8965e034-c707-4368-be85-23b387614400
34
+ Access-Control-Allow-Methods:
35
+ - POST
36
+ X-Content-Type-Options:
37
+ - nosniff
38
+ Vary:
39
+ - Origin
40
+ Access-Control-Allow-Headers:
41
+ - authorization,Access-Control-Allow-Origin,Content-Type,SOAPAction,X-Auth-Token,Origin,Authority
42
+ Expect-Ct:
43
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
44
+ Server:
45
+ - cloudflare
46
+ Cf-Ray:
47
+ - 43b4a5434d13bc50-LHR
48
+ body:
49
+ encoding: UTF-8
50
+ string: '{"auth_token":"deadbeefdeadbeefdeadbeefdeadbeef"}'
51
+ http_version:
52
+ recorded_at: Mon, 16 Jul 2018 12:59:23 GMT
53
+ - request:
54
+ method: get
55
+ uri: https://devapi.currencycloud.com/v2/ibans/subaccounts/87077161-91de-012f-e284-1e0030c7f353
56
+ body:
57
+ encoding: US-ASCII
58
+ string: ''
59
+ headers:
60
+ X-Auth-Token:
61
+ - deadbeefdeadbeefdeadbeefdeadbeef
62
+ User-Agent:
63
+ - CurrencyCloudSDK/2.0 Ruby/0.9.0
64
+ response:
65
+ status:
66
+ code: 200
67
+ message: OK
68
+ headers:
69
+ Date:
70
+ - Mon, 16 Jul 2018 12:59:23 GMT
71
+ Content-Type:
72
+ - application/json;charset=utf-8
73
+ Transfer-Encoding:
74
+ - chunked
75
+ Connection:
76
+ - keep-alive
77
+ Set-Cookie:
78
+ - AWSALB=v4Jv5NvynmaKotcxO2W6KQqdGdTM2Bg84NhMIHhACzmllUxXenZC81dxCqhWno6m7sfV+ALzmtWDEm7I5CT/1vtflhIlE5cBDuIMeZ6DCtFv1rMY18txyI9nzLpH;
79
+ Expires=Mon, 23 Jul 2018 12:59:23 GMT; Path=/
80
+ - __cfduid=ddd0541e56113ecc0cc6171bc82f6ff751531745963; expires=Tue, 16-Jul-19
81
+ 12:59:23 GMT; path=/; domain=.currencycloud.com; HttpOnly
82
+ Access-Control-Allow-Origin:
83
+ - "*"
84
+ X-Request-Id:
85
+ - 55824ce0-a4b4-4e71-ac2d-c2330549674c
86
+ Access-Control-Allow-Methods:
87
+ - GET
88
+ X-Content-Type-Options:
89
+ - nosniff
90
+ Vary:
91
+ - Origin
92
+ Access-Control-Allow-Headers:
93
+ - authorization,Access-Control-Allow-Origin,Content-Type,SOAPAction,X-Auth-Token,Origin,Authority
94
+ Expect-Ct:
95
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
96
+ Server:
97
+ - cloudflare
98
+ Cf-Ray:
99
+ - 43b4a54d89700a78-LHR
100
+ body:
101
+ encoding: UTF-8
102
+ string: '{"ibans":[{"id":"01d8c0bc-7f0c-4cdd-bc7e-ef81f68500fe","iban_code":"GB51TCCL00997997989490","account_id":"87077161-91de-012f-e284-1e0030c7f353",
103
+ "currency":"JPY","account_holder_name":"Account-IGGLNHYTWFKI","bank_institution_name":"The
104
+ Currency Cloud","bank_institution_address":"12 Steward Street, The Steward
105
+ Building, London, E1 6FQ, GB", "bank_institution_country":"United Kingdom","bic_swift":"TCCLGB31","created_at":"2018-01-01T12:34:56+00:00","updated_at":"2018-01-01T12:34:56+00:00"}],
106
+ "pagination":{"total_entries":1,"total_pages":1,"current_page":1,"per_page":25,"previous_page":-1,"next_page":2,"order":"created_at","order_asc_desc":"asc"}}'
107
+ http_version:
108
+ recorded_at: Mon, 16 Jul 2018 12:59:23 GMT
109
+ recorded_with: VCR 3.0.3
@@ -0,0 +1,108 @@
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.9.0
12
+ response:
13
+ status:
14
+ code: 200
15
+ message: OK
16
+ headers:
17
+ Date:
18
+ - Mon, 16 Jul 2018 12:59:20 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=I0Y/8VaEWLQWMdjmj8Xt3N5dHQEFf8ViVdUWWtziGG+NcS0RRd5K8hE8wWM4hwHW2qfmHLPkqGAojGiPlJ09aEenqoZhCkrhFaHzuKFAM99hjDlwlTqDNvYXxK5I;
27
+ Expires=Mon, 23 Jul 2018 12:59:19 GMT; Path=/
28
+ - __cfduid=d502a06ed91b278258faec26d1f09422e1531745959; expires=Tue, 16-Jul-19
29
+ 12:59:19 GMT; path=/; domain=.currencycloud.com; HttpOnly
30
+ Access-Control-Allow-Origin:
31
+ - "*"
32
+ X-Request-Id:
33
+ - a8ed943b-18c0-48dd-bb75-dc7b024894c6
34
+ Access-Control-Allow-Methods:
35
+ - POST
36
+ X-Content-Type-Options:
37
+ - nosniff
38
+ Vary:
39
+ - Origin
40
+ Access-Control-Allow-Headers:
41
+ - authorization,Access-Control-Allow-Origin,Content-Type,SOAPAction,X-Auth-Token,Origin,Authority
42
+ Expect-Ct:
43
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
44
+ Server:
45
+ - cloudflare
46
+ Cf-Ray:
47
+ - 43b4a535ead606d0-LHR
48
+ body:
49
+ encoding: UTF-8
50
+ string: '{"auth_token":"deadbeefdeadbeefdeadbeefdeadbeef"}'
51
+ http_version:
52
+ recorded_at: Mon, 16 Jul 2018 12:59:21 GMT
53
+ - request:
54
+ method: get
55
+ uri: https://devapi.currencycloud.com/v2/ibans/subaccounts/find
56
+ body:
57
+ encoding: US-ASCII
58
+ string: ''
59
+ headers:
60
+ X-Auth-Token:
61
+ - deadbeefdeadbeefdeadbeefdeadbeef
62
+ User-Agent:
63
+ - CurrencyCloudSDK/2.0 Ruby/0.9.0
64
+ response:
65
+ status:
66
+ code: 200
67
+ message: OK
68
+ headers:
69
+ Date:
70
+ - Mon, 16 Jul 2018 12:59:21 GMT
71
+ Content-Type:
72
+ - application/json;charset=utf-8
73
+ Transfer-Encoding:
74
+ - chunked
75
+ Connection:
76
+ - keep-alive
77
+ Set-Cookie:
78
+ - AWSALB=jhgmNcGOglJOdqSjCHVPOOdtpPGiR5Mrakh1dnJMPizgZK3jHkvaQSUqOZEzYyGbe2qUi502SK7YRnwA6T6SCAbhT1XWFCvv0zi0MtgdeE4dtorAnNhgugH3PZqg;
79
+ Expires=Mon, 23 Jul 2018 12:59:21 GMT; Path=/
80
+ - __cfduid=d99fe9df97a8f1dae73a544b481d1586b1531745961; expires=Tue, 16-Jul-19
81
+ 12:59:21 GMT; path=/; domain=.currencycloud.com; HttpOnly
82
+ Access-Control-Allow-Origin:
83
+ - "*"
84
+ X-Request-Id:
85
+ - 1fe45308-eabb-4c3f-aa70-970af5ff2693
86
+ Access-Control-Allow-Methods:
87
+ - GET
88
+ X-Content-Type-Options:
89
+ - nosniff
90
+ Vary:
91
+ - Origin
92
+ Access-Control-Allow-Headers:
93
+ - authorization,Access-Control-Allow-Origin,Content-Type,SOAPAction,X-Auth-Token,Origin,Authority
94
+ Expect-Ct:
95
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
96
+ Server:
97
+ - cloudflare
98
+ Cf-Ray:
99
+ - 43b4a540be7806c4-LHR
100
+ body:
101
+ encoding: UTF-8
102
+ string: '{"ibans":[{"id":"01d8c0bc-7f0c-4cdd-bc7e-ef81f68500fe","iban_code":"GB51TCCL00997997989489","account_id":"87077161-91de-012f-e284-1e0030c7f352",
103
+ "currency":"EUR","account_holder_name":"Account-IGGLNHYTWFKI","bank_institution_name":"The Currency Cloud","bank_institution_address":"12 Steward Street, The Steward Building, London, E1 6FQ, GB",
104
+ "bank_institution_country":"United Kingdom","bic_swift":"TCCLGB31","created_at":"2018-01-01T12:34:56+00:00","updated_at":"2018-01-01T12:34:56+00:00"}],
105
+ "pagination":{"total_entries":1,"total_pages":1,"current_page":1,"per_page":25,"previous_page":-1,"next_page":2,"order":"created_at","order_asc_desc":"asc"}}'
106
+ http_version:
107
+ recorded_at: Mon, 16 Jul 2018 12:59:21 GMT
108
+ recorded_with: VCR 3.0.3
@@ -0,0 +1,114 @@
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.9.0
12
+ response:
13
+ status:
14
+ code: 200
15
+ message: OK
16
+ headers:
17
+ Date:
18
+ - Mon, 16 Jul 2018 12:59:18 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=n31E+w4Fm+Vqb32QMAQzU1MPtIBRxf/Annr9MlpXhcBM0DNYuo+0k3+oFgkSuBT0kSYyT8o0i52z/Xe0F9hpIoxC6AhwiRLkz1K+QfwPfNWapWeYqsjfE/f1LYso;
27
+ Expires=Mon, 23 Jul 2018 12:59:17 GMT; Path=/
28
+ - __cfduid=d2202081327ae33f22280a1158c33283d1531745957; expires=Tue, 16-Jul-19
29
+ 12:59:17 GMT; path=/; domain=.currencycloud.com; HttpOnly
30
+ Access-Control-Allow-Origin:
31
+ - "*"
32
+ X-Request-Id:
33
+ - 1c5239cf-b3d3-42b7-b161-2512c9674632
34
+ Access-Control-Allow-Methods:
35
+ - POST
36
+ X-Content-Type-Options:
37
+ - nosniff
38
+ Vary:
39
+ - Origin
40
+ Access-Control-Allow-Headers:
41
+ - authorization,Access-Control-Allow-Origin,Content-Type,SOAPAction,X-Auth-Token,Origin,Authority
42
+ Expect-Ct:
43
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
44
+ Server:
45
+ - cloudflare
46
+ Cf-Ray:
47
+ - 43b4a529dc330a66-LHR
48
+ body:
49
+ encoding: UTF-8
50
+ string: '{"auth_token":"deadbeefdeadbeefdeadbeefdeadbeef"}'
51
+ http_version:
52
+ recorded_at: Mon, 16 Jul 2018 12:59:18 GMT
53
+ - request:
54
+ method: get
55
+ uri: https://devapi.currencycloud.com/v2/ibans
56
+ body:
57
+ encoding: US-ASCII
58
+ string: ''
59
+ headers:
60
+ X-Auth-Token:
61
+ - deadbeefdeadbeefdeadbeefdeadbeef
62
+ User-Agent:
63
+ - CurrencyCloudSDK/2.0 Ruby/0.9.0
64
+ response:
65
+ status:
66
+ code: 200
67
+ message: OK
68
+ headers:
69
+ Date:
70
+ - Mon, 16 Jul 2018 12:59:19 GMT
71
+ Content-Type:
72
+ - application/json;charset=utf-8
73
+ Transfer-Encoding:
74
+ - chunked
75
+ Connection:
76
+ - keep-alive
77
+ Set-Cookie:
78
+ - AWSALB=ui0VxiRxMXV2DonQ3LSZiXkI6c8S+BPh9lJu7Lwsxix9OH5qwcYRbICmKp3ngzmJDsK4cCgHqaqefYidnbf71ykLxoFO2f2hfProm6Jk25uI6tI7oFuCSNAVzHGz;
79
+ Expires=Mon, 23 Jul 2018 12:59:19 GMT; Path=/
80
+ - __cfduid=d2bb3387907ae5b92f73932356ddfcd151531745959; expires=Tue, 16-Jul-19
81
+ 12:59:19 GMT; path=/; domain=.currencycloud.com; HttpOnly
82
+ Access-Control-Allow-Origin:
83
+ - "*"
84
+ X-Request-Id:
85
+ - 666d6010-1ad8-4da9-8e75-d1ee232fb43d
86
+ Access-Control-Allow-Methods:
87
+ - GET
88
+ X-Content-Type-Options:
89
+ - nosniff
90
+ Vary:
91
+ - Origin
92
+ Access-Control-Allow-Headers:
93
+ - authorization,Access-Control-Allow-Origin,Content-Type,SOAPAction,X-Auth-Token,Origin,Authority
94
+ Expect-Ct:
95
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
96
+ Server:
97
+ - cloudflare
98
+ Cf-Ray:
99
+ - 43b4a5340f4a0a78-LHR
100
+ body:
101
+ encoding: UTF-8
102
+ string: '{"ibans":[{"id":"8242d1f4-4555-4155-a9bf-30feee785121","iban_code":"GB51TCCL00997961584807","account_id":"e277c9f9-679f-454f-8367-274b3ff977ff","currency":"EUR",
103
+ "account_holder_name":"Development CM","bank_institution_name":"The Currency Cloud","bank_institution_address":"12 Steward Street, The Steward Building, London, E1 6FQ, GB",
104
+ "bank_institution_country":"United Kingdom","bic_swift":"TCCLGB31","created_at":"2018-02-19T17:24:48+00:00","updated_at":"2018-02-19T17:24:48+00:00"},
105
+ {"id":"8242d1f4-4555-4155-a9bf-30feee785121","iban_code":"GB51TCCL00997961584808","account_id":"e277c9f9-679f-454f-8367-274b3ff977ff","currency":"GBP",
106
+ "account_holder_name":"Development CM","bank_institution_name":"The Currency Cloud","bank_institution_address":"12 Steward Street, The Steward Building, London, E1 6FQ, GB",
107
+ "bank_institution_country":"United Kingdom","bic_swift":"TCCLGB31","created_at":"2018-02-19T17:24:48+00:00","updated_at":"2018-02-19T17:24:48+00:00"},
108
+ {"id":"8242d1f4-4555-4155-a9bf-30feee785121","iban_code":"GB51TCCL00997961584809","account_id":"e277c9f9-679f-454f-8367-274b3ff977ff","currency":"USD",
109
+ "account_holder_name":"Development CM","bank_institution_name":"The Currency Cloud","bank_institution_address":"12 Steward Street, The Steward Building, London, E1 6FQ, GB",
110
+ "bank_institution_country":"United Kingdom","bic_swift":"TCCLGB31","created_at":"2018-02-19T17:24:48+00:00","updated_at":"2018-02-19T17:24:48+00:00"}],
111
+ "pagination":{"total_entries":3,"total_pages":1,"current_page":1,"per_page":25,"previous_page":-1,"next_page":2,"order":"created_at","order_asc_desc":"asc"}}'
112
+ http_version:
113
+ recorded_at: Mon, 16 Jul 2018 12:59:19 GMT
114
+ recorded_with: VCR 3.0.3
@@ -0,0 +1,263 @@
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.9.0
12
+ response:
13
+ status:
14
+ code: 200
15
+ message: OK
16
+ headers:
17
+ Date:
18
+ - Fri, 06 Jul 2018 14:21:06 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=YAvX8/vQCux0IYsENdcPmm5TXxd9j2J8AciSvvQBssflcr+yoH9cdeip/M+s0YrSNC/BzokYAJ3pHhLcXNFiW6vmKAcC2D6c0Bm+ffiVOqAyBl13WOyqf6A58f30;
27
+ Expires=Fri, 13 Jul 2018 14:21:04 GMT; Path=/
28
+ - __cfduid=d95c1a063350fab4a75485a4fdb48fc6f1530886864; expires=Sat, 06-Jul-19
29
+ 14:21:04 GMT; path=/; domain=.currencycloud.com; HttpOnly
30
+ Access-Control-Allow-Origin:
31
+ - "*"
32
+ X-Request-Id:
33
+ - fa5758be-1e71-40aa-abf9-c634733504b3
34
+ Access-Control-Allow-Methods:
35
+ - POST
36
+ X-Content-Type-Options:
37
+ - nosniff
38
+ Vary:
39
+ - Origin
40
+ Access-Control-Allow-Headers:
41
+ - authorization,Access-Control-Allow-Origin,Content-Type,SOAPAction,X-Auth-Token,Origin,Authority
42
+ Expect-Ct:
43
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
44
+ Server:
45
+ - cloudflare
46
+ Cf-Ray:
47
+ - 4362b7386e1dbbe4-LHR
48
+ body:
49
+ encoding: UTF-8
50
+ string: "{\"auth_token\":\"deadbeefdeadbeefdeadbeefdeadbeef\"}"
51
+ http_version:
52
+ recorded_at: Fri, 06 Jul 2018 14:21:06 GMT
53
+ - request:
54
+ method: post
55
+ uri: https://devapi.currencycloud.com/v2/beneficiaries/create
56
+ body:
57
+ encoding: UTF-8
58
+ string: name=Employee%20Funds&bank_account_holder_name=John%20Doe&bank_country=GB&currency=GBP&email=john.doe%40acme.com&account_number=1204567890003466&routing_code_type_1=sort_code&routing_code_value_1=990901
59
+ headers:
60
+ X-Auth-Token:
61
+ - deadbeefdeadbeefdeadbeefdeadbeef
62
+ User-Agent:
63
+ - CurrencyCloudSDK/2.0 Ruby/0.9.0
64
+ response:
65
+ status:
66
+ code: 200
67
+ message: OK
68
+ headers:
69
+ Date:
70
+ - Fri, 06 Jul 2018 14:21:12 GMT
71
+ Content-Type:
72
+ - application/json;charset=utf-8
73
+ Transfer-Encoding:
74
+ - chunked
75
+ Connection:
76
+ - keep-alive
77
+ Set-Cookie:
78
+ - AWSALB=5dIbVZ3KHFF5Mss/qV88wD7ojDOTp3LYi6QzeCdfEMVM1O5k07r9Co58E8Pc4mQ+Dsm/YQcWI5JBa+Yxuu/GS5ffcfy4HSUnBItzm7pH3KyqM6hUeKuX8hX6wA1m;
79
+ Expires=Fri, 13 Jul 2018 14:21:06 GMT; Path=/
80
+ - __cfduid=d9df49a7729aa2500767ef35adb7e939e1530886866; expires=Sat, 06-Jul-19
81
+ 14:21:06 GMT; path=/; domain=.currencycloud.com; HttpOnly
82
+ Access-Control-Allow-Origin:
83
+ - "*"
84
+ X-Request-Id:
85
+ - fdd211f0-a743-4025-8f53-719f39127759
86
+ Access-Control-Allow-Methods:
87
+ - POST
88
+ X-Content-Type-Options:
89
+ - nosniff
90
+ Vary:
91
+ - Origin
92
+ Access-Control-Allow-Headers:
93
+ - authorization,Access-Control-Allow-Origin,Content-Type,SOAPAction,X-Auth-Token,Origin,Authority
94
+ Expect-Ct:
95
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
96
+ Server:
97
+ - cloudflare
98
+ Cf-Ray:
99
+ - 4362b7445d0bbb9c-LHR
100
+ body:
101
+ encoding: UTF-8
102
+ string: "{\"id\":\"85fa1f38-9813-4f1e-b93d-6cde70f78562\",\"bank_account_holder_name\":\"John
103
+ Doe\",\"name\":\"Employee Funds\",\"email\":null,\"payment_types\":[\"regular\"],\"beneficiary_address\":[],\"beneficiary_country\":null,\"beneficiary_entity_type\":null,\"beneficiary_company_name\":null,\"beneficiary_first_name\":null,\"beneficiary_last_name\":null,\"beneficiary_city\":null,\"beneficiary_postcode\":null,\"beneficiary_state_or_province\":null,\"beneficiary_date_of_birth\":null,\"beneficiary_identification_type\":null,\"beneficiary_identification_value\":null,\"bank_country\":\"GB\",\"bank_name\":\"TEST
104
+ BANK NAME\",\"bank_account_type\":null,\"currency\":\"GBP\",\"account_number\":\"1204567890003466\",\"routing_code_type_1\":\"sort_code\",\"routing_code_value_1\":\"990901\",\"routing_code_type_2\":null,\"routing_code_value_2\":null,\"bic_swift\":null,\"iban\":null,\"default_beneficiary\":\"false\",\"creator_contact_id\":\"871b9f2f-f8a3-4010-b084-43e48ab4f404\",\"bank_address\":[\"TEST
105
+ BANK ADDRESS\",\" NOT USING EXTERNAL SERVICE\",\" DEVELOPMENT ENVIRONMENT.\"],\"created_at\":\"2018-07-06T14:21:12+00:00\",\"updated_at\":\"2018-07-06T14:21:12+00:00\",\"beneficiary_external_reference\":null}"
106
+ http_version:
107
+ recorded_at: Fri, 06 Jul 2018 14:21:12 GMT
108
+ - request:
109
+ method: post
110
+ uri: https://devapi.currencycloud.com/v2/payments/create
111
+ body:
112
+ encoding: UTF-8
113
+ string: currency=GBP&beneficiary_id=85fa1f38-9813-4f1e-b93d-6cde70f78562&amount=1500&reason=SDK%20payment%20testing&reference=My%20reference%20code&payment_type=regular
114
+ headers:
115
+ X-Auth-Token:
116
+ - deadbeefdeadbeefdeadbeefdeadbeef
117
+ User-Agent:
118
+ - CurrencyCloudSDK/2.0 Ruby/0.9.0
119
+ response:
120
+ status:
121
+ code: 200
122
+ message: OK
123
+ headers:
124
+ Date:
125
+ - Fri, 06 Jul 2018 14:21:13 GMT
126
+ Content-Type:
127
+ - application/json;charset=utf-8
128
+ Transfer-Encoding:
129
+ - chunked
130
+ Connection:
131
+ - keep-alive
132
+ Set-Cookie:
133
+ - AWSALB=szirMTHmFZi7rhjL8ML3AKAy+pe5iYY0yzxoOv7Gb3a+Rkk6oEXYGyyFMQn1k6LKFoX+InQg1ZQ1p6APl4TVKniLzJq2GEokcP2H0IlP3r6QUQRjqxfgSf0Gn6ns;
134
+ Expires=Fri, 13 Jul 2018 14:21:12 GMT; Path=/
135
+ - __cfduid=d79fa551e7fd28537f0121f6dac28782d1530886872; expires=Sat, 06-Jul-19
136
+ 14:21:12 GMT; path=/; domain=.currencycloud.com; HttpOnly
137
+ Access-Control-Allow-Origin:
138
+ - "*"
139
+ X-Request-Id:
140
+ - 16f54452-a822-4cce-9a1a-53dc2099ecef
141
+ Access-Control-Allow-Methods:
142
+ - POST
143
+ X-Content-Type-Options:
144
+ - nosniff
145
+ Vary:
146
+ - Origin
147
+ Access-Control-Allow-Headers:
148
+ - authorization,Access-Control-Allow-Origin,Content-Type,SOAPAction,X-Auth-Token,Origin,Authority
149
+ Expect-Ct:
150
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
151
+ Server:
152
+ - cloudflare
153
+ Cf-Ray:
154
+ - 4362b769cc50bbc6-LHR
155
+ body:
156
+ encoding: UTF-8
157
+ string: "{\"id\":\"2d13f7af-8341-4685-9e30-a56034e4f803\",\"amount\":\"1500.00\",\"beneficiary_id\":\"85fa1f38-9813-4f1e-b93d-6cde70f78562\",\"currency\":\"GBP\",\"reference\":\"My
158
+ reference code\",\"reason\":\"SDK payment testing\",\"status\":\"awaiting_authorisation\",\"creator_contact_id\":\"871b9f2f-f8a3-4010-b084-43e48ab4f404\",\"payment_type\":\"regular\",\"payment_date\":\"2018-07-06\",\"transferred_at\":\"\",\"authorisation_steps_required\":\"1\",\"last_updater_contact_id\":\"871b9f2f-f8a3-4010-b084-43e48ab4f404\",\"short_reference\":\"180706-GJYCZS001\",\"conversion_id\":null,\"failure_reason\":\"\",\"payer_id\":\"2bb67b68-6da1-4823-8bb5-b578ee09a8fa\",\"payer_details_source\":\"account\",\"created_at\":\"2018-07-06T14:21:13+00:00\",\"updated_at\":\"2018-07-06T14:21:13+00:00\",\"payment_group_id\":null,\"unique_request_id\":null,\"failure_returned_amount\":\"0.00\",\"ultimate_beneficiary_name\":null}"
159
+ http_version:
160
+ recorded_at: Fri, 06 Jul 2018 14:21:13 GMT
161
+ - request:
162
+ method: post
163
+ uri: https://devapi.currencycloud.com/v2/authenticate/api
164
+ body:
165
+ encoding: UTF-8
166
+ string: login_id=development+authorisations%40currencycloud.com&api_key=deadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef
167
+ headers:
168
+ User-Agent:
169
+ - CurrencyCloudSDK/2.0 Ruby/0.9.0
170
+ response:
171
+ status:
172
+ code: 200
173
+ message: OK
174
+ headers:
175
+ Date:
176
+ - Fri, 06 Jul 2018 14:21:15 GMT
177
+ Content-Type:
178
+ - application/json;charset=utf-8
179
+ Transfer-Encoding:
180
+ - chunked
181
+ Connection:
182
+ - keep-alive
183
+ Set-Cookie:
184
+ - AWSALB=nmKkqiUGMazknVlvabVCLr5HZL0hAD3wsUMhGLTKWuJPUePPdw/yKCL81qTyMGjgzwcqWX9JJZxfjk1Kol2qktZH66Fma/5Hz4M14MzIcCWDngs/j7uSehPA9czY;
185
+ Expires=Fri, 13 Jul 2018 14:21:13 GMT; Path=/
186
+ - __cfduid=d983a84d8a0b501bb1354494398e0d7691530886873; expires=Sat, 06-Jul-19
187
+ 14:21:13 GMT; path=/; domain=.currencycloud.com; HttpOnly
188
+ Access-Control-Allow-Origin:
189
+ - "*"
190
+ X-Request-Id:
191
+ - 33ba6e6a-e237-4840-b53d-58d911fb7148
192
+ Access-Control-Allow-Methods:
193
+ - POST
194
+ X-Content-Type-Options:
195
+ - nosniff
196
+ Vary:
197
+ - Origin
198
+ Access-Control-Allow-Headers:
199
+ - authorization,Access-Control-Allow-Origin,Content-Type,SOAPAction,X-Auth-Token,Origin,Authority
200
+ Expect-Ct:
201
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
202
+ Server:
203
+ - cloudflare
204
+ Cf-Ray:
205
+ - 4362b76e3e7cbbc0-LHR
206
+ body:
207
+ encoding: UTF-8
208
+ string: "{\"auth_token\":\"deadbeefdeadbeefdeadbeefdeadbeef\"}"
209
+ http_version:
210
+ recorded_at: Fri, 06 Jul 2018 14:21:15 GMT
211
+ - request:
212
+ method: post
213
+ uri: https://devapi.currencycloud.com/v2/payments/authorise
214
+ body:
215
+ encoding: UTF-8
216
+ string: payment_ids[]=2d13f7af-8341-4685-9e30-a56034e4f803
217
+ headers:
218
+ X-Auth-Token:
219
+ - deadbeefdeadbeefdeadbeefdeadbeef
220
+ User-Agent:
221
+ - CurrencyCloudSDK/2.0 Ruby/0.9.0
222
+ response:
223
+ status:
224
+ code: 200
225
+ message: OK
226
+ headers:
227
+ Date:
228
+ - Fri, 06 Jul 2018 14:21:15 GMT
229
+ Content-Type:
230
+ - application/json;charset=utf-8
231
+ Transfer-Encoding:
232
+ - chunked
233
+ Connection:
234
+ - keep-alive
235
+ Set-Cookie:
236
+ - AWSALB=HzDAF8qdhjIxhpW9bvpnGUCSvdAhIdLLNWfYeiJjtrFJ4A1j42wwTdN/+juqQHWFntJ3I386t2bnH7xgqDueuGSKYbMzaYyRpCjgTx8D0sdMzRfQnsm/d077c/Ls;
237
+ Expires=Fri, 13 Jul 2018 14:21:15 GMT; Path=/
238
+ - __cfduid=dc4ff0ca8d5a551be587e29fb0c7efdef1530886875; expires=Sat, 06-Jul-19
239
+ 14:21:15 GMT; path=/; domain=.currencycloud.com; HttpOnly
240
+ Access-Control-Allow-Origin:
241
+ - "*"
242
+ X-Request-Id:
243
+ - 9cbaadab-1df6-422a-8a82-5ffb43775d28
244
+ Access-Control-Allow-Methods:
245
+ - POST
246
+ X-Content-Type-Options:
247
+ - nosniff
248
+ Vary:
249
+ - Origin
250
+ Access-Control-Allow-Headers:
251
+ - authorization,Access-Control-Allow-Origin,Content-Type,SOAPAction,X-Auth-Token,Origin,Authority
252
+ Expect-Ct:
253
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
254
+ Server:
255
+ - cloudflare
256
+ Cf-Ray:
257
+ - 4362b7796cdbbbc0-LHR
258
+ body:
259
+ encoding: UTF-8
260
+ string: "{\"authorisations\":[{\"payment_id\":\"2d13f7af-8341-4685-9e30-a56034e4f803\",\"payment_status\":\"authorised\",\"updated\":true,\"error\":null,\"auth_steps_taken\":1,\"auth_steps_required\":1,\"short_reference\":\"180706-GJYCZS001\"}]}"
261
+ http_version:
262
+ recorded_at: Fri, 06 Jul 2018 14:21:15 GMT
263
+ recorded_with: VCR 2.9.3