onlinepayments-sdk-ruby 4.23.0 → 5.1.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 (414) 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 -52
  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 -28
  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 -128
  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 +142 -100
  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 -59
  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 -42
  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 +127 -87
  88. data/lib/onlinepayments/sdk/domain/create_payment_request.rb +82 -60
  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 +42 -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 +51 -35
  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 +52 -44
  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 +27 -22
  152. data/lib/onlinepayments/sdk/domain/mandate_personal_name.rb +27 -20
  153. data/lib/onlinepayments/sdk/domain/mandate_personal_name_response.rb +27 -20
  154. data/lib/onlinepayments/sdk/domain/mandate_redirect_data.rb +27 -20
  155. data/lib/onlinepayments/sdk/domain/mandate_response.rb +64 -44
  156. data/lib/onlinepayments/sdk/domain/merchant_action.rb +54 -30
  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 +58 -45
  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 +27 -20
  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 +81 -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 +51 -0
  190. data/lib/onlinepayments/sdk/domain/payment_product302_specific_data.rb +22 -20
  191. data/lib/onlinepayments/sdk/domain/payment_product3203_specific_output.rb +27 -24
  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/reattempt_instructions.rb +46 -0
  237. data/lib/onlinepayments/sdk/domain/reattempt_instructions_conditions.rb +37 -0
  238. data/lib/onlinepayments/sdk/domain/redirect_data.rb +27 -20
  239. data/lib/onlinepayments/sdk/domain/redirect_payment_method_specific_input.rb +166 -88
  240. data/lib/onlinepayments/sdk/domain/redirect_payment_method_specific_output.rb +95 -75
  241. data/lib/onlinepayments/sdk/domain/redirect_payment_product3203_specific_input.rb +20 -16
  242. data/lib/onlinepayments/sdk/domain/redirect_payment_product3204_specific_input.rb +30 -0
  243. data/lib/onlinepayments/sdk/domain/redirect_payment_product3302_specific_input.rb +44 -0
  244. data/lib/onlinepayments/sdk/domain/redirect_payment_product3306_specific_input.rb +20 -16
  245. data/lib/onlinepayments/sdk/domain/redirect_payment_product5001_specific_input.rb +27 -16
  246. data/lib/onlinepayments/sdk/domain/redirect_payment_product5300_specific_input.rb +72 -0
  247. data/lib/onlinepayments/sdk/domain/redirect_payment_product5402_specific_input.rb +30 -0
  248. data/lib/onlinepayments/sdk/domain/redirect_payment_product5403_specific_input.rb +30 -0
  249. data/lib/onlinepayments/sdk/domain/redirect_payment_product5406_specific_input.rb +20 -18
  250. data/lib/onlinepayments/sdk/domain/redirect_payment_product5408_specific_input.rb +27 -22
  251. data/lib/onlinepayments/sdk/domain/redirect_payment_product5410_specific_input.rb +32 -0
  252. data/lib/onlinepayments/sdk/domain/redirect_payment_product809_specific_input.rb +20 -16
  253. data/lib/onlinepayments/sdk/domain/redirect_payment_product840_specific_input.rb +41 -20
  254. data/lib/onlinepayments/sdk/domain/redirection_data.rb +20 -16
  255. data/lib/onlinepayments/sdk/domain/refund_card_method_specific_output.rb +34 -26
  256. data/lib/onlinepayments/sdk/domain/refund_e_wallet_method_specific_output.rb +34 -26
  257. data/lib/onlinepayments/sdk/domain/refund_error_response.rb +37 -31
  258. data/lib/onlinepayments/sdk/domain/refund_mobile_method_specific_output.rb +34 -24
  259. data/lib/onlinepayments/sdk/domain/refund_output.rb +89 -64
  260. data/lib/onlinepayments/sdk/domain/refund_payment_product840_customer_account.rb +34 -24
  261. data/lib/onlinepayments/sdk/domain/refund_payment_product840_specific_output.rb +20 -18
  262. data/lib/onlinepayments/sdk/domain/refund_redirect_method_specific_output.rb +27 -20
  263. data/lib/onlinepayments/sdk/domain/refund_request.rb +43 -24
  264. data/lib/onlinepayments/sdk/domain/refund_response.rb +41 -32
  265. data/lib/onlinepayments/sdk/domain/refunds_response.rb +22 -20
  266. data/lib/onlinepayments/sdk/domain/regular_expression_validator.rb +20 -16
  267. data/lib/onlinepayments/sdk/domain/send_test_request.rb +30 -0
  268. data/lib/onlinepayments/sdk/domain/sepa_direct_debit_payment_method_specific_input.rb +27 -22
  269. data/lib/onlinepayments/sdk/domain/sepa_direct_debit_payment_method_specific_input_base.rb +27 -22
  270. data/lib/onlinepayments/sdk/domain/sepa_direct_debit_payment_method_specific_output.rb +34 -28
  271. data/lib/onlinepayments/sdk/domain/sepa_direct_debit_payment_product771_specific_input.rb +27 -22
  272. data/lib/onlinepayments/sdk/domain/sepa_direct_debit_payment_product771_specific_input_base.rb +27 -22
  273. data/lib/onlinepayments/sdk/domain/session_request.rb +22 -20
  274. data/lib/onlinepayments/sdk/domain/session_response.rb +53 -39
  275. data/lib/onlinepayments/sdk/domain/shipping.rb +76 -52
  276. data/lib/onlinepayments/sdk/domain/shipping_method.rb +41 -28
  277. data/lib/onlinepayments/sdk/domain/shopping_cart.rb +62 -48
  278. data/lib/onlinepayments/sdk/domain/shopping_cart_extension.rb +51 -43
  279. data/lib/onlinepayments/sdk/domain/show_form_data.rb +35 -31
  280. data/lib/onlinepayments/sdk/domain/show_instructions_data.rb +30 -0
  281. data/lib/onlinepayments/sdk/domain/subsequent_card_payment_method_specific_input.rb +60 -39
  282. data/lib/onlinepayments/sdk/domain/subsequent_payment_product5001_specific_input.rb +20 -16
  283. data/lib/onlinepayments/sdk/domain/subsequent_payment_request.rb +35 -31
  284. data/lib/onlinepayments/sdk/domain/subsequent_payment_response.rb +20 -18
  285. data/lib/onlinepayments/sdk/domain/surcharge.rb +59 -48
  286. data/lib/onlinepayments/sdk/domain/surcharge_calculation_card.rb +27 -20
  287. data/lib/onlinepayments/sdk/domain/surcharge_for_payment_link.rb +20 -16
  288. data/lib/onlinepayments/sdk/domain/surcharge_rate.rb +41 -28
  289. data/lib/onlinepayments/sdk/domain/surcharge_specific_input.rb +27 -22
  290. data/lib/onlinepayments/sdk/domain/surcharge_specific_output.rb +34 -28
  291. data/lib/onlinepayments/sdk/domain/test_connection.rb +20 -16
  292. data/lib/onlinepayments/sdk/domain/three_d_secure.rb +98 -63
  293. data/lib/onlinepayments/sdk/domain/three_d_secure_base.rb +78 -52
  294. data/lib/onlinepayments/sdk/domain/three_d_secure_data.rb +34 -24
  295. data/lib/onlinepayments/sdk/domain/three_d_secure_results.rb +107 -67
  296. data/lib/onlinepayments/sdk/domain/token_card.rb +27 -22
  297. data/lib/onlinepayments/sdk/domain/token_card_data.rb +27 -18
  298. data/lib/onlinepayments/sdk/domain/token_card_specific_input.rb +20 -18
  299. data/lib/onlinepayments/sdk/domain/token_data.rb +27 -18
  300. data/lib/onlinepayments/sdk/domain/token_e_wallet.rb +28 -22
  301. data/lib/onlinepayments/sdk/domain/token_response.rb +58 -45
  302. data/lib/onlinepayments/sdk/domain/transaction.rb +20 -18
  303. data/lib/onlinepayments/sdk/domain/uploadable_file.rb +33 -0
  304. data/lib/onlinepayments/sdk/domain/validate_credentials_request.rb +37 -0
  305. data/lib/onlinepayments/sdk/domain/validate_credentials_response.rb +30 -0
  306. data/lib/onlinepayments/sdk/domain/value_mapping_element.rb +29 -24
  307. data/lib/onlinepayments/sdk/domain.rb +4 -0
  308. data/lib/onlinepayments/sdk/exception_factory.rb +76 -0
  309. data/lib/onlinepayments/sdk/factory.rb +163 -118
  310. data/lib/onlinepayments/sdk/idempotence_exception.rb +23 -19
  311. data/lib/onlinepayments/sdk/json/default_marshaller.rb +34 -0
  312. data/lib/onlinepayments/sdk/json/marshaller.rb +27 -0
  313. data/lib/onlinepayments/sdk/json/marshaller_syntax_exception.rb +9 -0
  314. data/lib/onlinepayments/sdk/json.rb +1 -0
  315. data/lib/onlinepayments/sdk/logging/communicator_logger.rb +18 -16
  316. data/lib/onlinepayments/sdk/logging/log_message_builder.rb +80 -47
  317. data/lib/onlinepayments/sdk/logging/logging_capable.rb +1 -1
  318. data/lib/onlinepayments/sdk/logging/obfuscation/body_obfuscator.rb +113 -0
  319. data/lib/onlinepayments/sdk/logging/obfuscation/header_obfuscator.rb +54 -0
  320. data/lib/onlinepayments/sdk/logging/obfuscation/obfuscation_capable.rb +21 -0
  321. data/lib/onlinepayments/sdk/logging/obfuscation/obfuscation_rule.rb +47 -0
  322. data/lib/onlinepayments/sdk/logging/obfuscation.rb +1 -0
  323. data/lib/onlinepayments/sdk/logging/request_log_message_builder.rb +40 -29
  324. data/lib/onlinepayments/sdk/logging/response_log_message_builder.rb +30 -23
  325. data/lib/onlinepayments/sdk/logging/ruby_communicator_logger.rb +49 -45
  326. data/lib/onlinepayments/sdk/logging/stdout_communicator_logger.rb +20 -23
  327. data/lib/onlinepayments/sdk/logging.rb +1 -10
  328. data/lib/onlinepayments/sdk/merchant/captures/captures_client.rb +57 -0
  329. data/lib/onlinepayments/sdk/merchant/captures.rb +4 -0
  330. data/lib/onlinepayments/sdk/merchant/complete/complete_client.rb +60 -0
  331. data/lib/onlinepayments/sdk/merchant/complete.rb +4 -0
  332. data/lib/onlinepayments/sdk/merchant/hostedcheckout/hosted_checkout_client.rb +72 -71
  333. data/lib/onlinepayments/sdk/merchant/hostedcheckout.rb +4 -0
  334. data/lib/onlinepayments/sdk/merchant/hostedtokenization/hosted_tokenization_client.rb +72 -71
  335. data/lib/onlinepayments/sdk/merchant/hostedtokenization.rb +4 -0
  336. data/lib/onlinepayments/sdk/merchant/mandates/mandates_client.rb +165 -164
  337. data/lib/onlinepayments/sdk/merchant/mandates.rb +4 -0
  338. data/lib/onlinepayments/sdk/merchant/merchant_client.rb +116 -64
  339. data/lib/onlinepayments/sdk/merchant/paymentlinks/payment_links_client.rb +102 -101
  340. data/lib/onlinepayments/sdk/merchant/paymentlinks.rb +4 -0
  341. data/lib/onlinepayments/sdk/merchant/payments/payments_client.rb +233 -332
  342. data/lib/onlinepayments/sdk/merchant/payments.rb +4 -0
  343. data/lib/onlinepayments/sdk/merchant/payouts/payouts_client.rb +73 -71
  344. data/lib/onlinepayments/sdk/merchant/payouts.rb +4 -0
  345. data/lib/onlinepayments/sdk/merchant/privacypolicy/get_privacy_policy_params.rb +32 -0
  346. data/lib/onlinepayments/sdk/merchant/privacypolicy/privacy_policy_client.rb +54 -0
  347. data/lib/onlinepayments/sdk/merchant/privacypolicy.rb +4 -0
  348. data/lib/onlinepayments/sdk/merchant/productgroups/get_product_group_params.rb +50 -47
  349. data/lib/onlinepayments/sdk/merchant/productgroups/get_product_groups_params.rb +50 -47
  350. data/lib/onlinepayments/sdk/merchant/productgroups/product_groups_client.rb +72 -72
  351. data/lib/onlinepayments/sdk/merchant/productgroups.rb +4 -0
  352. data/lib/onlinepayments/sdk/merchant/products/get_payment_product_networks_params.rb +27 -25
  353. data/lib/onlinepayments/sdk/merchant/products/get_payment_product_params.rb +50 -47
  354. data/lib/onlinepayments/sdk/merchant/products/get_payment_products_params.rb +50 -47
  355. data/lib/onlinepayments/sdk/merchant/products/get_product_directory_params.rb +21 -19
  356. data/lib/onlinepayments/sdk/merchant/products/products_client.rb +134 -136
  357. data/lib/onlinepayments/sdk/merchant/products.rb +4 -0
  358. data/lib/onlinepayments/sdk/merchant/refunds/refunds_client.rb +57 -0
  359. data/lib/onlinepayments/sdk/merchant/refunds.rb +4 -0
  360. data/lib/onlinepayments/sdk/merchant/services/services_client.rb +124 -155
  361. data/lib/onlinepayments/sdk/merchant/services.rb +4 -0
  362. data/lib/onlinepayments/sdk/merchant/sessions/sessions_client.rb +42 -41
  363. data/lib/onlinepayments/sdk/merchant/sessions.rb +4 -0
  364. data/lib/onlinepayments/sdk/merchant/tokens/tokens_client.rb +101 -100
  365. data/lib/onlinepayments/sdk/merchant/tokens.rb +4 -0
  366. data/lib/onlinepayments/sdk/merchant/webhooks/webhooks_client.rb +83 -0
  367. data/lib/onlinepayments/sdk/merchant/webhooks.rb +4 -0
  368. data/lib/onlinepayments/sdk/merchant.rb +4 -0
  369. data/lib/onlinepayments/sdk/platform_exception.rb +19 -0
  370. data/lib/onlinepayments/sdk/proxy_configuration.rb +60 -60
  371. data/lib/onlinepayments/sdk/reference_exception.rb +14 -9
  372. data/lib/onlinepayments/sdk/validation_exception.rb +14 -9
  373. data/lib/onlinepayments/sdk/webhooks/api_version_mismatch_exception.rb +17 -15
  374. data/lib/onlinepayments/sdk/webhooks/in_memory_secret_key_store.rb +46 -43
  375. data/lib/onlinepayments/sdk/webhooks/secret_key_not_available_exception.rb +16 -12
  376. data/lib/onlinepayments/sdk/webhooks/secret_key_store.rb +13 -11
  377. data/lib/onlinepayments/sdk/webhooks/signature_validation_exception.rb +15 -14
  378. data/lib/onlinepayments/sdk/webhooks/signature_validator.rb +81 -0
  379. data/lib/onlinepayments/sdk/webhooks/webhooks_event.rb +84 -53
  380. data/lib/onlinepayments/sdk/webhooks/webhooks_helper.rb +28 -90
  381. data/lib/onlinepayments/sdk/webhooks.rb +1 -11
  382. data/lib/onlinepayments/sdk.rb +4 -26
  383. data/onlinepayments-sdk-ruby.gemspec +3 -2
  384. metadata +95 -35
  385. data/lib/onlinepayments/sdk/authenticator.rb +0 -16
  386. data/lib/onlinepayments/sdk/communication_exception.rb +0 -16
  387. data/lib/onlinepayments/sdk/connection.rb +0 -41
  388. data/lib/onlinepayments/sdk/data_object.rb +0 -31
  389. data/lib/onlinepayments/sdk/defaultimpl/authorization_type.rb +0 -24
  390. data/lib/onlinepayments/sdk/defaultimpl/default_authenticator.rb +0 -108
  391. data/lib/onlinepayments/sdk/defaultimpl/default_connection.rb +0 -365
  392. data/lib/onlinepayments/sdk/defaultimpl/default_marshaller.rb +0 -32
  393. data/lib/onlinepayments/sdk/defaultimpl.rb +0 -6
  394. data/lib/onlinepayments/sdk/endpoint_configuration.rb +0 -127
  395. data/lib/onlinepayments/sdk/exceptions.rb +0 -8
  396. data/lib/onlinepayments/sdk/logging/logging_util.rb +0 -286
  397. data/lib/onlinepayments/sdk/marshaller.rb +0 -24
  398. data/lib/onlinepayments/sdk/marshaller_syntax_exception.rb +0 -6
  399. data/lib/onlinepayments/sdk/merchant/services/get_privacy_policy_params.rb +0 -30
  400. data/lib/onlinepayments/sdk/meta_data_provider.rb +0 -150
  401. data/lib/onlinepayments/sdk/modules.rb +0 -62
  402. data/lib/onlinepayments/sdk/multipart_form_data_object.rb +0 -44
  403. data/lib/onlinepayments/sdk/multipart_form_data_request.rb +0 -9
  404. data/lib/onlinepayments/sdk/not_found_exception.rb +0 -16
  405. data/lib/onlinepayments/sdk/param_request.rb +0 -11
  406. data/lib/onlinepayments/sdk/payment_platform_exception.rb +0 -15
  407. data/lib/onlinepayments/sdk/pooled_connection.rb +0 -21
  408. data/lib/onlinepayments/sdk/request_header.rb +0 -50
  409. data/lib/onlinepayments/sdk/request_param.rb +0 -23
  410. data/lib/onlinepayments/sdk/response_exception.rb +0 -47
  411. data/lib/onlinepayments/sdk/response_header.rb +0 -42
  412. data/lib/onlinepayments/sdk/uploadable_file.rb +0 -30
  413. data/lib/onlinepayments/sdk/webhooks/webhooks.rb +0 -22
  414. data/lib/onlinepayments/sdk/webhooks/webhooks_helper_builder.rb +0 -25
