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,37 +1,45 @@
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 [true/false] click_to_pay
10
+ # @attr [true/false] group_cards
11
+ # @attr [Array<Integer>] payment_product_preferred_order
12
+ class CardPaymentMethodSpecificInputForHostedCheckout < OnlinePayments::SDK::Domain::DataObject
8
13
 
9
- # @attr [true/false] click_to_pay
10
- # @attr [true/false] group_cards
11
- # @attr [Array<Integer>] payment_product_preferred_order
12
- class CardPaymentMethodSpecificInputForHostedCheckout < OnlinePayments::SDK::DataObject
13
- attr_accessor :click_to_pay
14
- attr_accessor :group_cards
15
- attr_accessor :payment_product_preferred_order
14
+ attr_accessor :click_to_pay
16
15
 
17
- # @return (Hash)
18
- def to_h
19
- hash = super
20
- hash['clickToPay'] = @click_to_pay unless @click_to_pay.nil?
21
- hash['groupCards'] = @group_cards unless @group_cards.nil?
22
- hash['paymentProductPreferredOrder'] = @payment_product_preferred_order unless @payment_product_preferred_order.nil?
23
- hash
24
- end
16
+ attr_accessor :group_cards
17
+
18
+ attr_accessor :payment_product_preferred_order
19
+
20
+ # @return (Hash)
21
+ def to_h
22
+ hash = super
23
+ hash['clickToPay'] = @click_to_pay unless @click_to_pay.nil?
24
+ hash['groupCards'] = @group_cards unless @group_cards.nil?
25
+ hash['paymentProductPreferredOrder'] = @payment_product_preferred_order unless @payment_product_preferred_order.nil?
26
+ hash
27
+ end
25
28
 
26
- def from_hash(hash)
27
- super
28
- @click_to_pay = hash['clickToPay'] if hash.key? 'clickToPay'
29
- @group_cards = hash['groupCards'] if hash.key? 'groupCards'
30
- if hash.key? 'paymentProductPreferredOrder'
31
- raise TypeError, "value '%s' is not an Array" % [hash['paymentProductPreferredOrder']] unless hash['paymentProductPreferredOrder'].is_a? Array
32
- @payment_product_preferred_order = []
33
- hash['paymentProductPreferredOrder'].each do |e|
34
- @payment_product_preferred_order << e
29
+ def from_hash(hash)
30
+ super
31
+ if hash.has_key? 'clickToPay'
32
+ @click_to_pay = hash['clickToPay']
33
+ end
34
+ if hash.has_key? 'groupCards'
35
+ @group_cards = hash['groupCards']
36
+ end
37
+ if hash.has_key? 'paymentProductPreferredOrder'
38
+ raise TypeError, "value '%s' is not an Array" % [hash['paymentProductPreferredOrder']] unless hash['paymentProductPreferredOrder'].is_a? Array
39
+ @payment_product_preferred_order = []
40
+ hash['paymentProductPreferredOrder'].each do |e|
41
+ @payment_product_preferred_order << e
42
+ end
35
43
  end
36
44
  end
37
45
  end
@@ -1,125 +1,150 @@
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/acquirer_information'
6
5
  require 'onlinepayments/sdk/domain/card_essentials'
7
6
  require 'onlinepayments/sdk/domain/card_fraud_results'
8
7
  require 'onlinepayments/sdk/domain/currency_conversion'
8
+ require 'onlinepayments/sdk/domain/data_object'
9
9
  require 'onlinepayments/sdk/domain/external_token_linked'
10
- require 'onlinepayments/sdk/domain/network_token_essentials'
11
10
  require 'onlinepayments/sdk/domain/payment_product3208_specific_output'
12
11
  require 'onlinepayments/sdk/domain/payment_product3209_specific_output'
13
12
  require 'onlinepayments/sdk/domain/three_d_secure_results'
14
13
 
