spree_braintree_vzero 3.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (169) hide show
  1. checksums.yaml +7 -0
  2. data/.codeclimate.yml +15 -0
  3. data/.gitignore +19 -0
  4. data/.rspec +1 -0
  5. data/.travis.yml +63 -0
  6. data/Appraisals +45 -0
  7. data/CONTRIBUTING.md +28 -0
  8. data/Gemfile +14 -0
  9. data/LICENSE +26 -0
  10. data/README.md +83 -0
  11. data/Rakefile +21 -0
  12. data/app/assets/images/credit_cards/icons/jcb.png +0 -0
  13. data/app/assets/javascripts/spree/backend/payments.js +19 -0
  14. data/app/assets/javascripts/spree/backend/spree_braintree_vzero.js +81 -0
  15. data/app/assets/javascripts/spree/frontend/spree_braintree_vzero.js +68 -0
  16. data/app/assets/stylesheets/spree/backend/spree_braintree_vzero.css +5 -0
  17. data/app/controllers/spree/admin/payments_controller_decorator.rb +43 -0
  18. data/app/controllers/spree/api/v1/braintree_client_token_controller.rb +31 -0
  19. data/app/controllers/spree/checkout_controller_decorator.rb +38 -0
  20. data/app/controllers/spree/orders_controller_decorator.rb +62 -0
  21. data/app/controllers/spree/user_sessions_controller_decorator.rb +15 -0
  22. data/app/helpers/spree/admin/decorated_navigation_helper.rb +10 -0
  23. data/app/helpers/spree/admin/payment_methods_helper.rb +101 -0
  24. data/app/helpers/spree/braintree_helper.rb +27 -0
  25. data/app/models/braintree/successful_result_decorator.rb +21 -0
  26. data/app/models/spree/address_decorator.rb +18 -0
  27. data/app/models/spree/braintree_checkout.rb +105 -0
  28. data/app/models/spree/gateway/braintree_vzero_base.rb +168 -0
  29. data/app/models/spree/gateway/braintree_vzero_base/address.rb +33 -0
  30. data/app/models/spree/gateway/braintree_vzero_base/braintree_user.rb +25 -0
  31. data/app/models/spree/gateway/braintree_vzero_base/purchase_data.rb +48 -0
  32. data/app/models/spree/gateway/braintree_vzero_base/transaction.rb +39 -0
  33. data/app/models/spree/gateway/braintree_vzero_base/utils.rb +108 -0
  34. data/app/models/spree/gateway/braintree_vzero_drop_in_ui.rb +24 -0
  35. data/app/models/spree/gateway/braintree_vzero_hosted_fields.rb +28 -0
  36. data/app/models/spree/gateway/braintree_vzero_paypal_express.rb +36 -0
  37. data/app/models/spree/order_decorator.rb +153 -0
  38. data/app/models/spree/payment_decorator.rb +10 -0
  39. data/app/models/spree/payment_processing_decorator.rb +61 -0
  40. data/app/models/spree/preferences/preferable_decorator.rb +54 -0
  41. data/app/overrides/spree/admin/orders/customer_details/_form.rb +8 -0
  42. data/app/overrides/spree/admin/payment_methods/_form.rb +10 -0
  43. data/app/overrides/spree/admin/shared/_order_summary.rb +23 -0
  44. data/app/overrides/spree/admin/shared/_refunds.rb +13 -0
  45. data/app/overrides/spree/checkout/_new_user.rb +6 -0
  46. data/app/overrides/spree/checkout/_payment.rb +20 -0
  47. data/app/overrides/spree/checkout/registration.rb +6 -0
  48. data/app/overrides/spree/orders/edit.rb +6 -0
  49. data/app/overrides/spree/shared/_order_details.rb +13 -0
  50. data/app/overrides/spree/shared/_payment.rb +28 -0
  51. data/app/views/spree/admin/payment_methods/_braintree_vzero_form.html.erb +83 -0
  52. data/app/views/spree/admin/payments/source_forms/_braintree_vzero_dropin_ui.html.erb +1 -0
  53. data/app/views/spree/admin/payments/source_forms/_braintree_vzero_hosted_fields.html.erb +1 -0
  54. data/app/views/spree/admin/payments/source_forms/_braintree_vzero_paypal_express.html.erb +1 -0
  55. data/app/views/spree/admin/payments/source_forms/braintree_vzero/_payments.html.erb +87 -0
  56. data/app/views/spree/admin/payments/source_views/_braintree_vzero_dropin_ui.html.erb +1 -0
  57. data/app/views/spree/admin/payments/source_views/_braintree_vzero_hosted_fields.html.erb +1 -0
  58. data/app/views/spree/admin/payments/source_views/_braintree_vzero_paypal_express.html.erb +1 -0
  59. data/app/views/spree/admin/payments/source_views/braintree_vzero/_payment.html.erb +17 -0
  60. data/app/views/spree/braintree_vzero/_paypal_checkout.html.erb +87 -0
  61. data/app/views/spree/checkout/payment/_braintree_vzero_dropin_ui.html.erb +4 -0
  62. data/app/views/spree/checkout/payment/_braintree_vzero_hosted_fields.html.erb +4 -0
  63. data/app/views/spree/checkout/payment/_braintree_vzero_paypal_express.html.erb +4 -0
  64. data/app/views/spree/checkout/payment/braintree_vzero/_buttons.html.erb +11 -0
  65. data/app/views/spree/checkout/payment/braintree_vzero/_dropin_on_error_callback.js.erb +3 -0
  66. data/app/views/spree/checkout/payment/braintree_vzero/_dropin_on_ready_callback.js.erb +1 -0
  67. data/app/views/spree/checkout/payment/braintree_vzero/_hosted_fields_on_field_event_callback.js.erb +12 -0
  68. data/app/views/spree/checkout/payment/braintree_vzero/_hosted_fields_styles.js.erb +29 -0
  69. data/app/views/spree/checkout/payment/braintree_vzero/_payment.html.erb +84 -0
  70. data/app/views/spree/checkout/payment/braintree_vzero/_three_d_secure.html.erb +218 -0
  71. data/app/views/spree/shared/braintree_vzero/_dropin.js.erb +70 -0
  72. data/app/views/spree/shared/braintree_vzero/_hosted.js.erb +66 -0
  73. data/app/views/spree/shared/braintree_vzero/_paypal.js.erb +39 -0
  74. data/bin/rails +7 -0
  75. data/config/initializers/extend_spree_permitted_checkout_attributes.rb +5 -0
  76. data/config/initializers/prepend_helpers.rb +1 -0
  77. data/config/locales/en.yml +79 -0
  78. data/config/routes.rb +7 -0
  79. data/db/migrate/20150904143013_create_spree_braintree_checkouts.rb +9 -0
  80. data/db/migrate/20151002094655_add_braintree_id_to_spree_addresses.rb +5 -0
  81. data/db/migrate/20151018123907_add_braintree_token_and_nonce_to_spree_payments.rb +6 -0
  82. data/db/migrate/20151027135109_add_paypal_email_to_spree_braintree_checkout.rb +5 -0
  83. data/db/migrate/20151028095515_add_advanced_fraud_data_to_spree_braintree_checkout.rb +5 -0
  84. data/db/migrate/20151202095956_add_risk_id_and_risk_decision_to_spree_braintree_checkouts.rb +6 -0
  85. data/db/migrate/20151211100203_add_braintree_last_digits_and_braintree_card_type_to_spree_braintree_checkouts.rb +6 -0
  86. data/db/migrate/20160112153422_add_admin_payment_to_spree_braintree_checkout.rb +5 -0
  87. data/gemfiles/spree_3_5.gemfile +12 -0
  88. data/gemfiles/spree_3_5_spree_auth_devise.gemfile +13 -0
  89. data/gemfiles/spree_3_7.gemfile +12 -0
  90. data/gemfiles/spree_3_7_spree_auth_devise.gemfile +13 -0
  91. data/gemfiles/spree_4_0.gemfile +11 -0
  92. data/gemfiles/spree_4_0_spree_auth_devise.gemfile +12 -0
  93. data/gemfiles/spree_master.gemfile +11 -0
  94. data/gemfiles/spree_master_spree_auth_devise.gemfile +12 -0
  95. data/lib/generators/spree_braintree_vzero/install/install_generator.rb +34 -0
  96. data/lib/spree_braintree_vzero.rb +6 -0
  97. data/lib/spree_braintree_vzero/engine.rb +28 -0
  98. data/lib/spree_braintree_vzero/factories.rb +10 -0
  99. data/lib/spree_braintree_vzero/railtie.rb +8 -0
  100. data/lib/spree_braintree_vzero/version.rb +17 -0
  101. data/lib/tasks/spree_braintree_vzero.rake +6 -0
  102. data/spec/controllers/spree/api/v1/braintree_client_token_controller_spec.rb +49 -0
  103. data/spec/controllers/spree/checkout_controller_spec.rb +85 -0
  104. data/spec/controllers/spree/orders_controller_spec.rb +97 -0
  105. data/spec/factories/braintree_checkout_factory.rb +7 -0
  106. data/spec/factories/braintree_gateway_factory.rb +35 -0
  107. data/spec/factories/payment_factory_decorator.rb +28 -0
  108. data/spec/features/spree/admin/log_entries_spec.rb +63 -0
  109. data/spec/models/gateway/braintree_vzero_base/address_spec.rb +28 -0
  110. data/spec/models/gateway/braintree_vzero_base/purchase_data_spec.rb +57 -0
  111. data/spec/models/gateway/braintree_vzero_base_spec.rb +346 -0
  112. data/spec/models/gateway/braintree_vzero_dropin_ui_spec.rb +35 -0
  113. data/spec/models/gateway/braintree_vzero_hosted_fields_spec.rb +35 -0
  114. data/spec/models/spree/order_spec.rb +186 -0
  115. data/spec/spec_helper.rb +100 -0
  116. data/spec/support/vcr.rb +10 -0
  117. data/spec/vcr/Log_entries/with_a_failed_log_entry/shows_a_failed_attempt.yml +91 -0
  118. data/spec/vcr/Log_entries/with_a_successful_log_entry/shows_a_successful_attempt.yml +113 -0
  119. data/spec/vcr/Spree_Api_V1_BraintreeClientTokenController/POST_create/guest_checkout/returns_proper_json_data_when_gateway_not_specified.yml +90 -0
  120. data/spec/vcr/Spree_Api_V1_BraintreeClientTokenController/POST_create/guest_checkout/returns_proper_json_data_when_gateway_specified.yml +90 -0
  121. data/spec/vcr/Spree_Api_V1_BraintreeClientTokenController/POST_create/user_checkout/returns_proper_json_data_when_gateway_not_specified.yml +191 -0
  122. data/spec/vcr/Spree_Api_V1_BraintreeClientTokenController/POST_create/user_checkout/returns_proper_json_data_when_gateway_specified.yml +191 -0
  123. data/spec/vcr/Spree_CheckoutController/_update/braintree_payment/advanced_fraud_data_in_source_should_be_updated.yml +71 -0
  124. data/spec/vcr/Spree_CheckoutController/_update/braintree_payment/when_token_credit_card_data_in_source_should_be_updated_from_Braintree_Vault.yml +139 -0
  125. data/spec/vcr/Spree_CheckoutController/_update/braintree_paypal_express_payment/amount_in_payment_should_be_updated.yml +280 -0
  126. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_capture/captures_authorized_amount/updates_Payment_state.yml +206 -0
  127. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_credit/with_refundable_state/should_be_a_success.yml +211 -0
  128. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_credit/with_unrefundable_state/should_not_be_a_success.yml +177 -0
  129. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/data_from_admin_panel/should_include_only_essential_data.yml +78 -0
  130. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/does_not_store_Transaction_in_Vault_by_default.yml +111 -0
  131. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/returns_false_with_invalid_nonce.yml +88 -0
  132. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/returns_false_with_invalid_token.yml +88 -0
  133. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/returns_success_with_valid_token.yml +113 -0
  134. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/returns_suceess_with_valid_nonce.yml +111 -0
  135. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/using_Vault/saves_Braintree_Address_id_to_Spree_Address_when_address_is_being_saved.yml +130 -0
  136. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/using_Vault/saves_unique_Braintree_Addresses_ids.yml +143 -0
  137. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/using_Vault/sends_empty_address_id_when_address_is_already_in_vault.yml +553 -0
  138. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/using_Vault/stores_Transaction.yml +181 -0
  139. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/with_3DSecure_option_turned_on/performs_3DSecure_check.yml +112 -0
  140. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/with_3DSecure_option_turned_on/returns_error.yml +112 -0
  141. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/with_advanced_fraud_tool_enabled/returns_fraud_data.yml +111 -0
  142. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/with_advanced_fraud_tool_enabled/returns_success.yml +111 -0
  143. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_settle/settles_authorized_amount/does_not_update_Order_payment_state.yml +204 -0
  144. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_settle/settles_authorized_amount/prepares_Checkout_for_status_updating.yml +204 -0
  145. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_settle/settles_authorized_amount/submits_Transaction_for_settlement.yml +377 -0
  146. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_settle/settles_authorized_amount/updates_Payment_state.yml +203 -0
  147. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_update_states/does_not_update_completed_Checkout_on_subsequent_runs.yml +202 -0
  148. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_update_states/updates_Order_payment_state_when_Checkout_is_updated.yml +202 -0
  149. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_update_states/updates_Payment_state_when_Checkout_is_updated.yml +202 -0
  150. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_update_states/updates_payment_State.yml +202 -0
  151. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_void/with_unvoidable_state/should_not_change_payment_source_state.yml +178 -0
  152. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_void/with_voidable_state/should_change_payment_source_state_to_voided.yml +199 -0
  153. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/generates_token_for_User_registered_in_Braintree.yml +356 -0
  154. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/generates_token_for_new_User.yml +189 -0
  155. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/generates_token_without_User.yml +89 -0
  156. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/with_invalid_credentials/raises_Braintree_error.yml +62 -0
  157. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase_Address/_create/creates_Braintree_Address.yml +84 -0
  158. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase_Address/_create/deletes_Braintree_Address.yml +141 -0
  159. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase_Address/_create/finds_Braintree_Address.yml +148 -0
  160. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase_Address/_create/updates_Braintree_Address.yml +154 -0
  161. data/spec/vcr/Spree_Order/complete_with_braintree_vzero_standard_payment/with_auto_capture/should_complete_payment.yml +116 -0
  162. data/spec/vcr/Spree_Order/complete_with_braintree_vzero_standard_payment/with_auto_capture/should_update_payment_s_response_code.yml +111 -0
  163. data/spec/vcr/Spree_Order/complete_with_braintree_vzero_standard_payment/with_auto_capture/should_update_payment_s_source_state_and_transaction_id.yml +111 -0
  164. data/spec/vcr/Spree_Order/complete_with_braintree_vzero_standard_payment/without_auto_capture/should_pend_payment.yml +111 -0
  165. data/spec/vcr/Spree_Order/complete_with_braintree_vzero_standard_payment/without_auto_capture/should_update_payment_s_response_code.yml +111 -0
  166. data/spec/vcr/Spree_Order/complete_with_braintree_vzero_standard_payment/without_auto_capture/should_update_payment_s_source_state_and_transaction_id.yml +110 -0
  167. data/spree_braintree_vzero.gemspec +52 -0
  168. data/vendor/assets/javascripts/maskedinput/jquery.maskedinput.min.js +7 -0
  169. metadata +643 -0