@@ -1,77 +1,112 @@
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
7
  require 'onlinepayments/sdk/domain/three_d_secure_data'
8
8
 
9
- module OnlinePayments::SDK
10
- 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
11
25
 
12
- # @attr [Long] authentication_amount
13
- # @attr [String] challenge_canvas_size
14
- # @attr [String] challenge_indicator
15
- # @attr [String] exemption_request
16
- # @attr [OnlinePayments::SDK::Domain::ExternalCardholderAuthenticationData] external_cardholder_authentication_data
17
- # @attr [Integer] merchant_fraud_rate
18
- # @attr [OnlinePayments::SDK::Domain::ThreeDSecureData] prior_three_d_secure_data
19
- # @attr [OnlinePayments::SDK::Domain::RedirectionData] redirection_data
20
- # @attr [true/false] secure_corporate_payment
21
- # @attr [true/false] skip_authentication
22
- # @attr [true/false] skip_soft_decline
23
- class ThreeDSecure < OnlinePayments::SDK::DataObject
24
- attr_accessor :authentication_amount
25
- attr_accessor :challenge_canvas_size
26
- attr_accessor :challenge_indicator
27
- attr_accessor :exemption_request
28
- attr_accessor :external_cardholder_authentication_data
29
- attr_accessor :merchant_fraud_rate
30
- attr_accessor :prior_three_d_secure_data
31
- attr_accessor :redirection_data
32
- attr_accessor :secure_corporate_payment
33
- attr_accessor :skip_authentication
34
- attr_accessor :skip_soft_decline
26
+ attr_accessor :authentication_amount
35
27
 
