onlinepayments-sdk-ruby 4.22.0 → 5.0.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 (413) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +0 -0
  3. data/LICENSE.txt +0 -0
  4. data/README.md +5 -6
  5. data/Rakefile +0 -0
  6. data/lib/onlinepayments/sdk/api_exception.rb +47 -35
  7. data/lib/onlinepayments/sdk/api_resource.rb +49 -97
  8. data/lib/onlinepayments/sdk/authentication/authenticator.rb +19 -0
  9. data/lib/onlinepayments/sdk/authentication/authorization_type.rb +15 -0
  10. data/lib/onlinepayments/sdk/authentication/v1hmac_authenticator.rb +109 -0
  11. data/lib/onlinepayments/sdk/authentication.rb +1 -0
  12. data/lib/onlinepayments/sdk/authorization_exception.rb +14 -8
  13. data/lib/onlinepayments/sdk/call_context.rb +30 -21
  14. data/lib/onlinepayments/sdk/client.rb +36 -18
  15. data/lib/onlinepayments/sdk/communication/communication_exception.rb +19 -0
  16. data/lib/onlinepayments/sdk/communication/connection.rb +48 -0
  17. data/lib/onlinepayments/sdk/communication/default_connection.rb +427 -0
  18. data/lib/onlinepayments/sdk/communication/metadata_provider.rb +160 -0
  19. data/lib/onlinepayments/sdk/communication/multipart_form_data_object.rb +52 -0
  20. data/lib/onlinepayments/sdk/communication/multipart_form_data_request.rb +13 -0
  21. data/lib/onlinepayments/sdk/communication/not_found_exception.rb +19 -0
  22. data/lib/onlinepayments/sdk/communication/param_request.rb +14 -0
  23. data/lib/onlinepayments/sdk/communication/pooled_connection.rb +26 -0
  24. data/lib/onlinepayments/sdk/communication/request_header.rb +62 -0
  25. data/lib/onlinepayments/sdk/communication/request_param.rb +28 -0
  26. data/lib/onlinepayments/sdk/communication/response_exception.rb +56 -0
  27. data/lib/onlinepayments/sdk/communication/response_header.rb +78 -0
  28. data/lib/onlinepayments/sdk/communication.rb +1 -0
  29. data/lib/onlinepayments/sdk/communicator.rb +475 -268
  30. data/lib/onlinepayments/sdk/communicator_configuration.rb +162 -53
  31. data/lib/onlinepayments/sdk/declined_payment_exception.rb +28 -21
  32. data/lib/onlinepayments/sdk/declined_payout_exception.rb +28 -23
  33. data/lib/onlinepayments/sdk/declined_refund_exception.rb +28 -23
  34. data/lib/onlinepayments/sdk/declined_transaction_exception.rb +16 -10
  35. data/lib/onlinepayments/sdk/domain/account_on_file.rb +44 -35
  36. data/lib/onlinepayments/sdk/domain/account_on_file_attribute.rb +42 -28
  37. data/lib/onlinepayments/sdk/domain/account_on_file_display_hints.rb +29 -24
  38. data/lib/onlinepayments/sdk/domain/acquirer_information.rb +27 -22
  39. data/lib/onlinepayments/sdk/domain/acquirer_selection_information.rb +34 -24
  40. data/lib/onlinepayments/sdk/domain/additional_order_input.rb +43 -38
  41. data/lib/onlinepayments/sdk/domain/address.rb +65 -43
  42. data/lib/onlinepayments/sdk/domain/address_personal.rb +78 -48
  43. data/lib/onlinepayments/sdk/domain/airline_data.rb +204 -123
  44. data/lib/onlinepayments/sdk/domain/airline_flight_leg.rb +158 -95
  45. data/lib/onlinepayments/sdk/domain/airline_passenger.rb +59 -39
  46. data/lib/onlinepayments/sdk/domain/amount_breakdown.rb +27 -20
  47. data/lib/onlinepayments/sdk/domain/amount_of_money.rb +27 -20
  48. data/lib/onlinepayments/sdk/domain/api_error.rb +73 -47
  49. data/lib/onlinepayments/sdk/domain/apple_pay_line_item.rb +72 -0
  50. data/lib/onlinepayments/sdk/domain/apple_pay_recurring_payment_request.rb +61 -0
  51. data/lib/onlinepayments/sdk/domain/bank_account_iban.rb +20 -16
  52. data/lib/onlinepayments/sdk/domain/browser_data.rb +51 -35
  53. data/lib/onlinepayments/sdk/domain/calculate_surcharge_request.rb +27 -24
  54. data/lib/onlinepayments/sdk/domain/calculate_surcharge_response.rb +22 -20
  55. data/lib/onlinepayments/sdk/domain/cancel_payment_request.rb +27 -22
  56. data/lib/onlinepayments/sdk/domain/cancel_payment_response.rb +20 -18
  57. data/lib/onlinepayments/sdk/domain/capture.rb +41 -32
  58. data/lib/onlinepayments/sdk/domain/capture_output.rb +106 -78
  59. data/lib/onlinepayments/sdk/domain/capture_payment_request.rb +43 -26
  60. data/lib/onlinepayments/sdk/domain/capture_response.rb +41 -32
  61. data/lib/onlinepayments/sdk/domain/capture_status_output.rb +20 -16
  62. data/lib/onlinepayments/sdk/domain/captures_response.rb +22 -20
  63. data/lib/onlinepayments/sdk/domain/card.rb +41 -28
  64. data/lib/onlinepayments/sdk/domain/card_essentials.rb +41 -32
  65. data/lib/onlinepayments/sdk/domain/card_fraud_results.rb +34 -24
  66. data/lib/onlinepayments/sdk/domain/card_info.rb +27 -20
  67. data/lib/onlinepayments/sdk/domain/card_payment_method_specific_input.rb +199 -136
  68. data/lib/onlinepayments/sdk/domain/card_payment_method_specific_input_base.rb +149 -104
  69. data/lib/onlinepayments/sdk/domain/card_payment_method_specific_input_for_hosted_checkout.rb +36 -28
  70. data/lib/onlinepayments/sdk/domain/card_payment_method_specific_output.rb +133 -108
  71. data/lib/onlinepayments/sdk/domain/card_payout_method_specific_input.rb +41 -30
  72. data/lib/onlinepayments/sdk/domain/card_recurrence_details.rb +20 -16
  73. data/lib/onlinepayments/sdk/domain/card_source.rb +41 -30
  74. data/lib/onlinepayments/sdk/domain/card_without_cvv.rb +34 -24
  75. data/lib/onlinepayments/sdk/domain/company_information.rb +20 -16
  76. data/lib/onlinepayments/sdk/domain/complete_payment_card_payment_method_specific_input.rb +20 -18
  77. data/lib/onlinepayments/sdk/domain/complete_payment_request.rb +27 -24
  78. data/lib/onlinepayments/sdk/domain/complete_payment_response.rb +35 -31
  79. data/lib/onlinepayments/sdk/domain/contact_details.rb +51 -35
  80. data/lib/onlinepayments/sdk/domain/create_hosted_checkout_request.rb +76 -67
  81. data/lib/onlinepayments/sdk/domain/create_hosted_checkout_response.rb +60 -43
  82. data/lib/onlinepayments/sdk/domain/create_hosted_tokenization_request.rb +57 -50
  83. data/lib/onlinepayments/sdk/domain/create_hosted_tokenization_response.rb +57 -44
  84. data/lib/onlinepayments/sdk/domain/create_mandate_request.rb +71 -48
  85. data/lib/onlinepayments/sdk/domain/create_mandate_response.rb +27 -24
  86. data/lib/onlinepayments/sdk/domain/create_mandate_with_return_url.rb +71 -48
  87. data/lib/onlinepayments/sdk/domain/create_payment_link_request.rb +120 -87
  88. data/lib/onlinepayments/sdk/domain/create_payment_request.rb +82 -72
  89. data/lib/onlinepayments/sdk/domain/create_payment_response.rb +35 -31
  90. data/lib/onlinepayments/sdk/domain/create_payout_request.rb +61 -40
  91. data/lib/onlinepayments/sdk/domain/create_token_request.rb +27 -22
  92. data/lib/onlinepayments/sdk/domain/created_payment_output.rb +27 -22
  93. data/lib/onlinepayments/sdk/domain/created_token_response.rb +50 -38
  94. data/lib/onlinepayments/sdk/domain/credit_card_specific_input_hosted_tokenization.rb +29 -26
  95. data/lib/onlinepayments/sdk/domain/credit_card_validation_rules_hosted_tokenization.rb +27 -20
  96. data/lib/onlinepayments/sdk/domain/currency_conversion.rb +27 -22
  97. data/lib/onlinepayments/sdk/domain/currency_conversion_input.rb +27 -20
  98. data/lib/onlinepayments/sdk/domain/currency_conversion_request.rb +27 -24
  99. data/lib/onlinepayments/sdk/domain/currency_conversion_response.rb +34 -28
  100. data/lib/onlinepayments/sdk/domain/currency_conversion_result.rb +27 -20
  101. data/lib/onlinepayments/sdk/domain/currency_conversion_specific_input.rb +20 -16
  102. data/lib/onlinepayments/sdk/domain/customer.rb +87 -68
  103. data/lib/onlinepayments/sdk/domain/customer_account.rb +77 -55
  104. data/lib/onlinepayments/sdk/domain/customer_account_authentication.rb +34 -20
  105. data/lib/onlinepayments/sdk/domain/customer_bank_account.rb +34 -24
  106. data/lib/onlinepayments/sdk/domain/customer_device.rb +64 -44
  107. data/lib/onlinepayments/sdk/domain/customer_device_output.rb +20 -16
  108. data/lib/onlinepayments/sdk/domain/customer_output.rb +20 -18
  109. data/lib/onlinepayments/sdk/domain/customer_payment_activity.rb +34 -24
  110. data/lib/onlinepayments/sdk/domain/customer_token.rb +35 -31
  111. data/lib/onlinepayments/sdk/domain/data_object.rb +32 -0
  112. data/lib/onlinepayments/sdk/domain/dcc_card_source.rb +41 -30
  113. data/lib/onlinepayments/sdk/domain/dcc_proposal.rb +51 -41
  114. data/lib/onlinepayments/sdk/domain/decrypted_payment_data.rb +51 -35
  115. data/lib/onlinepayments/sdk/domain/directory_entry.rb +34 -24
  116. data/lib/onlinepayments/sdk/domain/discount.rb +20 -16
  117. data/lib/onlinepayments/sdk/domain/empty_validator.rb +7 -6
  118. data/lib/onlinepayments/sdk/domain/error_response.rb +29 -24
  119. data/lib/onlinepayments/sdk/domain/external_cardholder_authentication_data.rb +86 -55
  120. data/lib/onlinepayments/sdk/domain/external_token_linked.rb +35 -24
  121. data/lib/onlinepayments/sdk/domain/feedbacks.rb +30 -0
  122. data/lib/onlinepayments/sdk/domain/fixed_list_validator.rb +22 -20
  123. data/lib/onlinepayments/sdk/domain/fraud_fields.rb +37 -28
  124. data/lib/onlinepayments/sdk/domain/fraud_results.rb +20 -16
  125. data/lib/onlinepayments/sdk/domain/g_pay_three_d_secure.rb +50 -36
  126. data/lib/onlinepayments/sdk/domain/get_hosted_checkout_response.rb +27 -22
  127. data/lib/onlinepayments/sdk/domain/get_hosted_tokenization_response.rb +27 -22
  128. data/lib/onlinepayments/sdk/domain/get_iin_details_request.rb +27 -22
  129. data/lib/onlinepayments/sdk/domain/get_iin_details_response.rb +52 -38
  130. data/lib/onlinepayments/sdk/domain/get_mandate_response.rb +20 -18
  131. data/lib/onlinepayments/sdk/domain/get_payment_product_groups_response.rb +22 -20
  132. data/lib/onlinepayments/sdk/domain/get_payment_products_response.rb +22 -20
  133. data/lib/onlinepayments/sdk/domain/get_privacy_policy_response.rb +20 -16
  134. data/lib/onlinepayments/sdk/domain/gift_card_purchase.rb +27 -22
  135. data/lib/onlinepayments/sdk/domain/hosted_checkout_specific_input.rb +83 -56
  136. data/lib/onlinepayments/sdk/domain/hosted_checkout_specific_output.rb +27 -20
  137. data/lib/onlinepayments/sdk/domain/iin_detail.rb +34 -24
  138. data/lib/onlinepayments/sdk/domain/label_template_element.rb +27 -20
  139. data/lib/onlinepayments/sdk/domain/length_validator.rb +27 -20
  140. data/lib/onlinepayments/sdk/domain/line_item.rb +44 -31
  141. data/lib/onlinepayments/sdk/domain/line_item_invoice_data.rb +20 -16
  142. data/lib/onlinepayments/sdk/domain/loan_recipient.rb +51 -35
  143. data/lib/onlinepayments/sdk/domain/lodging_data.rb +20 -16
  144. data/lib/onlinepayments/sdk/domain/mandate_address.rb +51 -35
  145. data/lib/onlinepayments/sdk/domain/mandate_address_response.rb +58 -0
  146. data/lib/onlinepayments/sdk/domain/mandate_contact_details.rb +20 -16
  147. data/lib/onlinepayments/sdk/domain/mandate_customer.rb +52 -44
  148. data/lib/onlinepayments/sdk/domain/mandate_customer_response.rb +66 -0
  149. data/lib/onlinepayments/sdk/domain/mandate_merchant_action.rb +27 -22
  150. data/lib/onlinepayments/sdk/domain/mandate_personal_information.rb +27 -22
  151. data/lib/onlinepayments/sdk/domain/mandate_personal_information_response.rb +39 -0
  152. data/lib/onlinepayments/sdk/domain/mandate_personal_name.rb +27 -20
  153. data/lib/onlinepayments/sdk/domain/mandate_personal_name_response.rb +37 -0
  154. data/lib/onlinepayments/sdk/domain/mandate_redirect_data.rb +27 -20
  155. data/lib/onlinepayments/sdk/domain/mandate_response.rb +66 -42
  156. data/lib/onlinepayments/sdk/domain/merchant_action.rb +43 -28
  157. data/lib/onlinepayments/sdk/domain/mobile_payment_data.rb +27 -20
  158. data/lib/onlinepayments/sdk/domain/mobile_payment_method_hosted_checkout_specific_input.rb +43 -26
  159. data/lib/onlinepayments/sdk/domain/mobile_payment_method_specific_input.rb +71 -50
  160. data/lib/onlinepayments/sdk/domain/mobile_payment_method_specific_output.rb +56 -51
  161. data/lib/onlinepayments/sdk/domain/mobile_payment_product302_specific_input.rb +32 -0
  162. data/lib/onlinepayments/sdk/domain/mobile_payment_product320_specific_input.rb +20 -18
  163. data/lib/onlinepayments/sdk/domain/mobile_three_d_secure_challenge_parameters.rb +51 -0
  164. data/lib/onlinepayments/sdk/domain/multiple_payment_information.rb +37 -0
  165. data/lib/onlinepayments/sdk/domain/omnichannel_payout_specific_input.rb +20 -16
  166. data/lib/onlinepayments/sdk/domain/operation_output.rb +67 -45
  167. data/lib/onlinepayments/sdk/domain/operation_payment_references.rb +30 -0
  168. data/lib/onlinepayments/sdk/domain/order.rb +75 -66
  169. data/lib/onlinepayments/sdk/domain/order_line_details.rb +79 -47
  170. data/lib/onlinepayments/sdk/domain/order_references.rb +34 -24
  171. data/lib/onlinepayments/sdk/domain/order_status_output.rb +52 -38
  172. data/lib/onlinepayments/sdk/domain/order_type_information.rb +27 -20
  173. data/lib/onlinepayments/sdk/domain/other_details.rb +37 -0
  174. data/lib/onlinepayments/sdk/domain/payment_account_on_file.rb +27 -20
  175. data/lib/onlinepayments/sdk/domain/payment_context.rb +34 -26
  176. data/lib/onlinepayments/sdk/domain/payment_creation_output.rb +41 -28
  177. data/lib/onlinepayments/sdk/domain/payment_details_response.rb +60 -49
  178. data/lib/onlinepayments/sdk/domain/payment_error_response.rb +37 -31
  179. data/lib/onlinepayments/sdk/domain/payment_link_event.rb +34 -24
  180. data/lib/onlinepayments/sdk/domain/payment_link_order_input.rb +34 -28
  181. data/lib/onlinepayments/sdk/domain/payment_link_order_output.rb +34 -28
  182. data/lib/onlinepayments/sdk/domain/payment_link_response.rb +74 -51
  183. data/lib/onlinepayments/sdk/domain/payment_link_specific_input.rb +36 -24
  184. data/lib/onlinepayments/sdk/domain/payment_output.rb +115 -94
  185. data/lib/onlinepayments/sdk/domain/payment_product.rb +117 -85
  186. data/lib/onlinepayments/sdk/domain/payment_product130_specific_input.rb +20 -18
  187. data/lib/onlinepayments/sdk/domain/payment_product130_specific_three_d_secure.rb +41 -28
  188. data/lib/onlinepayments/sdk/domain/payment_product3012.rb +27 -20
  189. data/lib/onlinepayments/sdk/domain/payment_product3012_specific_input.rb +41 -28
  190. data/lib/onlinepayments/sdk/domain/payment_product302_specific_data.rb +22 -20
  191. data/lib/onlinepayments/sdk/domain/payment_product3203_specific_output.rb +40 -0
  192. data/lib/onlinepayments/sdk/domain/payment_product3208_specific_input.rb +20 -16
  193. data/lib/onlinepayments/sdk/domain/payment_product3208_specific_output.rb +20 -16
  194. data/lib/onlinepayments/sdk/domain/payment_product3209_specific_input.rb +20 -16
  195. data/lib/onlinepayments/sdk/domain/payment_product3209_specific_output.rb +20 -16
  196. data/lib/onlinepayments/sdk/domain/payment_product320_specific_data.rb +29 -24
  197. data/lib/onlinepayments/sdk/domain/payment_product5001_specific_output.rb +48 -16
  198. data/lib/onlinepayments/sdk/domain/payment_product5100_specific_input.rb +20 -16
  199. data/lib/onlinepayments/sdk/domain/payment_product5402_specific_output.rb +20 -16
  200. data/lib/onlinepayments/sdk/domain/payment_product5404.rb +27 -20
  201. data/lib/onlinepayments/sdk/domain/payment_product5407.rb +27 -20
  202. data/lib/onlinepayments/sdk/domain/payment_product5500_specific_output.rb +41 -24
  203. data/lib/onlinepayments/sdk/domain/payment_product771_specific_output.rb +20 -16
  204. data/lib/onlinepayments/sdk/domain/payment_product840_customer_account.rb +72 -47
  205. data/lib/onlinepayments/sdk/domain/payment_product840_specific_output.rb +43 -38
  206. data/lib/onlinepayments/sdk/domain/payment_product_display_hints.rb +34 -24
  207. data/lib/onlinepayments/sdk/domain/payment_product_field.rb +41 -32
  208. data/lib/onlinepayments/sdk/domain/payment_product_field_data_restrictions.rb +27 -22
  209. data/lib/onlinepayments/sdk/domain/payment_product_field_display_element.rb +41 -28
  210. data/lib/onlinepayments/sdk/domain/payment_product_field_display_hints.rb +84 -56
  211. data/lib/onlinepayments/sdk/domain/payment_product_field_form_element.rb +30 -24
  212. data/lib/onlinepayments/sdk/domain/payment_product_field_tooltip.rb +28 -20
  213. data/lib/onlinepayments/sdk/domain/payment_product_field_validators.rb +83 -73
  214. data/lib/onlinepayments/sdk/domain/payment_product_filter.rb +32 -29
  215. data/lib/onlinepayments/sdk/domain/payment_product_filter_hosted_tokenization.rb +22 -20
  216. data/lib/onlinepayments/sdk/domain/payment_product_filters_hosted_checkout.rb +27 -24
  217. data/lib/onlinepayments/sdk/domain/payment_product_filters_hosted_tokenization.rb +27 -24
  218. data/lib/onlinepayments/sdk/domain/payment_product_group.rb +44 -37
  219. data/lib/onlinepayments/sdk/domain/payment_product_networks_response.rb +22 -20
  220. data/lib/onlinepayments/sdk/domain/payment_references.rb +27 -20
  221. data/lib/onlinepayments/sdk/domain/payment_response.rb +51 -41
  222. data/lib/onlinepayments/sdk/domain/payment_status_output.rb +66 -46
  223. data/lib/onlinepayments/sdk/domain/payout_error_response.rb +37 -31
  224. data/lib/onlinepayments/sdk/domain/payout_output.rb +27 -22
  225. data/lib/onlinepayments/sdk/domain/payout_response.rb +41 -32
  226. data/lib/onlinepayments/sdk/domain/payout_result.rb +41 -32
  227. data/lib/onlinepayments/sdk/domain/payout_status_output.rb +34 -24
  228. data/lib/onlinepayments/sdk/domain/personal_information.rb +34 -26
  229. data/lib/onlinepayments/sdk/domain/personal_information_token.rb +20 -18
  230. data/lib/onlinepayments/sdk/domain/personal_name.rb +34 -24
  231. data/lib/onlinepayments/sdk/domain/personal_name_token.rb +27 -20
  232. data/lib/onlinepayments/sdk/domain/product_directory.rb +22 -20
  233. data/lib/onlinepayments/sdk/domain/protection_eligibility.rb +27 -20
  234. data/lib/onlinepayments/sdk/domain/range_validator.rb +27 -20
  235. data/lib/onlinepayments/sdk/domain/rate_details.rb +51 -35
  236. data/lib/onlinepayments/sdk/domain/redirect_data.rb +27 -20
  237. data/lib/onlinepayments/sdk/domain/redirect_payment_method_specific_input.rb +140 -81
  238. data/lib/onlinepayments/sdk/domain/redirect_payment_method_specific_output.rb +96 -68
  239. data/lib/onlinepayments/sdk/domain/redirect_payment_product3203_specific_input.rb +30 -0
  240. data/lib/onlinepayments/sdk/domain/redirect_payment_product3302_specific_input.rb +44 -0
  241. data/lib/onlinepayments/sdk/domain/redirect_payment_product3306_specific_input.rb +20 -16
  242. data/lib/onlinepayments/sdk/domain/redirect_payment_product5001_specific_input.rb +20 -16
  243. data/lib/onlinepayments/sdk/domain/redirect_payment_product5300_specific_input.rb +74 -0
  244. data/lib/onlinepayments/sdk/domain/redirect_payment_product5406_specific_input.rb +20 -18
  245. data/lib/onlinepayments/sdk/domain/redirect_payment_product5408_specific_input.rb +27 -22
  246. data/lib/onlinepayments/sdk/domain/redirect_payment_product5410_specific_input.rb +32 -0
  247. data/lib/onlinepayments/sdk/domain/redirect_payment_product809_specific_input.rb +20 -16
  248. data/lib/onlinepayments/sdk/domain/redirect_payment_product840_specific_input.rb +41 -20
  249. data/lib/onlinepayments/sdk/domain/redirection_data.rb +20 -16
  250. data/lib/onlinepayments/sdk/domain/refund_card_method_specific_output.rb +34 -26
  251. data/lib/onlinepayments/sdk/domain/refund_e_wallet_method_specific_output.rb +34 -26
  252. data/lib/onlinepayments/sdk/domain/refund_error_response.rb +37 -31
  253. data/lib/onlinepayments/sdk/domain/refund_mobile_method_specific_output.rb +34 -24
  254. data/lib/onlinepayments/sdk/domain/refund_output.rb +89 -64
  255. data/lib/onlinepayments/sdk/domain/refund_payment_product840_customer_account.rb +34 -24
  256. data/lib/onlinepayments/sdk/domain/refund_payment_product840_specific_output.rb +20 -18
  257. data/lib/onlinepayments/sdk/domain/refund_redirect_method_specific_output.rb +27 -20
  258. data/lib/onlinepayments/sdk/domain/refund_request.rb +43 -24
  259. data/lib/onlinepayments/sdk/domain/refund_response.rb +41 -32
  260. data/lib/onlinepayments/sdk/domain/refunds_response.rb +22 -20
  261. data/lib/onlinepayments/sdk/domain/regular_expression_validator.rb +20 -16
  262. data/lib/onlinepayments/sdk/domain/send_test_request.rb +30 -0
  263. data/lib/onlinepayments/sdk/domain/sepa_direct_debit_payment_method_specific_input.rb +27 -22
  264. data/lib/onlinepayments/sdk/domain/sepa_direct_debit_payment_method_specific_input_base.rb +27 -22
  265. data/lib/onlinepayments/sdk/domain/sepa_direct_debit_payment_method_specific_output.rb +34 -28
  266. data/lib/onlinepayments/sdk/domain/sepa_direct_debit_payment_product771_specific_input.rb +27 -22
  267. data/lib/onlinepayments/sdk/domain/sepa_direct_debit_payment_product771_specific_input_base.rb +27 -22
  268. data/lib/onlinepayments/sdk/domain/session_request.rb +22 -20
  269. data/lib/onlinepayments/sdk/domain/session_response.rb +53 -39
  270. data/lib/onlinepayments/sdk/domain/shipping.rb +76 -52
  271. data/lib/onlinepayments/sdk/domain/shipping_method.rb +41 -28
  272. data/lib/onlinepayments/sdk/domain/shopping_cart.rb +62 -48
  273. data/lib/onlinepayments/sdk/domain/shopping_cart_extension.rb +51 -43
  274. data/lib/onlinepayments/sdk/domain/show_form_data.rb +35 -39
  275. data/lib/onlinepayments/sdk/domain/subsequent_card_payment_method_specific_input.rb +60 -35
  276. data/lib/onlinepayments/sdk/domain/subsequent_payment_product5001_specific_input.rb +20 -16
  277. data/lib/onlinepayments/sdk/domain/subsequent_payment_request.rb +35 -31
  278. data/lib/onlinepayments/sdk/domain/subsequent_payment_response.rb +20 -18
  279. data/lib/onlinepayments/sdk/domain/surcharge.rb +59 -48
  280. data/lib/onlinepayments/sdk/domain/surcharge_calculation_card.rb +27 -20
  281. data/lib/onlinepayments/sdk/domain/surcharge_for_payment_link.rb +20 -16
  282. data/lib/onlinepayments/sdk/domain/surcharge_rate.rb +41 -28
  283. data/lib/onlinepayments/sdk/domain/surcharge_specific_input.rb +27 -22
  284. data/lib/onlinepayments/sdk/domain/surcharge_specific_output.rb +34 -28
  285. data/lib/onlinepayments/sdk/domain/test_connection.rb +20 -16
  286. data/lib/onlinepayments/sdk/domain/three_d_secure.rb +98 -87
  287. data/lib/onlinepayments/sdk/domain/three_d_secure_base.rb +75 -69
  288. data/lib/onlinepayments/sdk/domain/three_d_secure_data.rb +34 -24
  289. data/lib/onlinepayments/sdk/domain/three_d_secure_results.rb +107 -67
  290. data/lib/onlinepayments/sdk/domain/token_card.rb +27 -22
  291. data/lib/onlinepayments/sdk/domain/token_card_data.rb +27 -18
  292. data/lib/onlinepayments/sdk/domain/token_card_specific_input.rb +20 -18
  293. data/lib/onlinepayments/sdk/domain/token_data.rb +27 -18
  294. data/lib/onlinepayments/sdk/domain/token_e_wallet.rb +28 -22
  295. data/lib/onlinepayments/sdk/domain/token_response.rb +58 -45
  296. data/lib/onlinepayments/sdk/domain/transaction.rb +20 -18
  297. data/lib/onlinepayments/sdk/domain/uploadable_file.rb +33 -0
  298. data/lib/onlinepayments/sdk/domain/validate_credentials_request.rb +37 -0
  299. data/lib/onlinepayments/sdk/domain/validate_credentials_response.rb +30 -0
  300. data/lib/onlinepayments/sdk/domain/value_mapping_element.rb +29 -24
  301. data/lib/onlinepayments/sdk/domain.rb +4 -0
  302. data/lib/onlinepayments/sdk/exception_factory.rb +76 -0
  303. data/lib/onlinepayments/sdk/factory.rb +163 -118
  304. data/lib/onlinepayments/sdk/idempotence_exception.rb +23 -19
  305. data/lib/onlinepayments/sdk/json/default_marshaller.rb +34 -0
  306. data/lib/onlinepayments/sdk/json/marshaller.rb +27 -0
  307. data/lib/onlinepayments/sdk/json/marshaller_syntax_exception.rb +9 -0
  308. data/lib/onlinepayments/sdk/json.rb +1 -0
  309. data/lib/onlinepayments/sdk/logging/communicator_logger.rb +18 -16
  310. data/lib/onlinepayments/sdk/logging/log_message_builder.rb +80 -47
  311. data/lib/onlinepayments/sdk/logging/logging_capable.rb +1 -1
  312. data/lib/onlinepayments/sdk/logging/obfuscation/body_obfuscator.rb +113 -0
  313. data/lib/onlinepayments/sdk/logging/obfuscation/header_obfuscator.rb +54 -0
  314. data/lib/onlinepayments/sdk/logging/obfuscation/obfuscation_capable.rb +21 -0
  315. data/lib/onlinepayments/sdk/logging/obfuscation/obfuscation_rule.rb +47 -0
  316. data/lib/onlinepayments/sdk/logging/obfuscation.rb +1 -0
  317. data/lib/onlinepayments/sdk/logging/request_log_message_builder.rb +40 -29
  318. data/lib/onlinepayments/sdk/logging/response_log_message_builder.rb +30 -23
  319. data/lib/onlinepayments/sdk/logging/ruby_communicator_logger.rb +49 -45
  320. data/lib/onlinepayments/sdk/logging/stdout_communicator_logger.rb +20 -23
  321. data/lib/onlinepayments/sdk/logging.rb +1 -10
  322. data/lib/onlinepayments/sdk/merchant/captures/captures_client.rb +57 -0
  323. data/lib/onlinepayments/sdk/merchant/captures.rb +4 -0
  324. data/lib/onlinepayments/sdk/merchant/complete/complete_client.rb +60 -0
  325. data/lib/onlinepayments/sdk/merchant/complete.rb +4 -0
  326. data/lib/onlinepayments/sdk/merchant/hostedcheckout/hosted_checkout_client.rb +72 -71
  327. data/lib/onlinepayments/sdk/merchant/hostedcheckout.rb +4 -0
  328. data/lib/onlinepayments/sdk/merchant/hostedtokenization/hosted_tokenization_client.rb +72 -71
  329. data/lib/onlinepayments/sdk/merchant/hostedtokenization.rb +4 -0
  330. data/lib/onlinepayments/sdk/merchant/mandates/mandates_client.rb +165 -164
  331. data/lib/onlinepayments/sdk/merchant/mandates.rb +4 -0
  332. data/lib/onlinepayments/sdk/merchant/merchant_client.rb +116 -64
  333. data/lib/onlinepayments/sdk/merchant/paymentlinks/payment_links_client.rb +102 -101
  334. data/lib/onlinepayments/sdk/merchant/paymentlinks.rb +4 -0
  335. data/lib/onlinepayments/sdk/merchant/payments/payments_client.rb +233 -332
  336. data/lib/onlinepayments/sdk/merchant/payments.rb +4 -0
  337. data/lib/onlinepayments/sdk/merchant/payouts/payouts_client.rb +73 -71
  338. data/lib/onlinepayments/sdk/merchant/payouts.rb +4 -0
  339. data/lib/onlinepayments/sdk/merchant/privacypolicy/get_privacy_policy_params.rb +32 -0
  340. data/lib/onlinepayments/sdk/merchant/privacypolicy/privacy_policy_client.rb +54 -0
  341. data/lib/onlinepayments/sdk/merchant/privacypolicy.rb +4 -0
  342. data/lib/onlinepayments/sdk/merchant/productgroups/get_product_group_params.rb +50 -47
  343. data/lib/onlinepayments/sdk/merchant/productgroups/get_product_groups_params.rb +50 -47
  344. data/lib/onlinepayments/sdk/merchant/productgroups/product_groups_client.rb +72 -72
  345. data/lib/onlinepayments/sdk/merchant/productgroups.rb +4 -0
  346. data/lib/onlinepayments/sdk/merchant/products/get_payment_product_networks_params.rb +27 -25
  347. data/lib/onlinepayments/sdk/merchant/products/get_payment_product_params.rb +50 -47
  348. data/lib/onlinepayments/sdk/merchant/products/get_payment_products_params.rb +50 -47
  349. data/lib/onlinepayments/sdk/merchant/products/get_product_directory_params.rb +21 -19
  350. data/lib/onlinepayments/sdk/merchant/products/products_client.rb +134 -136
  351. data/lib/onlinepayments/sdk/merchant/products.rb +4 -0
  352. data/lib/onlinepayments/sdk/merchant/refunds/refunds_client.rb +57 -0
  353. data/lib/onlinepayments/sdk/merchant/refunds.rb +4 -0
  354. data/lib/onlinepayments/sdk/merchant/services/services_client.rb +124 -155
  355. data/lib/onlinepayments/sdk/merchant/services.rb +4 -0
  356. data/lib/onlinepayments/sdk/merchant/sessions/sessions_client.rb +42 -41
  357. data/lib/onlinepayments/sdk/merchant/sessions.rb +4 -0
  358. data/lib/onlinepayments/sdk/merchant/tokens/tokens_client.rb +101 -100
  359. data/lib/onlinepayments/sdk/merchant/tokens.rb +4 -0
  360. data/lib/onlinepayments/sdk/merchant/webhooks/webhooks_client.rb +83 -0
  361. data/lib/onlinepayments/sdk/merchant/webhooks.rb +4 -0
  362. data/lib/onlinepayments/sdk/merchant.rb +4 -0
  363. data/lib/onlinepayments/sdk/platform_exception.rb +19 -0
  364. data/lib/onlinepayments/sdk/proxy_configuration.rb +60 -60
  365. data/lib/onlinepayments/sdk/reference_exception.rb +14 -9
  366. data/lib/onlinepayments/sdk/validation_exception.rb +14 -9
  367. data/lib/onlinepayments/sdk/webhooks/api_version_mismatch_exception.rb +17 -15
  368. data/lib/onlinepayments/sdk/webhooks/in_memory_secret_key_store.rb +46 -43
  369. data/lib/onlinepayments/sdk/webhooks/secret_key_not_available_exception.rb +16 -12
  370. data/lib/onlinepayments/sdk/webhooks/secret_key_store.rb +13 -11
  371. data/lib/onlinepayments/sdk/webhooks/signature_validation_exception.rb +15 -14
  372. data/lib/onlinepayments/sdk/webhooks/signature_validator.rb +81 -0
  373. data/lib/onlinepayments/sdk/webhooks/webhooks_event.rb +84 -53
  374. data/lib/onlinepayments/sdk/webhooks/webhooks_helper.rb +28 -90
  375. data/lib/onlinepayments/sdk/webhooks.rb +1 -11
  376. data/lib/onlinepayments/sdk.rb +4 -26
  377. data/onlinepayments-sdk-ruby.gemspec +3 -2
  378. metadata +95 -40
  379. data/lib/onlinepayments/sdk/authenticator.rb +0 -16
  380. data/lib/onlinepayments/sdk/communication_exception.rb +0 -16
  381. data/lib/onlinepayments/sdk/connection.rb +0 -41
  382. data/lib/onlinepayments/sdk/data_object.rb +0 -31
  383. data/lib/onlinepayments/sdk/defaultimpl/authorization_type.rb +0 -24
  384. data/lib/onlinepayments/sdk/defaultimpl/default_authenticator.rb +0 -108
  385. data/lib/onlinepayments/sdk/defaultimpl/default_connection.rb +0 -365
  386. data/lib/onlinepayments/sdk/defaultimpl/default_marshaller.rb +0 -32
  387. data/lib/onlinepayments/sdk/defaultimpl.rb +0 -6
  388. data/lib/onlinepayments/sdk/domain/network_token_essentials.rb +0 -38
  389. data/lib/onlinepayments/sdk/domain/page_customization.rb +0 -26
  390. data/lib/onlinepayments/sdk/domain/payment_product5002_specific_input.rb +0 -34
  391. data/lib/onlinepayments/sdk/domain/payment_product840.rb +0 -26
  392. data/lib/onlinepayments/sdk/domain/three_ds_whitelist.rb +0 -30
  393. data/lib/onlinepayments/sdk/endpoint_configuration.rb +0 -127
  394. data/lib/onlinepayments/sdk/exceptions.rb +0 -8
  395. data/lib/onlinepayments/sdk/logging/logging_util.rb +0 -286
  396. data/lib/onlinepayments/sdk/marshaller.rb +0 -24
  397. data/lib/onlinepayments/sdk/marshaller_syntax_exception.rb +0 -6
  398. data/lib/onlinepayments/sdk/merchant/services/get_privacy_policy_params.rb +0 -30
  399. data/lib/onlinepayments/sdk/meta_data_provider.rb +0 -150
  400. data/lib/onlinepayments/sdk/modules.rb +0 -62
  401. data/lib/onlinepayments/sdk/multipart_form_data_object.rb +0 -44
  402. data/lib/onlinepayments/sdk/multipart_form_data_request.rb +0 -9
  403. data/lib/onlinepayments/sdk/not_found_exception.rb +0 -16
  404. data/lib/onlinepayments/sdk/param_request.rb +0 -11
  405. data/lib/onlinepayments/sdk/payment_platform_exception.rb +0 -15
  406. data/lib/onlinepayments/sdk/pooled_connection.rb +0 -21
  407. data/lib/onlinepayments/sdk/request_header.rb +0 -50
  408. data/lib/onlinepayments/sdk/request_param.rb +0 -23
  409. data/lib/onlinepayments/sdk/response_exception.rb +0 -47
  410. data/lib/onlinepayments/sdk/response_header.rb +0 -42
  411. data/lib/onlinepayments/sdk/uploadable_file.rb +0 -30
  412. data/lib/onlinepayments/sdk/webhooks/webhooks.rb +0 -22
  413. data/lib/onlinepayments/sdk/webhooks/webhooks_helper_builder.rb +0 -25