15
- module OnlinePayments::SDK
16
- module Domain
17
-
18
- # @attr [OnlinePayments::SDK::Domain::AcquirerInformation] acquirer_information
19
- # @attr [Long] authenticated_amount
20
- # @attr [String] authorisation_code
21
- # @attr [OnlinePayments::SDK::Domain::CardEssentials] card
22
- # @attr [OnlinePayments::SDK::Domain::CurrencyConversion] currency_conversion
23
- # @attr [OnlinePayments::SDK::Domain::ExternalTokenLinked] external_token_linked
24
- # @attr [OnlinePayments::SDK::Domain::CardFraudResults] fraud_results
25
- # @attr [String] initial_scheme_transaction_id
26
- # @attr [OnlinePayments::SDK::Domain::NetworkTokenEssentials] network_token_data
27
- # @attr [String] payment_account_reference
28
- # @attr [String] payment_option
29
- # @attr [OnlinePayments::SDK::Domain::PaymentProduct3208SpecificOutput] payment_product3208_specific_output
30
- # @attr [OnlinePayments::SDK::Domain::PaymentProduct3209SpecificOutput] payment_product3209_specific_output
31
- # @attr [Integer] payment_product_id
32
- # @attr [String] scheme_reference_data
33
- # @attr [OnlinePayments::SDK::Domain::ThreeDSecureResults] three_d_secure_results
34
- # @attr [String] token
35
- class CardPaymentMethodSpecificOutput < OnlinePayments::SDK::DataObject
36
- attr_accessor :acquirer_information
37
- attr_accessor :authenticated_amount
38
- attr_accessor :authorisation_code
39
- attr_accessor :card
40
- attr_accessor :currency_conversion
41
- attr_accessor :external_token_linked
42
- attr_accessor :fraud_results
43
- attr_accessor :initial_scheme_transaction_id
44
- attr_accessor :network_token_data
45
- attr_accessor :payment_account_reference
46
- attr_accessor :payment_option
47
- attr_accessor :payment_product3208_specific_output
48
- attr_accessor :payment_product3209_specific_output
49
- attr_accessor :payment_product_id
50
- attr_accessor :scheme_reference_data
51
- attr_accessor :three_d_secure_results
52
- attr_accessor :token
53
-
54
- # @return (Hash)
55
- def to_h
56
- hash = super
57
- hash['acquirerInformation'] = @acquirer_information.to_h if @acquirer_information
58
- hash['authenticatedAmount'] = @authenticated_amount unless @authenticated_amount.nil?
59
- hash['authorisationCode'] = @authorisation_code unless @authorisation_code.nil?
60
- hash['card'] = @card.to_h if @card
61
- hash['currencyConversion'] = @currency_conversion.to_h if @currency_conversion
62
- hash['externalTokenLinked'] = @external_token_linked.to_h if @external_token_linked
63
- hash['fraudResults'] = @fraud_results.to_h if @fraud_results
64
- hash['initialSchemeTransactionId'] = @initial_scheme_transaction_id unless @initial_scheme_transaction_id.nil?
65
- hash['networkTokenData'] = @network_token_data.to_h if @network_token_data
66
- hash['paymentAccountReference'] = @payment_account_reference unless @payment_account_reference.nil?
67
- hash['paymentOption'] = @payment_option unless @payment_option.nil?
68
- hash['paymentProduct3208SpecificOutput'] = @payment_product3208_specific_output.to_h if @payment_product3208_specific_output
69
- hash['paymentProduct3209SpecificOutput'] = @payment_product3209_specific_output.to_h if @payment_product3209_specific_output
70
- hash['paymentProductId'] = @payment_product_id unless @payment_product_id.nil?
71
- hash['schemeReferenceData'] = @scheme_reference_data unless @scheme_reference_data.nil?
72
- hash['threeDSecureResults'] = @three_d_secure_results.to_h if @three_d_secure_results
73
- hash['token'] = @token unless @token.nil?
74
- hash
75
- end
14
+ module OnlinePayments
15
+ module SDK
16
+ module Domain
17
+ # @attr [OnlinePayments::SDK::Domain::AcquirerInformation] acquirer_information
18
+ # @attr [Integer] authenticated_amount
19
+ # @attr [String] authorisation_code
20
+ # @attr [OnlinePayments::SDK::Domain::CardEssentials] card
21
+ # @attr [OnlinePayments::SDK::Domain::CurrencyConversion] currency_conversion
22
+ # @attr [OnlinePayments::SDK::Domain::ExternalTokenLinked] external_token_linked
23
+ # @attr [OnlinePayments::SDK::Domain::CardFraudResults] fraud_results
24
+ # @attr [String] initial_scheme_transaction_id
25
+ # @attr [String] payment_account_reference
26
+ # @attr [String] payment_option
27
+ # @attr [OnlinePayments::SDK::Domain::PaymentProduct3208SpecificOutput] payment_product3208_specific_output
28
+ # @attr [OnlinePayments::SDK::Domain::PaymentProduct3209SpecificOutput] payment_product3209_specific_output
29
+ # @attr [Integer] payment_product_id
30
+ # @attr [String] scheme_reference_data
31
+ # @attr [OnlinePayments::SDK::Domain::ThreeDSecureResults] three_d_secure_results
32
+ # @attr [String] token
33
+ class CardPaymentMethodSpecificOutput < OnlinePayments::SDK::Domain::DataObject
76
34
 