36
- # @return (Hash)
37
- def to_h
38
- hash = super
39
- hash['authenticationAmount'] = @authentication_amount unless @authentication_amount.nil?
40
- hash['challengeCanvasSize'] = @challenge_canvas_size unless @challenge_canvas_size.nil?
41
- hash['challengeIndicator'] = @challenge_indicator unless @challenge_indicator.nil?
42
- hash['exemptionRequest'] = @exemption_request unless @exemption_request.nil?
43
- hash['externalCardholderAuthenticationData'] = @external_cardholder_authentication_data.to_h if @external_cardholder_authentication_data
44
- hash['merchantFraudRate'] = @merchant_fraud_rate unless @merchant_fraud_rate.nil?
45
- hash['priorThreeDSecureData'] = @prior_three_d_secure_data.to_h if @prior_three_d_secure_data
46
- hash['redirectionData'] = @redirection_data.to_h if @redirection_data
47
- hash['secureCorporatePayment'] = @secure_corporate_payment unless @secure_corporate_payment.nil?
48
- hash['skipAuthentication'] = @skip_authentication unless @skip_authentication.nil?
49
- hash['skipSoftDecline'] = @skip_soft_decline unless @skip_soft_decline.nil?
50
- hash
51
- end
28
+ attr_accessor :challenge_canvas_size
52
29
 