@@ -1,40 +1,46 @@
1
1
  #
2
- # This class was auto-generated.
2
+ # This file was automatically generated.
3
3
  #
4
- require 'onlinepayments/sdk/data_object'
5
4
  require 'onlinepayments/sdk/domain/amount_of_money'
5
+ require 'onlinepayments/sdk/domain/data_object'
6
6
  require 'onlinepayments/sdk/domain/surcharge_rate'
7
7
 
8
- module OnlinePayments::SDK
9
- module Domain
8
+ module OnlinePayments
9
+ module SDK
10
+ module Domain
11
+ # @attr [String] mode
12
+ # @attr [OnlinePayments::SDK::Domain::AmountOfMoney] surcharge_amount
13
+ # @attr [OnlinePayments::SDK::Domain::SurchargeRate] surcharge_rate
14
+ class SurchargeSpecificOutput < OnlinePayments::SDK::Domain::DataObject
10
15
 
11
- # @attr [String] mode
12
- # @attr [OnlinePayments::SDK::Domain::AmountOfMoney] surcharge_amount
13
- # @attr [OnlinePayments::SDK::Domain::SurchargeRate] surcharge_rate
14
- class SurchargeSpecificOutput < OnlinePayments::SDK::DataObject
15
- attr_accessor :mode
16
- attr_accessor :surcharge_amount
17
- attr_accessor :surcharge_rate
16
+ attr_accessor :mode
18
17
 