77
- def from_hash(hash)
78
- super
79
- if hash.key? 'acquirerInformation'
80
- raise TypeError, "value '%s' is not a Hash" % [hash['acquirerInformation']] unless hash['acquirerInformation'].is_a? Hash
81
- @acquirer_information = OnlinePayments::SDK::Domain::AcquirerInformation.new_from_hash(hash['acquirerInformation'])
82
- end
83
- @authenticated_amount = hash['authenticatedAmount'] if hash.key? 'authenticatedAmount'
84
- @authorisation_code = hash['authorisationCode'] if hash.key? 'authorisationCode'
85
- if hash.key? 'card'
86
- raise TypeError, "value '%s' is not a Hash" % [hash['card']] unless hash['card'].is_a? Hash
87
- @card = OnlinePayments::SDK::Domain::CardEssentials.new_from_hash(hash['card'])
88
- end
89
- if hash.key? 'currencyConversion'
90
- raise TypeError, "value '%s' is not a Hash" % [hash['currencyConversion']] unless hash['currencyConversion'].is_a? Hash
91
- @currency_conversion = OnlinePayments::SDK::Domain::CurrencyConversion.new_from_hash(hash['currencyConversion'])
92
- end
93
- if hash.key? 'externalTokenLinked'
94
- raise TypeError, "value '%s' is not a Hash" % [hash['externalTokenLinked']] unless hash['externalTokenLinked'].is_a? Hash
95
- @external_token_linked = OnlinePayments::SDK::Domain::ExternalTokenLinked.new_from_hash(hash['externalTokenLinked'])
96
- end
97
- if hash.key? 'fraudResults'
98
- raise TypeError, "value '%s' is not a Hash" % [hash['fraudResults']] unless hash['fraudResults'].is_a? Hash
99
- @fraud_results = OnlinePayments::SDK::Domain::CardFraudResults.new_from_hash(hash['fraudResults'])
100
- end
101
- @initial_scheme_transaction_id = hash['initialSchemeTransactionId'] if hash.key? 'initialSchemeTransactionId'
102
- if hash.key? 'networkTokenData'
103
- raise TypeError, "value '%s' is not a Hash" % [hash['networkTokenData']] unless hash['networkTokenData'].is_a? Hash
104
- @network_token_data = OnlinePayments::SDK::Domain::NetworkTokenEssentials.new_from_hash(hash['networkTokenData'])
105
- end
106
- @payment_account_reference = hash['paymentAccountReference'] if hash.key? 'paymentAccountReference'
107
- @payment_option = hash['paymentOption'] if hash.key? 'paymentOption'
108
- if hash.key? 'paymentProduct3208SpecificOutput'
109
- raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct3208SpecificOutput']] unless hash['paymentProduct3208SpecificOutput'].is_a? Hash
110
- @payment_product3208_specific_output = OnlinePayments::SDK::Domain::PaymentProduct3208SpecificOutput.new_from_hash(hash['paymentProduct3208SpecificOutput'])
111
- end
112
- if hash.key? 'paymentProduct3209SpecificOutput'
113
- raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct3209SpecificOutput']] unless hash['paymentProduct3209SpecificOutput'].is_a? Hash
114
- @payment_product3209_specific_output = OnlinePayments::SDK::Domain::PaymentProduct3209SpecificOutput.new_from_hash(hash['paymentProduct3209SpecificOutput'])
35
+ attr_accessor :acquirer_information
36
+
37
+ attr_accessor :authenticated_amount
38
+
39
+ attr_accessor :authorisation_code
40
+
41
+ attr_accessor :card
42
+
43
+ attr_accessor :currency_conversion
44
+
45
+ attr_accessor :external_token_linked
46
+
47
+ attr_accessor :fraud_results
48
+
49
+ attr_accessor :initial_scheme_transaction_id
50
+
51
+ attr_accessor :payment_account_reference
52
+
53
+ attr_accessor :payment_option
54
+
55
+ attr_accessor :payment_product3208_specific_output
56
+
57
+ attr_accessor :payment_product3209_specific_output
58
+
59
+ attr_accessor :payment_product_id
60
+
61
+ attr_accessor :scheme_reference_data
62
+
63
+ attr_accessor :three_d_secure_results
64
+
65
+ attr_accessor :token
66
+
67
+ # @return (Hash)
68
+ def to_h
69
+ hash = super
70
+ hash['acquirerInformation'] = @acquirer_information.to_h unless @acquirer_information.nil?
71
+ hash['authenticatedAmount'] = @authenticated_amount unless @authenticated_amount.nil?
72
+ hash['authorisationCode'] = @authorisation_code unless @authorisation_code.nil?
73
+ hash['card'] = @card.to_h unless @card.nil?
74
+ hash['currencyConversion'] = @currency_conversion.to_h unless @currency_conversion.nil?
75
+ hash['externalTokenLinked'] = @external_token_linked.to_h unless @external_token_linked.nil?
76
+ hash['fraudResults'] = @fraud_results.to_h unless @fraud_results.nil?
77
+ hash['initialSchemeTransactionId'] = @initial_scheme_transaction_id unless @initial_scheme_transaction_id.nil?
78
+ hash['paymentAccountReference'] = @payment_account_reference unless @payment_account_reference.nil?
79
+ hash['paymentOption'] = @payment_option unless @payment_option.nil?
80
+ hash['paymentProduct3208SpecificOutput'] = @payment_product3208_specific_output.to_h unless @payment_product3208_specific_output.nil?
81
+ hash['paymentProduct3209SpecificOutput'] = @payment_product3209_specific_output.to_h unless @payment_product3209_specific_output.nil?
82
+ hash['paymentProductId'] = @payment_product_id unless @payment_product_id.nil?
83
+ hash['schemeReferenceData'] = @scheme_reference_data unless @scheme_reference_data.nil?
84
+ hash['threeDSecureResults'] = @three_d_secure_results.to_h unless @three_d_secure_results.nil?
85
+ hash['token'] = @token unless @token.nil?
86
+ hash
115
87
  end