53
- def from_hash(hash)
54
- super
55
- @authentication_amount = hash['authenticationAmount'] if hash.key? 'authenticationAmount'
56
- @challenge_canvas_size = hash['challengeCanvasSize'] if hash.key? 'challengeCanvasSize'
57
- @challenge_indicator = hash['challengeIndicator'] if hash.key? 'challengeIndicator'
58
- @exemption_request = hash['exemptionRequest'] if hash.key? 'exemptionRequest'
59
- if hash.key? 'externalCardholderAuthenticationData'
60
- raise TypeError, "value '%s' is not a Hash" % [hash['externalCardholderAuthenticationData']] unless hash['externalCardholderAuthenticationData'].is_a? Hash
61
- @external_cardholder_authentication_data = OnlinePayments::SDK::Domain::ExternalCardholderAuthenticationData.new_from_hash(hash['externalCardholderAuthenticationData'])
62
- end
63
- @merchant_fraud_rate = hash['merchantFraudRate'] if hash.key? 'merchantFraudRate'
64
- if hash.key? 'priorThreeDSecureData'
65
- raise TypeError, "value '%s' is not a Hash" % [hash['priorThreeDSecureData']] unless hash['priorThreeDSecureData'].is_a? Hash
66
- @prior_three_d_secure_data = OnlinePayments::SDK::Domain::ThreeDSecureData.new_from_hash(hash['priorThreeDSecureData'])
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
67
66
  end