19
- # @return (Hash)
20
- def to_h
21
- hash = super
22
- hash['mode'] = @mode unless @mode.nil?
23
- hash['surchargeAmount'] = @surcharge_amount.to_h if @surcharge_amount
24
- hash['surchargeRate'] = @surcharge_rate.to_h if @surcharge_rate
25
- hash
26
- end
18
+ attr_accessor :surcharge_amount
19
+
20
+ attr_accessor :surcharge_rate
27
21
 
28
- def from_hash(hash)
29
- super
30
- @mode = hash['mode'] if hash.key? 'mode'
31
- if hash.key? 'surchargeAmount'
32
- raise TypeError, "value '%s' is not a Hash" % [hash['surchargeAmount']] unless hash['surchargeAmount'].is_a? Hash
33
- @surcharge_amount = OnlinePayments::SDK::Domain::AmountOfMoney.new_from_hash(hash['surchargeAmount'])
22
+ # @return (Hash)
23
+ def to_h
24
+ hash = super
25
+ hash['mode'] = @mode unless @mode.nil?
26
+ hash['surchargeAmount'] = @surcharge_amount.to_h unless @surcharge_amount.nil?
27
+ hash['surchargeRate'] = @surcharge_rate.to_h unless @surcharge_rate.nil?
28
+ hash
34
29
  end