116
- @payment_product_id = hash['paymentProductId'] if hash.key? 'paymentProductId'
117
- @scheme_reference_data = hash['schemeReferenceData'] if hash.key? 'schemeReferenceData'
118
- if hash.key? 'threeDSecureResults'
119
- raise TypeError, "value '%s' is not a Hash" % [hash['threeDSecureResults']] unless hash['threeDSecureResults'].is_a? Hash
120
- @three_d_secure_results = OnlinePayments::SDK::Domain::ThreeDSecureResults.new_from_hash(hash['threeDSecureResults'])
88
+
89
+ def from_hash(hash)
90
+ super
91
+ if hash.has_key? 'acquirerInformation'
92
+ raise TypeError, "value '%s' is not a Hash" % [hash['acquirerInformation']] unless hash['acquirerInformation'].is_a? Hash
93
+ @acquirer_information = OnlinePayments::SDK::Domain::AcquirerInformation.new_from_hash(hash['acquirerInformation'])
94
+ end
95
+ if hash.has_key? 'authenticatedAmount'
96
+ @authenticated_amount = hash['authenticatedAmount']
97
+ end
98
+ if hash.has_key? 'authorisationCode'
99
+ @authorisation_code = hash['authorisationCode']
100
+ end
101
+ if hash.has_key? 'card'
102
+ raise TypeError, "value '%s' is not a Hash" % [hash['card']] unless hash['card'].is_a? Hash
103
+ @card = OnlinePayments::SDK::Domain::CardEssentials.new_from_hash(hash['card'])
104
+ end
105
+ if hash.has_key? 'currencyConversion'
106
+ raise TypeError, "value '%s' is not a Hash" % [hash['currencyConversion']] unless hash['currencyConversion'].is_a? Hash
107
+ @currency_conversion = OnlinePayments::SDK::Domain::CurrencyConversion.new_from_hash(hash['currencyConversion'])
108
+ end
109
+ if hash.has_key? 'externalTokenLinked'
110
+ raise TypeError, "value '%s' is not a Hash" % [hash['externalTokenLinked']] unless hash['externalTokenLinked'].is_a? Hash
111
+ @external_token_linked = OnlinePayments::SDK::Domain::ExternalTokenLinked.new_from_hash(hash['externalTokenLinked'])
112
+ end
113
+ if hash.has_key? 'fraudResults'
114
+ raise TypeError, "value '%s' is not a Hash" % [hash['fraudResults']] unless hash['fraudResults'].is_a? Hash
115
+ @fraud_results = OnlinePayments::SDK::Domain::CardFraudResults.new_from_hash(hash['fraudResults'])
116
+ end
117
+ if hash.has_key? 'initialSchemeTransactionId'
118
+ @initial_scheme_transaction_id = hash['initialSchemeTransactionId']
119
+ end
120
+ if hash.has_key? 'paymentAccountReference'
121
+ @payment_account_reference = hash['paymentAccountReference']
122
+ end
123
+ if hash.has_key? 'paymentOption'
124
+ @payment_option = hash['paymentOption']
125
+ end
126
+ if hash.has_key? 'paymentProduct3208SpecificOutput'
127
+ raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct3208SpecificOutput']] unless hash['paymentProduct3208SpecificOutput'].is_a? Hash
128
+ @payment_product3208_specific_output = OnlinePayments::SDK::Domain::PaymentProduct3208SpecificOutput.new_from_hash(hash['paymentProduct3208SpecificOutput'])
129
+ end
130
+ if hash.has_key? 'paymentProduct3209SpecificOutput'
131
+ raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct3209SpecificOutput']] unless hash['paymentProduct3209SpecificOutput'].is_a? Hash
132
+ @payment_product3209_specific_output = OnlinePayments::SDK::Domain::PaymentProduct3209SpecificOutput.new_from_hash(hash['paymentProduct3209SpecificOutput'])
133
+ end
134
+ if hash.has_key? 'paymentProductId'
135
+ @payment_product_id = hash['paymentProductId']
136
+ end
137
+ if hash.has_key? 'schemeReferenceData'
138
+ @scheme_reference_data = hash['schemeReferenceData']
139
+ end
140
+ if hash.has_key? 'threeDSecureResults'
141
+ raise TypeError, "value '%s' is not a Hash" % [hash['threeDSecureResults']] unless hash['threeDSecureResults'].is_a? Hash
142
+ @three_d_secure_results = OnlinePayments::SDK::Domain::ThreeDSecureResults.new_from_hash(hash['threeDSecureResults'])
143
+ end
144
+ if hash.has_key? 'token'
145
+ @token = hash['token']
146
+ end
121
147
  end