68
- if hash.key? 'redirectionData'
69
- raise TypeError, "value '%s' is not a Hash" % [hash['redirectionData']] unless hash['redirectionData'].is_a? Hash
70
- @redirection_data = OnlinePayments::SDK::Domain::RedirectionData.new_from_hash(hash['redirectionData'])
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
71
109
  end
72
- @secure_corporate_payment = hash['secureCorporatePayment'] if hash.key? 'secureCorporatePayment'
73
- @skip_authentication = hash['skipAuthentication'] if hash.key? 'skipAuthentication'
74
- @skip_soft_decline = hash['skipSoftDecline'] if hash.key? 'skipSoftDecline'
75
110
  end
76
111
  end
77
112
  end
@@ -1,61 +1,87 @@
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/three_d_secure_data'
6
6
 
7
- module OnlinePayments::SDK
8
- module Domain
9
-
10
- # @attr [Long] 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::DataObject
20
- attr_accessor :authentication_amount
21
- attr_accessor :challenge_canvas_size
22
- attr_accessor :challenge_indicator
23
- attr_accessor :exemption_request
24
- attr_accessor :merchant_fraud_rate
25
- attr_accessor :prior_three_d_secure_data
26
- attr_accessor :secure_corporate_payment
27
- attr_accessor :skip_authentication
28
- attr_accessor :skip_soft_decline
29
-
30
- # @return (Hash)
31
- def to_h
32
- hash = super
33
- hash['authenticationAmount'] = @authentication_amount unless @authentication_amount.nil?
34
- hash['challengeCanvasSize'] = @challenge_canvas_size unless @challenge_canvas_size.nil?
35
- hash['challengeIndicator'] = @challenge_indicator unless @challenge_indicator.nil?
36
- hash['exemptionRequest'] = @exemption_request unless @exemption_request.nil?
37
- hash['merchantFraudRate'] = @merchant_fraud_rate unless @merchant_fraud_rate.nil?
38
- hash['priorThreeDSecureData'] = @prior_three_d_secure_data.to_h if @prior_three_d_secure_data
39
- hash['secureCorporatePayment'] = @secure_corporate_payment unless @secure_corporate_payment.nil?
40
- hash['skipAuthentication'] = @skip_authentication unless @skip_authentication.nil?
41
- hash['skipSoftDecline'] = @skip_soft_decline unless @skip_soft_decline.nil?
42
- hash
43
- end
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
20
+
21
+ attr_accessor :authentication_amount
22
+
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
32
+
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
52
+ end
44
53
 