35
- if hash.key? 'surchargeRate'
36
- raise TypeError, "value '%s' is not a Hash" % [hash['surchargeRate']] unless hash['surchargeRate'].is_a? Hash
37
- @surcharge_rate = OnlinePayments::SDK::Domain::SurchargeRate.new_from_hash(hash['surchargeRate'])
30
+
31
+ def from_hash(hash)
32
+ super
33
+ if hash.has_key? 'mode'
34
+ @mode = hash['mode']
35
+ end
36
+ if hash.has_key? 'surchargeAmount'
37
+ raise TypeError, "value '%s' is not a Hash" % [hash['surchargeAmount']] unless hash['surchargeAmount'].is_a? Hash
38
+ @surcharge_amount = OnlinePayments::SDK::Domain::AmountOfMoney.new_from_hash(hash['surchargeAmount'])
39
+ end
40
+ if hash.has_key? 'surchargeRate'
41
+ raise TypeError, "value '%s' is not a Hash" % [hash['surchargeRate']] unless hash['surchargeRate'].is_a? Hash
42
+ @surcharge_rate = OnlinePayments::SDK::Domain::SurchargeRate.new_from_hash(hash['surchargeRate'])
43
+ end
38
44
  end
39
45
  end
40
46
  end
@@ -1,25 +1,29 @@
1
1
  #