122
- @token = hash['token'] if hash.key? 'token'
123
148
  end
124
149
  end
125
150
  end
@@ -1,41 +1,52 @@
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/card'
5
+ require 'onlinepayments/sdk/domain/data_object'
6
6
 
7
- module OnlinePayments::SDK
8
- module Domain
7
+ module OnlinePayments
8
+ module SDK
9
+ module Domain
10
+ # @attr [OnlinePayments::SDK::Domain::Card] card
11
+ # @attr [Integer] payment_product_id
12
+ # @attr [String] payout_reason
13
+ # @attr [String] token
14
+ class CardPayoutMethodSpecificInput < OnlinePayments::SDK::Domain::DataObject
9
15
 
10
- # @attr [OnlinePayments::SDK::Domain::Card] card
11
- # @attr [Integer] payment_product_id
12
- # @attr [String] payout_reason
13
- # @attr [String] token
14
- class CardPayoutMethodSpecificInput < OnlinePayments::SDK::DataObject
15
- attr_accessor :card
16
- attr_accessor :payment_product_id
17
- attr_accessor :payout_reason
18
- attr_accessor :token
16
+ attr_accessor :card
19
17
 
20
- # @return (Hash)
21
- def to_h
22
- hash = super
23
- hash['card'] = @card.to_h if @card
24
- hash['paymentProductId'] = @payment_product_id unless @payment_product_id.nil?
25
- hash['payoutReason'] = @payout_reason unless @payout_reason.nil?
26
- hash['token'] = @token unless @token.nil?
27
- hash
28
- end
18
+ attr_accessor :payment_product_id
19
+
20
+ attr_accessor :payout_reason
21
+
22
+ attr_accessor :token
23
+
24
+ # @return (Hash)
25
+ def to_h
26
+ hash = super
27
+ hash['card'] = @card.to_h unless @card.nil?
28
+ hash['paymentProductId'] = @payment_product_id unless @payment_product_id.nil?
29
+ hash['payoutReason'] = @payout_reason unless @payout_reason.nil?
30
+ hash['token'] = @token unless @token.nil?
31
+ hash
32
+ end
29
33
 