45
- def from_hash(hash)
46
- super
47
- @authentication_amount = hash['authenticationAmount'] if hash.key? 'authenticationAmount'
48
- @challenge_canvas_size = hash['challengeCanvasSize'] if hash.key? 'challengeCanvasSize'
49
- @challenge_indicator = hash['challengeIndicator'] if hash.key? 'challengeIndicator'
50
- @exemption_request = hash['exemptionRequest'] if hash.key? 'exemptionRequest'
51
- @merchant_fraud_rate = hash['merchantFraudRate'] if hash.key? 'merchantFraudRate'
52
- if hash.key? 'priorThreeDSecureData'
53
- raise TypeError, "value '%s' is not a Hash" % [hash['priorThreeDSecureData']] unless hash['priorThreeDSecureData'].is_a? Hash
54
- @prior_three_d_secure_data = OnlinePayments::SDK::Domain::ThreeDSecureData.new_from_hash(hash['priorThreeDSecureData'])
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
55
84
  end
56
- @secure_corporate_payment = hash['secureCorporatePayment'] if hash.key? 'secureCorporatePayment'
57
- @skip_authentication = hash['skipAuthentication'] if hash.key? 'skipAuthentication'
58
- @skip_soft_decline = hash['skipSoftDecline'] if hash.key? 'skipSoftDecline'
59
85
  end
60
86
  end
61
87
  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
@@ -1,73 +1,113 @@
1
1
  #
2
- # This class was auto-generated.
2
+ # This file was automatically generated.
3
3
  #