@@ -0,0 +1,154 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://yd57hn7c4r5bhp8g:1cc8b0097ef43165847630438f864834@api.sandbox.braintreegateway.com/merchants/yccdpmn3cvtjbgnr/customers/1/addresses
6
+ body:
7
+ encoding: UTF-8
8
+ string: |
9
+ <?xml version="1.0" encoding="UTF-8"?>
10
+ <address>
11
+ <company>Company</company>
12
+ <country-code-alpha2>US</country-code-alpha2>
13
+ <country-code-alpha3>USA</country-code-alpha3>
14
+ <country-code-numeric type="integer">840</country-code-numeric>
15
+ <country-name>United States of America</country-name>
16
+ <first-name>John</first-name>
17
+ <last-name>Doe</last-name>
18
+ <locality>Herndon</locality>
19
+ <postal-code>35005</postal-code>
20
+ <region>AL</region>
21
+ <street-address>10 Lovely Street</street-address>
22
+ <extended-address>Northwest</extended-address>
23
+ </address>
24
+ headers:
25
+ Accept-Encoding:
26
+ - gzip
27
+ Accept:
28
+ - application/xml
29
+ User-Agent:
30
+ - Braintree Ruby Gem 2.49.0
31
+ X-Apiversion:
32
+ - '4'
33
+ Content-Type:
34
+ - application/xml
35
+ response:
36
+ status:
37
+ code: 201
38
+ message: Created
39
+ headers:
40
+ Date:
41
+ - Tue, 13 Oct 2015 14:08:24 GMT
42
+ Content-Type:
43
+ - application/xml; charset=utf-8
44
+ Transfer-Encoding:
45
+ - chunked
46
+ Connection:
47
+ - close
48
+ X-Authentication:
49
+ - basic_auth
50
+ Strict-Transport-Security:
51
+ - max-age=31536000
52
+ - max-age=31536000; includeSubDomains
53
+ X-User:
54
+ - 97syg9czj6hrdzyn
55
+ Vary:
56
+ - Accept-Encoding
57
+ Content-Encoding:
58
+ - gzip
59
+ X-Ua-Compatible:
60
+ - IE=Edge,chrome=1
61
+ Etag:
62
+ - '"0e82d90b77b9f4bd942ef02a80dc036f"'
63
+ Cache-Control:
64
+ - max-age=0, private, must-revalidate
65
+ X-Request-Id:
66
+ - 4372d04733cabab547bb62ba10a8b629
67
+ X-Runtime:
68
+ - '0.092786'
69
+ X-Frame-Options:
70
+ - SAMEORIGIN
71
+ body:
72
+ encoding: ASCII-8BIT
73
+ string: !binary |-
74
+ H4sIAFgQHVYAA5RST2/CIBS/+ylI7wxqNTEGMWbLsixmF/WyGylPJWmhAers
75
+ tx9UbRv14gl+/14e78GW57JAJ7BOGb1I0jeaINC5kUofFslu+4lnyZKPmJDS
76
+ gnN8hBBTknvHSDgiymvnTQkWB5wyMoRR3ivrPNaiBP5tjpqRARH1QtzQhwFG
77
+ etjWNmUldMPfL2eofiWi6LwF8PjWWUrR2pygaNCmFRi5M8QMnD1oCbIjf4z1
78
+ xz9wwf6gte2ZXBTKN/wLrJYm9N8xUbZwCHPjqzUj12tkK+O8KHCYIvBsSumU
79
+ kSF1eVmtvW1aAouiOoox323iAx/55/4s+FfPAtljQNdhIyrnswm9S9yUYaQd
80
+ /04rDzLMUnhwyOzRqjWKPt9vyUIwhbl55JsKFokM0KsSEj6m6RSnFKfZNp3M
81
+ 6Ww+nvyGCl2gzdeVfC3fB8LPJN26/gEAAP//AwCaLVqRzAIAAA==
82
+ http_version:
83
+ recorded_at: Tue, 13 Oct 2015 14:08:24 GMT
84
+ - request:
85
+ method: put
86
+ uri: https://yd57hn7c4r5bhp8g:1cc8b0097ef43165847630438f864834@api.sandbox.braintreegateway.com/merchants/yccdpmn3cvtjbgnr/customers/1/addresses/ts
87
+ body:
88
+ encoding: UTF-8
89
+ string: |
90
+ <?xml version="1.0" encoding="UTF-8"?>
91
+ <address>
92
+ <first-name>new_name</first-name>
93
+ </address>
94
+ headers:
95
+ Accept-Encoding:
96
+ - gzip
97
+ Accept:
98
+ - application/xml
99
+ User-Agent:
100
+ - Braintree Ruby Gem 2.49.0
101
+ X-Apiversion:
102
+ - '4'
103
+ Content-Type:
104
+ - application/xml
105
+ response:
106
+ status:
107
+ code: 200
108
+ message: OK
109
+ headers:
110
+ Date:
111
+ - Tue, 13 Oct 2015 14:08:25 GMT
112
+ Content-Type:
113
+ - application/xml; charset=utf-8
114
+ Transfer-Encoding:
115
+ - chunked
116
+ Connection:
117
+ - close
118
+ X-Authentication:
119
+ - basic_auth
120
+ Strict-Transport-Security:
121
+ - max-age=31536000
122
+ - max-age=31536000; includeSubDomains
123
+ X-User:
124
+ - 97syg9czj6hrdzyn
125
+ Vary:
126
+ - Accept-Encoding
127
+ Content-Encoding:
128
+ - gzip
129
+ X-Ua-Compatible:
130
+ - IE=Edge,chrome=1
131
+ Etag:
132
+ - '"93ed435c674ff5d4f439faf2083c4f41"'
133
+ Cache-Control:
134
+ - max-age=0, private, must-revalidate
135
+ X-Request-Id:
136
+ - a2da95ff3c0592cc958c60c5e62286c3
137
+ X-Runtime:
138
+ - '0.092180'
139
+ X-Frame-Options:
140
+ - SAMEORIGIN
141
+ body:
142
+ encoding: ASCII-8BIT
143
+ string: !binary |-
144
+ H4sIAFkQHVYAA4xST2/CIBS/+ylI76zU2sQYxJgtyw5mF/Wyy0LKU5u00ABV
145
+ ++33qNYa9bAT/P7B4z344lyV5AjWFUbPo+SNRQR0blSh9/Nou/mk02ghRlwq
146
+ ZcE5MSKEF0p4x2NcAsob500FliJOeHwPg7wrrPNUywqEhtNv2PD4jgyeUvbo
147
+ w6A6wO58U9VSt+L9suINVyKIzlsAT/vqEkZW5ghlS9adwOMHQ8jA2YNWoG7k
148
+ t7H+cAKH9ietK8/ksix8K77AamU0VtgzQbawx96J5YrH121ga+O8LCl2EkSa
149
+ MZbx+J66vKzR3rYdQWVZH+RYbNfhgc/8a3+K/uWrQPoc0A1OpcjFdMIeEr1y
150
+ H+nav9WFB4W9lB4cMTuy7IxyyA9TsoAm7Jsnvq1hHimEvqggEmOWZDRhNEk3
151
+ yWTGprPx5AdPuAW6fFOr/+czzA8B/J3xbVx/AAAA//8DANEe46/QAgAA
152
+ http_version:
153
+ recorded_at: Tue, 13 Oct 2015 14:08:25 GMT
154
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,116 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://yd57hn7c4r5bhp8g:1cc8b0097ef43165847630438f864834@api.sandbox.braintreegateway.com/merchants/yccdpmn3cvtjbgnr/transactions
6
+ body:
7
+ encoding: UTF-8
8
+ string: |
9
+ <?xml version="1.0" encoding="UTF-8"?>
10
+ <transaction>
11
+ <channel>SpreeCommerceInc_Cart_Braintree</channel>
12
+ <customer>
13
+ </customer>
14
+ <payment-method-nonce>fake-valid-nonce</payment-method-nonce>
15
+ <amount>12.73</amount>
16
+ <order-id>R501866290</order-id>
17
+ <descriptor>
18
+ <name></name>
19
+ </descriptor>
20
+ <options>
21
+ <submit-for-settlement type="boolean">true</submit-for-settlement>
22
+ <add-billing-address-to-payment-method type="boolean">false</add-billing-address-to-payment-method>
23
+ <three-d-secure>
24
+ <required type="boolean">false</required>
25
+ </three-d-secure>
26
+ <store-in-vault type="boolean">false</store-in-vault>
27
+ </options>
28
+ <type>sale</type>
29
+ </transaction>
30
+ headers:
31
+ Accept-Encoding:
32
+ - gzip
33
+ Accept:
34
+ - application/xml
35
+ User-Agent:
36
+ - Braintree Ruby Gem 2.58.0
37
+ X-Apiversion:
38
+ - '4'
39
+ Content-Type:
40
+ - application/xml
41
+ response:
42
+ status:
43
+ code: 201
44
+ message: Created
45
+ headers:
46
+ Date:
47
+ - Wed, 24 Feb 2016 09:40:20 GMT
48
+ Content-Type:
49
+ - application/xml; charset=utf-8
50
+ Transfer-Encoding:
51
+ - chunked
52
+ Connection:
53
+ - close
54
+ X-Frame-Options:
55
+ - SAMEORIGIN
56
+ - SAMEORIGIN
57
+ X-Xss-Protection:
58
+ - 1; mode=block
59
+ X-Content-Type-Options:
60
+ - nosniff
61
+ X-Authentication:
62
+ - basic_auth
63
+ X-User:
64
+ - 97syg9czj6hrdzyn
65
+ Vary:
66
+ - Accept-Encoding
67
+ Content-Encoding:
68
+ - gzip
69
+ Etag:
70
+ - W/"4a15270d3728736c1afdd8803590fbfc"
71
+ Cache-Control:
72
+ - max-age=0, private, must-revalidate
73
+ X-Request-Id:
74
+ - d45f79c6-fedf-472d-bfe0-cb4b8ab9a71e
75
+ X-Runtime:
76
+ - '2.233330'
77
+ Strict-Transport-Security:
78
+ - max-age=31536000; includeSubDomains
79
+ body:
80
+ encoding: ASCII-8BIT
81
+ string: !binary |-
82
+ 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
113
+ 9PxeYhMAAA==
114
+ http_version:
115
+ recorded_at: Wed, 24 Feb 2016 09:40:20 GMT
116
+ recorded_with: VCR 3.0.1
@@ -0,0 +1,111 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://yd57hn7c4r5bhp8g:1cc8b0097ef43165847630438f864834@api.sandbox.braintreegateway.com/merchants/yccdpmn3cvtjbgnr/transactions
6
+ body:
7
+ encoding: UTF-8
8
+ string: |
9
+ <?xml version="1.0" encoding="UTF-8"?>
10
+ <transaction>
11
+ <customer>
12
+ </customer>
13
+ <payment-method-nonce>fake-valid-nonce</payment-method-nonce>
14
+ <amount>20.00</amount>
15
+ <order-id>R049794534</order-id>
16
+ <descriptor>
17
+ <name></name>
18
+ </descriptor>
19
+ <options>
20
+ <submit-for-settlement type="boolean">true</submit-for-settlement>
21
+ <add-billing-address-to-payment-method type="boolean">false</add-billing-address-to-payment-method>
22
+ <three-d-secure>
23
+ <required type="boolean">false</required>
24
+ </three-d-secure>
25
+ <store-in-vault type="boolean">false</store-in-vault>
26
+ </options>
27
+ <type>sale</type>
28
+ </transaction>
29
+ headers:
30
+ Accept-Encoding:
31
+ - gzip
32
+ Accept:
33
+ - application/xml
34
+ User-Agent:
35
+ - Braintree Ruby Gem 2.49.0
36
+ X-Apiversion:
37
+ - '4'
38
+ Content-Type:
39
+ - application/xml
40
+ response:
41
+ status:
42
+ code: 201
43
+ message: Created
44
+ headers:
45
+ Date:
46
+ - Tue, 20 Oct 2015 12:37:18 GMT
47
+ Content-Type:
48
+ - application/xml; charset=utf-8
49
+ Transfer-Encoding:
50
+ - chunked
51
+ Connection:
52
+ - close
53
+ X-Authentication:
54
+ - basic_auth
55
+ X-User:
56
+ - 97syg9czj6hrdzyn
57
+ Vary:
58
+ - Accept-Encoding
59
+ Content-Encoding:
60
+ - gzip
61
+ X-Ua-Compatible:
62
+ - IE=Edge,chrome=1
63
+ Etag:
64
+ - '"73c328db49ec8ae8ab0b9c68268041c5"'
65
+ Cache-Control:
66
+ - max-age=0, private, must-revalidate
67
+ X-Request-Id:
68
+ - 46e378ec404a020266dc862d3d319b83
69
+ X-Runtime:
70
+ - '0.695855'
71
+ X-Frame-Options:
72
+ - SAMEORIGIN
73
+ Strict-Transport-Security:
74
+ - max-age=31536000; includeSubDomains
75
+ body:
76
+ encoding: ASCII-8BIT
77
+ string: !binary |-
78
+ H4sIAH41JlYAA+RYS2/jNhC+768wfGckOQ7iBIqCRbdbtIsW7e6mBXIJKGls
79
+ sZZIlaQcO7++Q4l6RVSSHvoAerNmPg45D858dHh7LPLFAaRigt8sgzN/uQCe
80
+ iJTx3c3y7utHslneRu9CLSlXNNGIit4tFiFLo/2VPj6loYc/jURpqisVqSou
81
+ mNaQPmyFfFCgdQ4FcB16FmCw+lRCpGgOoVf/NLKkkhJ3PhGmBMEDQPTt3efQ
82
+ m4oNmBai4jpa+We+H3r2yygKkElGuSY0SYyQ4OlUSeVeibwyp1eqfBIi9FxA
83
+ Y0DIFKT5+Oyvry6v1hfn69DrhPVBJVD0j1C9MIe/Wab4qVkBSzxPcEECn6z8
84
+ r8Hq+vzyOtjcowvdgnp9VaZ/bX2/wAZKaYHHNx91Jhac5TdLLStYela4ZVJp
85
+ wmkBDmVO53WJKErKTw4NFJTlDvkjxIppl60yE9wl39Ljc6nJc+9VGLM8xwL8
86
+ hz1UWgJgQaSpBKVcIThq4KnJxCwkFwnNmXaZl7DD+nPFSeDVyJvivloH/mXo
87
+ DUXtsbFI5Wneq0ZtVhCalxldvQl1/hqKV5gUlkwTNsgRurateEqmieo1yhY7
88
+ lZKeRkqM56C7uIzg/dUMw9F3k2crXMZppTMh2dPr5gdmY6qTzInJWFn+L0vy
89
+ hQL5z9TiMDu2P5ItgzxVthYOioCUQhKMUYlDAJyu1biB62N09CNOmhcBrYlx
90
+ 1p6Bvm+svIip3TgcpvtPhQa6w/HwSE+o+R2aKseJo6aJDUspEtwN49DeDlrD
91
+ a0vffHfx6eMv2HteAo2tjI8S+GYYz2lnVmqs4Oh9iZoDpM7VNaIObZoycxIM
92
+ /hQ28fUgWGIStMXE4wqsnRjkNCKVoQG4SzPiZ1CaHklDMpwqOEJRttM8FiIH
93
+ ypfRlubKEJwO0LIH9IIkVKa2xLXYg+sOxoxHaz9YbTam2fJhH1lHwWYThJ79
94
+ sFcFTZKaTv3KFMVa6b7bVlEy2aSyEFxnUbAKvYlwgj0BlUhMVv4IXEvtvnZy
95
+ E9NoaoJ496Wf5720P2Um8jrY7vbBCroDUsk8yrQu1bXnUYUtWp3FkjJuro2t
96
+ 9zPsm15JT6ZzPxSAtZo+5GInvAP6f1by3S3wA5OCG8CNojyNxRH5amff9joJ
97
+ JUVu95Mw5df8bjQZ0FxneGKI7viei0ceegNZA0ohZrrXN59WVUlMHNbgrsoN
98
+ gxugnmu6QWB4Kc66HjqQ2fPSkxT5ANEKbPiUqrAV4ijj+x4zko5bq9gSo6U8
99
+ QTe/vDc7ThVtqERaJTVX7nfvZQ2o4uyPCuxVQjEGn2Ezntwqc0eBF4KodD9z
100
+ dzq95Yjju2OfHCRjWGryNOIA3fysEYCGbFLMhUOujYqifCP/7vCdBfuU6SnG
101
+ 8HVTI+YeKE2EFPLcgm4ZcnvVEnlzsAFPUQI7E0S0RJBD3rjnTf37m11+y/Pu
102
+ 3wxAJ7FF0TT5nLqJXxWrRLJylhgO9F1TrlkvKZGIiJQg9yImls72PULisaR2
103
+ YvHIz/Yxk47gUHOw2pSp+no6ddBYEW1nnmmwc+8ybInTs42NImM0D3L0a+bG
104
+ dvpm2OELm8PUKub8YKbzFmBurpptxSNpsjnRYhjiSqqGtKeg8Wmq2qY7Urlz
105
+ M2D87u3HmMl/EG+Ew9EEAIeNdB/DvH6wUpGnugxWSeIg9JiRGd+N52WlwVUa
106
+ dkoSxpF3Vs0LyjCDpqM+mI4aenOgMXMbODomeEPyNgt63VZN916z1XFCydTe
107
+ ZJl2D7PoPPj53v/thw/3F58+tP9O1bcjYeZPrpZsmtK2kjqsI0uhzpBnELy2
108
+ pp4BQ7IV40yMmlL07k8AAAD//wMAsxc8LkgTAAA=
109
+ http_version:
110
+ recorded_at: Tue, 20 Oct 2015 12:37:18 GMT
111
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,111 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://yd57hn7c4r5bhp8g:1cc8b0097ef43165847630438f864834@api.sandbox.braintreegateway.com/merchants/yccdpmn3cvtjbgnr/transactions
6
+ body:
7
+ encoding: UTF-8
8
+ string: |
9
+ <?xml version="1.0" encoding="UTF-8"?>
10
+ <transaction>
11
+ <customer>
12
+ </customer>
13
+ <payment-method-nonce>fake-valid-nonce</payment-method-nonce>
14
+ <amount>20.00</amount>
15
+ <order-id>R826688162</order-id>
16
+ <descriptor>
17
+ <name></name>
18
+ </descriptor>
19
+ <options>
20
+ <submit-for-settlement type="boolean">true</submit-for-settlement>
21
+ <add-billing-address-to-payment-method type="boolean">false</add-billing-address-to-payment-method>
22
+ <three-d-secure>
23
+ <required type="boolean">false</required>
24
+ </three-d-secure>
25
+ <store-in-vault type="boolean">false</store-in-vault>
26
+ </options>
27
+ <type>sale</type>
28
+ </transaction>
29
+ headers:
30
+ Accept-Encoding:
31
+ - gzip
32
+ Accept:
33
+ - application/xml
34
+ User-Agent:
35
+ - Braintree Ruby Gem 2.49.0
36
+ X-Apiversion:
37
+ - '4'
38
+ Content-Type:
39
+ - application/xml
40
+ response:
41
+ status:
42
+ code: 201
43
+ message: Created
44
+ headers:
45
+ Date:
46
+ - Tue, 20 Oct 2015 12:37:11 GMT
47
+ Content-Type:
48
+ - application/xml; charset=utf-8
49
+ Transfer-Encoding:
50
+ - chunked
51
+ Connection:
52
+ - close
53
+ X-Authentication:
54
+ - basic_auth
55
+ X-User:
56
+ - 97syg9czj6hrdzyn
57
+ Vary:
58
+ - Accept-Encoding
59
+ Content-Encoding:
60
+ - gzip
61
+ X-Ua-Compatible:
62
+ - IE=Edge,chrome=1
63
+ Etag:
64
+ - '"93f563622a00cce999779f6f3f535698"'
65
+ Cache-Control:
66
+ - max-age=0, private, must-revalidate
67
+ X-Request-Id:
68
+ - 32f92bb5b27986894d8074a58f4692fb
69
+ X-Runtime:
70
+ - '2.697307'
71
+ X-Frame-Options:
72
+ - SAMEORIGIN
73
+ Strict-Transport-Security:
74
+ - max-age=31536000; includeSubDomains
75
+ body:
76
+ encoding: ASCII-8BIT
77
+ string: !binary |-
78
+ H4sIAHc1JlYAA+RYS2/jNhC+768wfGckOWk2GygK9tAWbdHFYrMpilwCShxb
79
+ rCVSJSnH3l/foUS9IirJpQ+gN2vm45Dz4MxHx7fHslgdQGkuxc06OgvXKxCZ
80
+ ZFzsbtb3X38gV+vb5F1sFBWaZgZRybvVKuYsSXf6fMviAH9aiTbU1DrRdVpy
81
+ Y4A9bqV61GBMASUIEwcOYLHmVEGiaQFx0Py0sqxWCnc+Ea4lwQNA8v39lziY
82
+ iy2YlrIWJtmEZ2EYB+7LKkpQWU6FITTLrJDg6XRF1V7Loran17r6JmUc+IDW
83
+ gFQMlP34crW5vLy6ii43cdALm4MqoOgfoWZlD3+zZvhpeAlrPE/0HYlCsgm/
84
+ Rpvr8/fX4YcHdKFf0KyvK/bm9VGE64cFLlDaSDy+/WgysRK8uFkbVcM6cMIt
85
+ V9oQQUvwKAu6rMtkWVFx8migpLzwyJ8g1dz4bFW5FD75lh6fS22eB6/ilBcF
86
+ FuA/7KE2CgALgjEFWvtCcDQgmM3EIqSQGS248ZlXsMP688VJ4tUo2uL+cBGF
87
+ 7+NgLOqOjUWqTstetWq7gtCiyunmTajz11CixqTwbJ6wUY7QtW0tGJknatBo
88
+ V+xUKXqaKDGeo+7iM4L313AMx9BNnq3wGae1yaXi3143PzKbUpPlXkzOq+p/
89
+ WZIvFMh/phbH2XH9kWw5FEy7WjhoAkpJRTBGFQ4B8LrW4EauT9HJrzhpXgR0
90
+ JqZZewb6qbXyIqZx43CY7z8XWugOx8MTPaHmD2irHCeOnic2rpTMcDeMQ3c7
91
+ aANvLD3cbc5//4S95yXQ1Mr0KFFoh/GSdmGlwQpOPlaoOQDzrm4QTWgZ4/Yk
92
+ GPw5bObrQfLMJmiLiccVWDspqHlEaksDcJd2xC+gDD2SlmR4VXCEsuqmeSpl
93
+ AVSsky0ttCU4PaBjD+gFyahirsSN3IPvDqZcJBdhtLm6ss1WjPvIRRIhM4kD
94
+ 9+GuCpokDZ36jWuKtdJ/d62i4qpNZSmFyZMImc1MOMOegCokJptwAm6kbl83
95
+ uYltNA1BvL8b5vkgHU6Zy6IJtr998JLugNSqSHJjKn0dBFRji9ZnqaJc2Gvj
96
+ 6v0M+2ZQ0ZPt3I8lYK2yx0LuZHBA/88qsbsFceBKCgu40VSwVB6Rr/b2Xa9T
97
+ UFHkdp+kLb/2d6vJgRYmxxNDci/2Qj6JOBjJWhCDlJtB3346Va0wcViDu7qw
98
+ DG6Eeq7pB4HlpTjrBuhI5s5LT0oWI0QncOHTusZWiKNM7AfMRDptrXJLrJaK
99
+ DN28+2h3nCu6UElWZw1XHnYfZC2oFvzPGtxVQjEGn2Mznt0qe0dBlJJotl+4
100
+ O73eccTp3XFPDpJzLDV1mnCAfn42CEBDLin2wiHXRkVZvZF/9/jegnvKDBRj
101
+ /LppEEsPlDZCGnluSbccub3uiLw92IinaImdCRJaIcgjb90L5v79zS6/5Xn3
102
+ bwagl7iiaJt8Qf3Er051pni1SAxH+r4pN6yXVEhEJCPIvYiNpbd9T5B4LGW8
103
+ WDzys33spCM41DyslnHdXE+vDlorsuvMCw126V2GLXF+tqlRZIz2QY5+LdzY
104
+ Xt8OO3xhC5hbxZwf7HTeAizNVbutfCJtNmdaDENaK92SdgYGn6a6a7oTlT83
105
+ I8bv336Kmf0H8UY4HG0AcNgo/zHs6wcrFXmqz2CdZR5CjxlZ8N16XtUGfKXh
106
+ piThAnln3b6gLDNoO+qj7ahxsASaMreRo1OCNyZvi6DXbTV07zVbPSdUXO9t
107
+ lmn/MEvOo88P4S8//3gR3n3u/p1qbkfG7Z9cHdm0pe0kTVgnlmKTI88geG1t
108
+ PQOGZCunmZg0peTdXwAAAP//AwBMtP3ISBMAAA==
109
+ http_version:
110
+ recorded_at: Tue, 20 Oct 2015 12:37:12 GMT
111
+ recorded_with: VCR 2.9.3