30
- def from_hash(hash)
31
- super
32
- if hash.key? 'card'
33
- raise TypeError, "value '%s' is not a Hash" % [hash['card']] unless hash['card'].is_a? Hash
34
- @card = OnlinePayments::SDK::Domain::Card.new_from_hash(hash['card'])
34
+ def from_hash(hash)
35
+ super
36
+ if hash.has_key? 'card'
37
+ raise TypeError, "value '%s' is not a Hash" % [hash['card']] unless hash['card'].is_a? Hash
38
+ @card = OnlinePayments::SDK::Domain::Card.new_from_hash(hash['card'])
39
+ end
40
+ if hash.has_key? 'paymentProductId'
41
+ @payment_product_id = hash['paymentProductId']
42
+ end
43
+ if hash.has_key? 'payoutReason'
44
+ @payout_reason = hash['payoutReason']
45
+ end
46
+ if hash.has_key? 'token'
47
+ @token = hash['token']
48
+ end
35
49
  end
36
- @payment_product_id = hash['paymentProductId'] if hash.key? 'paymentProductId'
37
- @payout_reason = hash['payoutReason'] if hash.key? 'payoutReason'
38
- @token = hash['token'] if hash.key? 'token'
39
50
  end
40
51
  end
41
52
  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] recurring_payment_sequence_indicator
10
+ class CardRecurrenceDetails < OnlinePayments::SDK::Domain::DataObject
8
11
 
9
- # @attr [String] recurring_payment_sequence_indicator
10
- class CardRecurrenceDetails < OnlinePayments::SDK::DataObject
11
- attr_accessor :recurring_payment_sequence_indicator
12
+ attr_accessor :recurring_payment_sequence_indicator
12
13
 
13
- # @return (Hash)
14
- def to_h
15
- hash = super
16
- hash['recurringPaymentSequenceIndicator'] = @recurring_payment_sequence_indicator unless @recurring_payment_sequence_indicator.nil?
17
- hash
18
- end
14
+ # @return (Hash)
15
+ def to_h
16
+ hash = super
17
+ hash['recurringPaymentSequenceIndicator'] = @recurring_payment_sequence_indicator unless @recurring_payment_sequence_indicator.nil?
18
+ hash
19
+ end
19
20
 
20
- def from_hash(hash)
21
- super
22
- @recurring_payment_sequence_indicator = hash['recurringPaymentSequenceIndicator'] if hash.key? 'recurringPaymentSequenceIndicator'
21
+ def from_hash(hash)
22
+ super
23
+ if hash.has_key? 'recurringPaymentSequenceIndicator'
24
+ @recurring_payment_sequence_indicator = hash['recurringPaymentSequenceIndicator']
25
+ end
26
+ end
23
27
  end
24
28
  end
25
29
  end
@@ -1,41 +1,52 @@
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/surcharge_calculation_card'
6
6
 
7
- module OnlinePayments::SDK
8
- module Domain
7
+ module OnlinePayments
8
+ module SDK
9
+ module Domain
10
+ # @attr [OnlinePayments::SDK::Domain::SurchargeCalculationCard] card
11
+ # @attr [String] encrypted_customer_input
12
+ # @attr [String] hosted_tokenization_id
13
+ # @attr [String] token
14
+ class CardSource < OnlinePayments::SDK::Domain::DataObject
9
15
 
10
- # @attr [OnlinePayments::SDK::Domain::SurchargeCalculationCard] card
11
- # @attr [String] encrypted_customer_input
12
- # @attr [String] hosted_tokenization_id
13
- # @attr [String] token
14
- class CardSource < OnlinePayments::SDK::DataObject
15
- attr_accessor :card
16
- attr_accessor :encrypted_customer_input
17
- attr_accessor :hosted_tokenization_id
18
- attr_accessor :token
16
+ attr_accessor :card
19
17
 