4
- require 'onlinepayments/sdk/data_object'
5
-
6
- module OnlinePayments::SDK
7
- module Domain
8
-
9
- # @attr [String] acs_transaction_id
10
- # @attr [String] applied_exemption
11
- # @attr [String] authentication_status
12
- # @attr [String] cavv
13
- # @attr [String] challenge_indicator
14
- # @attr [String] ds_transaction_id
15
- # @attr [String] eci
16
- # @attr [String] exemption_engine_flow
17
- # @attr [String] flow
18
- # @attr [String] liability
19
- # @attr [String] scheme_eci
20
- # @attr [String] version
21
- # @attr [String] xid
22
- class ThreeDSecureResults < OnlinePayments::SDK::DataObject
23
- attr_accessor :acs_transaction_id
24
- attr_accessor :applied_exemption
25
- attr_accessor :authentication_status
26
- attr_accessor :cavv
27
- attr_accessor :challenge_indicator
28
- attr_accessor :ds_transaction_id
29
- attr_accessor :eci
30
- attr_accessor :exemption_engine_flow
31
- attr_accessor :flow
32
- attr_accessor :liability
33
- attr_accessor :scheme_eci
34
- attr_accessor :version
35
- attr_accessor :xid
36
-
37
- # @return (Hash)
38
- def to_h
39
- hash = super
40
- hash['acsTransactionId'] = @acs_transaction_id unless @acs_transaction_id.nil?
41
- hash['appliedExemption'] = @applied_exemption unless @applied_exemption.nil?
42
- hash['authenticationStatus'] = @authentication_status unless @authentication_status.nil?
43
- hash['cavv'] = @cavv unless @cavv.nil?
44
- hash['challengeIndicator'] = @challenge_indicator unless @challenge_indicator.nil?
45
- hash['dsTransactionId'] = @ds_transaction_id unless @ds_transaction_id.nil?
46
- hash['eci'] = @eci unless @eci.nil?
47
- hash['exemptionEngineFlow'] = @exemption_engine_flow unless @exemption_engine_flow.nil?
48
- hash['flow'] = @flow unless @flow.nil?
49
- hash['liability'] = @liability unless @liability.nil?
50
- hash['schemeEci'] = @scheme_eci unless @scheme_eci.nil?
51
- hash['version'] = @version unless @version.nil?
52
- hash['xid'] = @xid unless @xid.nil?
53
- hash
54
- end
4
+ require 'onlinepayments/sdk/domain/data_object'
5
+
6
+ module OnlinePayments
7
+ module SDK
8
+ module Domain
9
+ # @attr [String] acs_transaction_id
10
+ # @attr [String] applied_exemption
11
+ # @attr [String] authentication_status
12
+ # @attr [String] cavv
13
+ # @attr [String] challenge_indicator
14
+ # @attr [String] ds_transaction_id
15
+ # @attr [String] eci
16
+ # @attr [String] exemption_engine_flow
17
+ # @attr [String] flow
18
+ # @attr [String] liability
19
+ # @attr [String] scheme_eci
20
+ # @attr [String] version
21
+ # @attr [String] xid
22
+ class ThreeDSecureResults < OnlinePayments::SDK::Domain::DataObject
23
+
24
+ attr_accessor :acs_transaction_id
25
+
26
+ attr_accessor :applied_exemption
27
+
28
+ attr_accessor :authentication_status
29
+
30
+ attr_accessor :cavv
31
+
32
+ attr_accessor :challenge_indicator
33
+
34
+ attr_accessor :ds_transaction_id
35
+
36
+ attr_accessor :eci
37
+
38
+ attr_accessor :exemption_engine_flow
39
+
40
+ attr_accessor :flow
41
+
42
+ attr_accessor :liability
43
+
44
+ attr_accessor :scheme_eci
45
+
46
+ attr_accessor :version
47
+
48
+ attr_accessor :xid
49
+
50
+ # @return (Hash)
51
+ def to_h
52
+ hash = super
53
+ hash['acsTransactionId'] = @acs_transaction_id unless @acs_transaction_id.nil?
54
+ hash['appliedExemption'] = @applied_exemption unless @applied_exemption.nil?
55
+ hash['authenticationStatus'] = @authentication_status unless @authentication_status.nil?
56
+ hash['cavv'] = @cavv unless @cavv.nil?
57
+ hash['challengeIndicator'] = @challenge_indicator unless @challenge_indicator.nil?
58
+ hash['dsTransactionId'] = @ds_transaction_id unless @ds_transaction_id.nil?
59
+ hash['eci'] = @eci unless @eci.nil?
60
+ hash['exemptionEngineFlow'] = @exemption_engine_flow unless @exemption_engine_flow.nil?
61
+ hash['flow'] = @flow unless @flow.nil?
62
+ hash['liability'] = @liability unless @liability.nil?
63
+ hash['schemeEci'] = @scheme_eci unless @scheme_eci.nil?
64
+ hash['version'] = @version unless @version.nil?
65
+ hash['xid'] = @xid unless @xid.nil?
66
+ hash
67
+ end
55
68
 