2
- # This class was auto-generated.
2
+ # This file was automatically generated.
3
3
  #
4
- require 'onlinepayments/sdk/data_object'
4
+ require 'onlinepayments/sdk/domain/data_object'
5
5
 
6
- module OnlinePayments::SDK
7
- module Domain
6
+ module OnlinePayments
7
+ module SDK
8
+ module Domain
9
+ # @attr [String] result
10
+ class TestConnection < OnlinePayments::SDK::Domain::DataObject
8
11
 
9
- # @attr [String] result
10
- class TestConnection < OnlinePayments::SDK::DataObject
11
- attr_accessor :result
12
+ attr_accessor :result
12
13
 
13
- # @return (Hash)
14
- def to_h
15
- hash = super
16
- hash['result'] = @result unless @result.nil?
17
- hash
18
- end
14
+ # @return (Hash)
15
+ def to_h
16
+ hash = super
17
+ hash['result'] = @result unless @result.nil?
18
+ hash
19
+ end
19
20
 
20
- def from_hash(hash)
21
- super
22
- @result = hash['result'] if hash.key? 'result'
21
+ def from_hash(hash)
22
+ super
23
+ if hash.has_key? 'result'
24
+ @result = hash['result']
25
+ end
26
+ end
23
27
  end
24
28
  end