20
- # @return (Hash)
21
- def to_h
22
- hash = super
23
- hash['card'] = @card.to_h if @card
24
- hash['encryptedCustomerInput'] = @encrypted_customer_input unless @encrypted_customer_input.nil?
25
- hash['hostedTokenizationId'] = @hosted_tokenization_id unless @hosted_tokenization_id.nil?
26
- hash['token'] = @token unless @token.nil?
27
- hash
28
- end
18
+ attr_accessor :encrypted_customer_input
19
+
20
+ attr_accessor :hosted_tokenization_id
21
+
22
+ attr_accessor :token
23
+
24
+ # @return (Hash)
25
+ def to_h
26
+ hash = super
27
+ hash['card'] = @card.to_h unless @card.nil?
28
+ hash['encryptedCustomerInput'] = @encrypted_customer_input unless @encrypted_customer_input.nil?
29
+ hash['hostedTokenizationId'] = @hosted_tokenization_id unless @hosted_tokenization_id.nil?
30
+ hash['token'] = @token unless @token.nil?
31
+ hash
32
+ end
29
33
 
30
- def from_hash(hash)
31
- super
32
- if hash.key? 'card'
33
- raise TypeError, "value '%s' is not a Hash" % [hash['card']] unless hash['card'].is_a? Hash
34
- @card = OnlinePayments::SDK::Domain::SurchargeCalculationCard.new_from_hash(hash['card'])
34
+ def from_hash(hash)
35
+ super
36
+ if hash.has_key? 'card'
37
+ raise TypeError, "value '%s' is not a Hash" % [hash['card']] unless hash['card'].is_a? Hash
38
+ @card = OnlinePayments::SDK::Domain::SurchargeCalculationCard.new_from_hash(hash['card'])
39
+ end
40
+ if hash.has_key? 'encryptedCustomerInput'
41
+ @encrypted_customer_input = hash['encryptedCustomerInput']
42
+ end
43
+ if hash.has_key? 'hostedTokenizationId'
44
+ @hosted_tokenization_id = hash['hostedTokenizationId']
45
+ end
46
+ if hash.has_key? 'token'
47
+ @token = hash['token']
48
+ end
35
49
  end
36
- @encrypted_customer_input = hash['encryptedCustomerInput'] if hash.key? 'encryptedCustomerInput'
37
- @hosted_tokenization_id = hash['hostedTokenizationId'] if hash.key? 'hostedTokenizationId'
38
- @token = hash['token'] if hash.key? 'token'
39
50
  end
40
51
  end
41
52
  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] card_number
10
+ # @attr [String] cardholder_name
11
+ # @attr [String] expiry_date
12
+ class CardWithoutCvv < OnlinePayments::SDK::Domain::DataObject
8
13
 
9
- # @attr [String] card_number
10
- # @attr [String] cardholder_name
11
- # @attr [String] expiry_date
12
- class CardWithoutCvv < OnlinePayments::SDK::DataObject
13
- attr_accessor :card_number
14
- attr_accessor :cardholder_name
15
- attr_accessor :expiry_date
14
+ attr_accessor :card_number
16
15
 
17
- # @return (Hash)
18
- def to_h
19
- hash = super
20
- hash['cardNumber'] = @card_number unless @card_number.nil?
21
- hash['cardholderName'] = @cardholder_name unless @cardholder_name.nil?
22
- hash['expiryDate'] = @expiry_date unless @expiry_date.nil?
23
- hash
24
- end
16
+ attr_accessor :cardholder_name
17
+
18
+ attr_accessor :expiry_date
19
+
20
+ # @return (Hash)
21
+ def to_h
22
+ hash = super
23
+ hash['cardNumber'] = @card_number unless @card_number.nil?
24
+ hash['cardholderName'] = @cardholder_name unless @cardholder_name.nil?
25
+ hash['expiryDate'] = @expiry_date unless @expiry_date.nil?
26
+ hash
27
+ end
25
28
 
26
- def from_hash(hash)
27
- super
28
- @card_number = hash['cardNumber'] if hash.key? 'cardNumber'
29
- @cardholder_name = hash['cardholderName'] if hash.key? 'cardholderName'
30
- @expiry_date = hash['expiryDate'] if hash.key? 'expiryDate'
29
+ def from_hash(hash)
30
+ super
31
+ if hash.has_key? 'cardNumber'
32
+ @card_number = hash['cardNumber']
33
+ end
34
+ if hash.has_key? 'cardholderName'
35
+ @cardholder_name = hash['cardholderName']
36
+ end
37
+ if hash.has_key? 'expiryDate'
38
+ @expiry_date = hash['expiryDate']
39
+ end
40
+ end
31
41
  end
32
42
  end
33
43
  end