56
- def from_hash(hash)
57
- super
58
- @acs_transaction_id = hash['acsTransactionId'] if hash.key? 'acsTransactionId'
59
- @applied_exemption = hash['appliedExemption'] if hash.key? 'appliedExemption'
60
- @authentication_status = hash['authenticationStatus'] if hash.key? 'authenticationStatus'
61
- @cavv = hash['cavv'] if hash.key? 'cavv'
62
- @challenge_indicator = hash['challengeIndicator'] if hash.key? 'challengeIndicator'
63
- @ds_transaction_id = hash['dsTransactionId'] if hash.key? 'dsTransactionId'
64
- @eci = hash['eci'] if hash.key? 'eci'
65
- @exemption_engine_flow = hash['exemptionEngineFlow'] if hash.key? 'exemptionEngineFlow'
66
- @flow = hash['flow'] if hash.key? 'flow'
67
- @liability = hash['liability'] if hash.key? 'liability'
68
- @scheme_eci = hash['schemeEci'] if hash.key? 'schemeEci'
69
- @version = hash['version'] if hash.key? 'version'
70
- @xid = hash['xid'] if hash.key? 'xid'
69
+ def from_hash(hash)
70
+ super
71
+ if hash.has_key? 'acsTransactionId'
72
+ @acs_transaction_id = hash['acsTransactionId']
73
+ end
74
+ if hash.has_key? 'appliedExemption'
75
+ @applied_exemption = hash['appliedExemption']
76
+ end
77
+ if hash.has_key? 'authenticationStatus'
78
+ @authentication_status = hash['authenticationStatus']
79
+ end
80
+ if hash.has_key? 'cavv'
81
+ @cavv = hash['cavv']
82
+ end
83
+ if hash.has_key? 'challengeIndicator'
84
+ @challenge_indicator = hash['challengeIndicator']
85
+ end
86
+ if hash.has_key? 'dsTransactionId'
87
+ @ds_transaction_id = hash['dsTransactionId']
88
+ end
89
+ if hash.has_key? 'eci'
90
+ @eci = hash['eci']
91
+ end
92
+ if hash.has_key? 'exemptionEngineFlow'
93
+ @exemption_engine_flow = hash['exemptionEngineFlow']
94
+ end
95
+ if hash.has_key? 'flow'
96
+ @flow = hash['flow']
97
+ end
98
+ if hash.has_key? 'liability'
99
+ @liability = hash['liability']
100
+ end
101
+ if hash.has_key? 'schemeEci'
102
+ @scheme_eci = hash['schemeEci']
103
+ end
104
+ if hash.has_key? 'version'
105
+ @version = hash['version']
106
+ end
107
+ if hash.has_key? 'xid'
108
+ @xid = hash['xid']
109
+ end
110
+ end
71
111
  end
72
112
  end
73
113
  end
@@ -1,32 +1,37 @@
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/token_card_data'
6
6
 
7
- module OnlinePayments::SDK
8
- module Domain
7
+ module OnlinePayments
8
+ module SDK
9
+ module Domain
10
+ # @attr [String] alias
11
+ # @attr [OnlinePayments::SDK::Domain::TokenCardData] data
12
+ class TokenCard < OnlinePayments::SDK::Domain::DataObject
9
13
 
10
- # @attr [String] alias
11
- # @attr [OnlinePayments::SDK::Domain::TokenCardData] data
12
- class TokenCard < OnlinePayments::SDK::DataObject
13
- attr_accessor :alias
14
- attr_accessor :data
14
+ attr_accessor :alias
15
15
 
16
- # @return (Hash)
17
- def to_h
18
- hash = super
19
- hash['alias'] = @alias unless @alias.nil?
20
- hash['data'] = @data.to_h if @data
21
- hash
22
- end
16
+ attr_accessor :data
17
+
18
+ # @return (Hash)
19
+ def to_h
20
+ hash = super
21
+ hash['alias'] = @alias unless @alias.nil?
22
+ hash['data'] = @data.to_h unless @data.nil?
23
+ hash
24
+ end
23
25
 
24
- def from_hash(hash)
25
- super
26
- @alias = hash['alias'] if hash.key? 'alias'
27
- if hash.key? 'data'
28
- raise TypeError, "value '%s' is not a Hash" % [hash['data']] unless hash['data'].is_a? Hash
29
- @data = OnlinePayments::SDK::Domain::TokenCardData.new_from_hash(hash['data'])
26
+ def from_hash(hash)
27
+ super
28
+ if hash.has_key? 'alias'
29
+ @alias = hash['alias']
30
+ end
31
+ if hash.has_key? 'data'
32
+ raise TypeError, "value '%s' is not a Hash" % [hash['data']] unless hash['data'].is_a? Hash
33
+ @data = OnlinePayments::SDK::Domain::TokenCardData.new_from_hash(hash['data'])
34
+ end
30
35
  end
31
36
  end
32
37
  end