25
29
  end
@@ -1,100 +1,111 @@
1
1
  #
2
- # This class was auto-generated.
2
+ # This file was automatically generated.
3
3
  #
4
- require 'onlinepayments/sdk/data_object'
4
+ require 'onlinepayments/sdk/domain/data_object'
5
5
  require 'onlinepayments/sdk/domain/external_cardholder_authentication_data'
6
6
  require 'onlinepayments/sdk/domain/redirection_data'
7
- require 'onlinepayments/sdk/domain/three_ds_whitelist'
8
7
  require 'onlinepayments/sdk/domain/three_d_secure_data'
9
8
 
10
- module OnlinePayments::SDK
11
- module Domain
9
+ module OnlinePayments
10
+ module SDK
11
+ module Domain
12
+ # @attr [Integer] authentication_amount
13
+ # @attr [String] challenge_canvas_size
14
+ # @attr [String] challenge_indicator
15
+ # @attr [String] device_channel
16
+ # @attr [String] exemption_request
17
+ # @attr [OnlinePayments::SDK::Domain::ExternalCardholderAuthenticationData] external_cardholder_authentication_data
18
+ # @attr [Integer] merchant_fraud_rate
19
+ # @attr [OnlinePayments::SDK::Domain::ThreeDSecureData] prior_three_d_secure_data
20
+ # @attr [OnlinePayments::SDK::Domain::RedirectionData] redirection_data
21
+ # @attr [true/false] secure_corporate_payment
22
+ # @attr [true/false] skip_authentication
23
+ # @attr [true/false] skip_soft_decline
24
+ class ThreeDSecure < OnlinePayments::SDK::Domain::DataObject
12
25
 
13
- # @attr [Long] authentication_amount
14
- # @attr [String] challenge_canvas_size
15
- # @attr [String] challenge_indicator
16
- # @attr [true/false] decoupled_indicator
17
- # @attr [String] decoupled_max_time
18
- # @attr [String] exemption_request
19
- # @attr [OnlinePayments::SDK::Domain::ExternalCardholderAuthenticationData] external_cardholder_authentication_data
20
- # @attr [Integer] merchant_fraud_rate
21
- # @attr [String] payment_token_source
22
- # @attr [OnlinePayments::SDK::Domain::ThreeDSecureData] prior_three_d_secure_data
23
- # @attr [OnlinePayments::SDK::Domain::RedirectionData] redirection_data
24
- # @attr [true/false] secure_corporate_payment
25
- # @attr [true/false] skip_authentication
26
- # @attr [true/false] skip_soft_decline
27
- # @attr [String] three_ri_indicator
28
- # @attr [OnlinePayments::SDK::Domain::ThreeDSWhitelist] whitelist
29
- class ThreeDSecure < OnlinePayments::SDK::DataObject
30
- attr_accessor :authentication_amount
31
- attr_accessor :challenge_canvas_size
32
- attr_accessor :challenge_indicator
33
- attr_accessor :decoupled_indicator
34
- attr_accessor :decoupled_max_time
35
- attr_accessor :exemption_request
36
- attr_accessor :external_cardholder_authentication_data
37
- attr_accessor :merchant_fraud_rate
38
- attr_accessor :payment_token_source
39
- attr_accessor :prior_three_d_secure_data
40
- attr_accessor :redirection_data
41
- attr_accessor :secure_corporate_payment
42
- attr_accessor :skip_authentication
43
- attr_accessor :skip_soft_decline
44
- attr_accessor :three_ri_indicator
45
- attr_accessor :whitelist
26
+ attr_accessor :authentication_amount
46
27
 
47
- # @return (Hash)
48
- def to_h
49
- hash = super
50
- hash['authenticationAmount'] = @authentication_amount unless @authentication_amount.nil?
51
- hash['challengeCanvasSize'] = @challenge_canvas_size unless @challenge_canvas_size.nil?
52
- hash['challengeIndicator'] = @challenge_indicator unless @challenge_indicator.nil?
53
- hash['decoupledIndicator'] = @decoupled_indicator unless @decoupled_indicator.nil?
54
- hash['decoupledMaxTime'] = @decoupled_max_time unless @decoupled_max_time.nil?
55
- hash['exemptionRequest'] = @exemption_request unless @exemption_request.nil?
56
- hash['externalCardholderAuthenticationData'] = @external_cardholder_authentication_data.to_h if @external_cardholder_authentication_data
57
- hash['merchantFraudRate'] = @merchant_fraud_rate unless @merchant_fraud_rate.nil?
58
- hash['paymentTokenSource'] = @payment_token_source unless @payment_token_source.nil?
59
- hash['priorThreeDSecureData'] = @prior_three_d_secure_data.to_h if @prior_three_d_secure_data
60
- hash['redirectionData'] = @redirection_data.to_h if @redirection_data
61
- hash['secureCorporatePayment'] = @secure_corporate_payment unless @secure_corporate_payment.nil?
62
- hash['skipAuthentication'] = @skip_authentication unless @skip_authentication.nil?
63
- hash['skipSoftDecline'] = @skip_soft_decline unless @skip_soft_decline.nil?
64
- hash['threeRIIndicator'] = @three_ri_indicator unless @three_ri_indicator.nil?
65
- hash['whitelist'] = @whitelist.to_h if @whitelist
66
- hash
67
- end
28
+ attr_accessor :challenge_canvas_size
68
29
 
69
- def from_hash(hash)
70
- super
71
- @authentication_amount = hash['authenticationAmount'] if hash.key? 'authenticationAmount'
72
- @challenge_canvas_size = hash['challengeCanvasSize'] if hash.key? 'challengeCanvasSize'
73
- @challenge_indicator = hash['challengeIndicator'] if hash.key? 'challengeIndicator'
74
- @decoupled_indicator = hash['decoupledIndicator'] if hash.key? 'decoupledIndicator'
75
- @decoupled_max_time = hash['decoupledMaxTime'] if hash.key? 'decoupledMaxTime'
76
- @exemption_request = hash['exemptionRequest'] if hash.key? 'exemptionRequest'
77
- if hash.key? 'externalCardholderAuthenticationData'
78
- raise TypeError, "value '%s' is not a Hash" % [hash['externalCardholderAuthenticationData']] unless hash['externalCardholderAuthenticationData'].is_a? Hash
79
- @external_cardholder_authentication_data = OnlinePayments::SDK::Domain::ExternalCardholderAuthenticationData.new_from_hash(hash['externalCardholderAuthenticationData'])
80
- end
81
- @merchant_fraud_rate = hash['merchantFraudRate'] if hash.key? 'merchantFraudRate'
82
- @payment_token_source = hash['paymentTokenSource'] if hash.key? 'paymentTokenSource'
83
- if hash.key? 'priorThreeDSecureData'
84
- raise TypeError, "value '%s' is not a Hash" % [hash['priorThreeDSecureData']] unless hash['priorThreeDSecureData'].is_a? Hash
85
- @prior_three_d_secure_data = OnlinePayments::SDK::Domain::ThreeDSecureData.new_from_hash(hash['priorThreeDSecureData'])
86
- end
87
- if hash.key? 'redirectionData'
88
- raise TypeError, "value '%s' is not a Hash" % [hash['redirectionData']] unless hash['redirectionData'].is_a? Hash
89
- @redirection_data = OnlinePayments::SDK::Domain::RedirectionData.new_from_hash(hash['redirectionData'])
30
+ attr_accessor :challenge_indicator
31
+
32
+ attr_accessor :device_channel
33
+
34
+ attr_accessor :exemption_request
35
+
36
+ attr_accessor :external_cardholder_authentication_data
37
+
38
+ attr_accessor :merchant_fraud_rate
39
+
40
+ attr_accessor :prior_three_d_secure_data
41
+
42
+ attr_accessor :redirection_data
43
+
44
+ attr_accessor :secure_corporate_payment
45
+
46
+ attr_accessor :skip_authentication
47
+
48
+ attr_accessor :skip_soft_decline
49
+
50
+ # @return (Hash)
51
+ def to_h
52
+ hash = super
53
+ hash['authenticationAmount'] = @authentication_amount unless @authentication_amount.nil?
54
+ hash['challengeCanvasSize'] = @challenge_canvas_size unless @challenge_canvas_size.nil?
55
+ hash['challengeIndicator'] = @challenge_indicator unless @challenge_indicator.nil?
56
+ hash['deviceChannel'] = @device_channel unless @device_channel.nil?
57
+ hash['exemptionRequest'] = @exemption_request unless @exemption_request.nil?
58
+ hash['externalCardholderAuthenticationData'] = @external_cardholder_authentication_data.to_h unless @external_cardholder_authentication_data.nil?
59
+ hash['merchantFraudRate'] = @merchant_fraud_rate unless @merchant_fraud_rate.nil?
60
+ hash['priorThreeDSecureData'] = @prior_three_d_secure_data.to_h unless @prior_three_d_secure_data.nil?
61
+ hash['redirectionData'] = @redirection_data.to_h unless @redirection_data.nil?
62
+ hash['secureCorporatePayment'] = @secure_corporate_payment unless @secure_corporate_payment.nil?
63
+ hash['skipAuthentication'] = @skip_authentication unless @skip_authentication.nil?
64
+ hash['skipSoftDecline'] = @skip_soft_decline unless @skip_soft_decline.nil?
65
+ hash
90
66
  end
91
- @secure_corporate_payment = hash['secureCorporatePayment'] if hash.key? 'secureCorporatePayment'
92
- @skip_authentication = hash['skipAuthentication'] if hash.key? 'skipAuthentication'
93
- @skip_soft_decline = hash['skipSoftDecline'] if hash.key? 'skipSoftDecline'
94
- @three_ri_indicator = hash['threeRIIndicator'] if hash.key? 'threeRIIndicator'
95
- if hash.key? 'whitelist'
96
- raise TypeError, "value '%s' is not a Hash" % [hash['whitelist']] unless hash['whitelist'].is_a? Hash
97
- @whitelist = OnlinePayments::SDK::Domain::ThreeDSWhitelist.new_from_hash(hash['whitelist'])
67
+
68
+ def from_hash(hash)
69
+ super
70
+ if hash.has_key? 'authenticationAmount'
71
+ @authentication_amount = hash['authenticationAmount']
72
+ end
73
+ if hash.has_key? 'challengeCanvasSize'
74
+ @challenge_canvas_size = hash['challengeCanvasSize']
75
+ end
76
+ if hash.has_key? 'challengeIndicator'
77
+ @challenge_indicator = hash['challengeIndicator']
78
+ end
79
+ if hash.has_key? 'deviceChannel'
80
+ @device_channel = hash['deviceChannel']
81
+ end
82
+ if hash.has_key? 'exemptionRequest'
83
+ @exemption_request = hash['exemptionRequest']
84
+ end
85
+ if hash.has_key? 'externalCardholderAuthenticationData'
86
+ raise TypeError, "value '%s' is not a Hash" % [hash['externalCardholderAuthenticationData']] unless hash['externalCardholderAuthenticationData'].is_a? Hash
87
+ @external_cardholder_authentication_data = OnlinePayments::SDK::Domain::ExternalCardholderAuthenticationData.new_from_hash(hash['externalCardholderAuthenticationData'])
88
+ end
89
+ if hash.has_key? 'merchantFraudRate'
90
+ @merchant_fraud_rate = hash['merchantFraudRate']
91
+ end
92
+ if hash.has_key? 'priorThreeDSecureData'
93
+ raise TypeError, "value '%s' is not a Hash" % [hash['priorThreeDSecureData']] unless hash['priorThreeDSecureData'].is_a? Hash
94
+ @prior_three_d_secure_data = OnlinePayments::SDK::Domain::ThreeDSecureData.new_from_hash(hash['priorThreeDSecureData'])
95
+ end
96
+ if hash.has_key? 'redirectionData'
97
+ raise TypeError, "value '%s' is not a Hash" % [hash['redirectionData']] unless hash['redirectionData'].is_a? Hash
98
+ @redirection_data = OnlinePayments::SDK::Domain::RedirectionData.new_from_hash(hash['redirectionData'])
99
+ end
100
+ if hash.has_key? 'secureCorporatePayment'
101
+ @secure_corporate_payment = hash['secureCorporatePayment']
102
+ end
103
+ if hash.has_key? 'skipAuthentication'
104
+ @skip_authentication = hash['skipAuthentication']
105
+ end
106
+ if hash.has_key? 'skipSoftDecline'
107
+ @skip_soft_decline = hash['skipSoftDecline']
108
+ end
98
109
  end
99
110
  end
100
111
  end
@@ -1,80 +1,86 @@
1
1
  #
2
- # This class was auto-generated.
2
+ # This file was automatically generated.
3
3
  #
4
- require 'onlinepayments/sdk/data_object'
5
- require 'onlinepayments/sdk/domain/three_ds_whitelist'
4
+ require 'onlinepayments/sdk/domain/data_object'
6
5
  require 'onlinepayments/sdk/domain/three_d_secure_data'
7
6
 
8
- module OnlinePayments::SDK
9
- module Domain
7
+ module OnlinePayments
8
+ module SDK
9
+ module Domain
10
+ # @attr [Integer] authentication_amount
11
+ # @attr [String] challenge_canvas_size
12
+ # @attr [String] challenge_indicator
13
+ # @attr [String] exemption_request
14
+ # @attr [Integer] merchant_fraud_rate
15
+ # @attr [OnlinePayments::SDK::Domain::ThreeDSecureData] prior_three_d_secure_data
16
+ # @attr [true/false] secure_corporate_payment
17
+ # @attr [true/false] skip_authentication
18
+ # @attr [true/false] skip_soft_decline
19
+ class ThreeDSecureBase < OnlinePayments::SDK::Domain::DataObject
10
20
 
11
- # @attr [String] challenge_canvas_size
12
- # @attr [String] challenge_indicator
13
- # @attr [true/false] decoupled_indicator
14
- # @attr [String] decoupled_max_time
15
- # @attr [String] exemption_request
16
- # @attr [Integer] merchant_fraud_rate
17
- # @attr [String] payment_token_source
18
- # @attr [OnlinePayments::SDK::Domain::ThreeDSecureData] prior_three_d_secure_data
19
- # @attr [true/false] secure_corporate_payment
20
- # @attr [true/false] skip_authentication
21
- # @attr [true/false] skip_soft_decline
22
- # @attr [String] three_ri_indicator
23
- # @attr [OnlinePayments::SDK::Domain::ThreeDSWhitelist] whitelist
24
- class ThreeDSecureBase < OnlinePayments::SDK::DataObject
25
- attr_accessor :challenge_canvas_size
26
- attr_accessor :challenge_indicator
27
- attr_accessor :decoupled_indicator
28
- attr_accessor :decoupled_max_time
29
- attr_accessor :exemption_request
30
- attr_accessor :merchant_fraud_rate
31
- attr_accessor :payment_token_source
32
- attr_accessor :prior_three_d_secure_data
33
- attr_accessor :secure_corporate_payment
34
- attr_accessor :skip_authentication
35
- attr_accessor :skip_soft_decline
36
- attr_accessor :three_ri_indicator
37
- attr_accessor :whitelist
21
+ attr_accessor :authentication_amount
38
22
 
39
- # @return (Hash)
40
- def to_h
41
- hash = super
42
- hash['challengeCanvasSize'] = @challenge_canvas_size unless @challenge_canvas_size.nil?
43
- hash['challengeIndicator'] = @challenge_indicator unless @challenge_indicator.nil?
44
- hash['decoupledIndicator'] = @decoupled_indicator unless @decoupled_indicator.nil?
45
- hash['decoupledMaxTime'] = @decoupled_max_time unless @decoupled_max_time.nil?
46
- hash['exemptionRequest'] = @exemption_request unless @exemption_request.nil?
47
- hash['merchantFraudRate'] = @merchant_fraud_rate unless @merchant_fraud_rate.nil?
48
- hash['paymentTokenSource'] = @payment_token_source unless @payment_token_source.nil?
49
- hash['priorThreeDSecureData'] = @prior_three_d_secure_data.to_h if @prior_three_d_secure_data
50
- hash['secureCorporatePayment'] = @secure_corporate_payment unless @secure_corporate_payment.nil?
51
- hash['skipAuthentication'] = @skip_authentication unless @skip_authentication.nil?
52
- hash['skipSoftDecline'] = @skip_soft_decline unless @skip_soft_decline.nil?
53
- hash['threeRIIndicator'] = @three_ri_indicator unless @three_ri_indicator.nil?
54
- hash['whitelist'] = @whitelist.to_h if @whitelist
55
- hash
56
- end
23
+ attr_accessor :challenge_canvas_size
24
+
25
+ attr_accessor :challenge_indicator
26
+
27
+ attr_accessor :exemption_request
28
+
29
+ attr_accessor :merchant_fraud_rate
30
+
31
+ attr_accessor :prior_three_d_secure_data
57
32
 
58
- def from_hash(hash)
59
- super
60
- @challenge_canvas_size = hash['challengeCanvasSize'] if hash.key? 'challengeCanvasSize'
61
- @challenge_indicator = hash['challengeIndicator'] if hash.key? 'challengeIndicator'
62
- @decoupled_indicator = hash['decoupledIndicator'] if hash.key? 'decoupledIndicator'
63
- @decoupled_max_time = hash['decoupledMaxTime'] if hash.key? 'decoupledMaxTime'
64
- @exemption_request = hash['exemptionRequest'] if hash.key? 'exemptionRequest'
65
- @merchant_fraud_rate = hash['merchantFraudRate'] if hash.key? 'merchantFraudRate'
66
- @payment_token_source = hash['paymentTokenSource'] if hash.key? 'paymentTokenSource'
67
- if hash.key? 'priorThreeDSecureData'
68
- raise TypeError, "value '%s' is not a Hash" % [hash['priorThreeDSecureData']] unless hash['priorThreeDSecureData'].is_a? Hash
69
- @prior_three_d_secure_data = OnlinePayments::SDK::Domain::ThreeDSecureData.new_from_hash(hash['priorThreeDSecureData'])
33
+ attr_accessor :secure_corporate_payment
34
+
35
+ attr_accessor :skip_authentication
36
+
37
+ attr_accessor :skip_soft_decline
38
+
39
+ # @return (Hash)
40
+ def to_h
41
+ hash = super
42
+ hash['authenticationAmount'] = @authentication_amount unless @authentication_amount.nil?
43
+ hash['challengeCanvasSize'] = @challenge_canvas_size unless @challenge_canvas_size.nil?
44
+ hash['challengeIndicator'] = @challenge_indicator unless @challenge_indicator.nil?
45
+ hash['exemptionRequest'] = @exemption_request unless @exemption_request.nil?
46
+ hash['merchantFraudRate'] = @merchant_fraud_rate unless @merchant_fraud_rate.nil?
47
+ hash['priorThreeDSecureData'] = @prior_three_d_secure_data.to_h unless @prior_three_d_secure_data.nil?
48
+ hash['secureCorporatePayment'] = @secure_corporate_payment unless @secure_corporate_payment.nil?
49
+ hash['skipAuthentication'] = @skip_authentication unless @skip_authentication.nil?
50
+ hash['skipSoftDecline'] = @skip_soft_decline unless @skip_soft_decline.nil?
51
+ hash
70
52
  end
71
- @secure_corporate_payment = hash['secureCorporatePayment'] if hash.key? 'secureCorporatePayment'
72
- @skip_authentication = hash['skipAuthentication'] if hash.key? 'skipAuthentication'
73
- @skip_soft_decline = hash['skipSoftDecline'] if hash.key? 'skipSoftDecline'
74
- @three_ri_indicator = hash['threeRIIndicator'] if hash.key? 'threeRIIndicator'
75
- if hash.key? 'whitelist'
76
- raise TypeError, "value '%s' is not a Hash" % [hash['whitelist']] unless hash['whitelist'].is_a? Hash
77
- @whitelist = OnlinePayments::SDK::Domain::ThreeDSWhitelist.new_from_hash(hash['whitelist'])
53
+
54
+ def from_hash(hash)
55
+ super
56
+ if hash.has_key? 'authenticationAmount'
57
+ @authentication_amount = hash['authenticationAmount']
58
+ end
59
+ if hash.has_key? 'challengeCanvasSize'
60
+ @challenge_canvas_size = hash['challengeCanvasSize']
61
+ end
62
+ if hash.has_key? 'challengeIndicator'
63
+ @challenge_indicator = hash['challengeIndicator']
64
+ end
65
+ if hash.has_key? 'exemptionRequest'
66
+ @exemption_request = hash['exemptionRequest']
67
+ end
68
+ if hash.has_key? 'merchantFraudRate'
69
+ @merchant_fraud_rate = hash['merchantFraudRate']
70
+ end
71
+ if hash.has_key? 'priorThreeDSecureData'
72
+ raise TypeError, "value '%s' is not a Hash" % [hash['priorThreeDSecureData']] unless hash['priorThreeDSecureData'].is_a? Hash
73
+ @prior_three_d_secure_data = OnlinePayments::SDK::Domain::ThreeDSecureData.new_from_hash(hash['priorThreeDSecureData'])
74
+ end
75
+ if hash.has_key? 'secureCorporatePayment'
76
+ @secure_corporate_payment = hash['secureCorporatePayment']
77
+ end
78
+ if hash.has_key? 'skipAuthentication'
79
+ @skip_authentication = hash['skipAuthentication']
80
+ end
81
+ if hash.has_key? 'skipSoftDecline'
82
+ @skip_soft_decline = hash['skipSoftDecline']
83
+ end
78
84
  end
79
85
  end
80
86
  end
@@ -1,33 +1,43 @@
1
1
  #
2
- # This class was auto-generated.
2
+ # This file was automatically generated.
3
3
  #
4
- require 'onlinepayments/sdk/data_object'
4
+ require 'onlinepayments/sdk/domain/data_object'
5
5
 
6
- module OnlinePayments::SDK
7
- module Domain
6
+ module OnlinePayments
7
+ module SDK
8
+ module Domain
9
+ # @attr [String] acs_transaction_id
10
+ # @attr [String] method
11
+ # @attr [String] utc_timestamp
12
+ class ThreeDSecureData < OnlinePayments::SDK::Domain::DataObject
8
13
 
9
- # @attr [String] acs_transaction_id
10
- # @attr [String] method
11
- # @attr [String] utc_timestamp
12
- class ThreeDSecureData < OnlinePayments::SDK::DataObject
13
- attr_accessor :acs_transaction_id
14
- attr_accessor :method
15
- attr_accessor :utc_timestamp
14
+ attr_accessor :acs_transaction_id
16
15
 
17
- # @return (Hash)
18
- def to_h
19
- hash = super
20
- hash['acsTransactionId'] = @acs_transaction_id unless @acs_transaction_id.nil?
21
- hash['method'] = @method unless @method.nil?
22
- hash['utcTimestamp'] = @utc_timestamp unless @utc_timestamp.nil?
23
- hash
24
- end
16
+ attr_accessor :method
17
+
18
+ attr_accessor :utc_timestamp
19
+
20
+ # @return (Hash)
21
+ def to_h
22
+ hash = super
23
+ hash['acsTransactionId'] = @acs_transaction_id unless @acs_transaction_id.nil?
24
+ hash['method'] = @method unless @method.nil?
25
+ hash['utcTimestamp'] = @utc_timestamp unless @utc_timestamp.nil?
26
+ hash
27
+ end
25
28
 
26
- def from_hash(hash)
27
- super
28
- @acs_transaction_id = hash['acsTransactionId'] if hash.key? 'acsTransactionId'
29
- @method = hash['method'] if hash.key? 'method'
30
- @utc_timestamp = hash['utcTimestamp'] if hash.key? 'utcTimestamp'
29
+ def from_hash(hash)
30
+ super
31
+ if hash.has_key? 'acsTransactionId'
32
+ @acs_transaction_id = hash['acsTransactionId']
33
+ end
34
+ if hash.has_key? 'method'
35
+ @method = hash['method']
36
+ end
37
+ if hash.has_key? 'utcTimestamp'
38
+ @utc_timestamp = hash['utcTimestamp']
39
+ end
40
+ end
31
41
  end
32
42
  end
33
43
  end