onlinepayments-sdk-ruby 4.23.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 (408) 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 +133 -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 +120 -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 +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 +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 +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 +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 +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 +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/redirect_data.rb +27 -20
  237. data/lib/onlinepayments/sdk/domain/redirect_payment_method_specific_input.rb +139 -88
  238. data/lib/onlinepayments/sdk/domain/redirect_payment_method_specific_output.rb +95 -75
  239. data/lib/onlinepayments/sdk/domain/redirect_payment_product3203_specific_input.rb +20 -16
  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 -31
  275. data/lib/onlinepayments/sdk/domain/subsequent_card_payment_method_specific_input.rb +60 -39
  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 -63
  287. data/lib/onlinepayments/sdk/domain/three_d_secure_base.rb +78 -52
  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 +89 -35
  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/endpoint_configuration.rb +0 -127
  389. data/lib/onlinepayments/sdk/exceptions.rb +0 -8
  390. data/lib/onlinepayments/sdk/logging/logging_util.rb +0 -286
  391. data/lib/onlinepayments/sdk/marshaller.rb +0 -24
  392. data/lib/onlinepayments/sdk/marshaller_syntax_exception.rb +0 -6
  393. data/lib/onlinepayments/sdk/merchant/services/get_privacy_policy_params.rb +0 -30
  394. data/lib/onlinepayments/sdk/meta_data_provider.rb +0 -150
  395. data/lib/onlinepayments/sdk/modules.rb +0 -62
  396. data/lib/onlinepayments/sdk/multipart_form_data_object.rb +0 -44
  397. data/lib/onlinepayments/sdk/multipart_form_data_request.rb +0 -9
  398. data/lib/onlinepayments/sdk/not_found_exception.rb +0 -16
  399. data/lib/onlinepayments/sdk/param_request.rb +0 -11
  400. data/lib/onlinepayments/sdk/payment_platform_exception.rb +0 -15
  401. data/lib/onlinepayments/sdk/pooled_connection.rb +0 -21
  402. data/lib/onlinepayments/sdk/request_header.rb +0 -50
  403. data/lib/onlinepayments/sdk/request_param.rb +0 -23
  404. data/lib/onlinepayments/sdk/response_exception.rb +0 -47
  405. data/lib/onlinepayments/sdk/response_header.rb +0 -42
  406. data/lib/onlinepayments/sdk/uploadable_file.rb +0 -30
  407. data/lib/onlinepayments/sdk/webhooks/webhooks.rb +0 -22
  408. 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,117 +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
10
  require 'onlinepayments/sdk/domain/payment_product3208_specific_output'
11
11
  require 'onlinepayments/sdk/domain/payment_product3209_specific_output'
12
12
  require 'onlinepayments/sdk/domain/three_d_secure_results'
13
13
 
14
- module OnlinePayments::SDK
15
- module Domain
16
-
17
- # @attr [OnlinePayments::SDK::Domain::AcquirerInformation] acquirer_information
18
- # @attr [Long] 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::DataObject
34
- attr_accessor :acquirer_information
35
- attr_accessor :authenticated_amount
36
- attr_accessor :authorisation_code
37
- attr_accessor :card
38
- attr_accessor :currency_conversion
39
- attr_accessor :external_token_linked
40
- attr_accessor :fraud_results
41
- attr_accessor :initial_scheme_transaction_id
42
- attr_accessor :payment_account_reference
43
- attr_accessor :payment_option
44
- attr_accessor :payment_product3208_specific_output
45
- attr_accessor :payment_product3209_specific_output
46
- attr_accessor :payment_product_id
47
- attr_accessor :scheme_reference_data
48
- attr_accessor :three_d_secure_results
49
- attr_accessor :token
50
-
51
- # @return (Hash)
52
- def to_h
53
- hash = super
54
- hash['acquirerInformation'] = @acquirer_information.to_h if @acquirer_information
55
- hash['authenticatedAmount'] = @authenticated_amount unless @authenticated_amount.nil?
56
- hash['authorisationCode'] = @authorisation_code unless @authorisation_code.nil?
57
- hash['card'] = @card.to_h if @card
58
- hash['currencyConversion'] = @currency_conversion.to_h if @currency_conversion
59
- hash['externalTokenLinked'] = @external_token_linked.to_h if @external_token_linked
60
- hash['fraudResults'] = @fraud_results.to_h if @fraud_results
61
- hash['initialSchemeTransactionId'] = @initial_scheme_transaction_id unless @initial_scheme_transaction_id.nil?
62
- hash['paymentAccountReference'] = @payment_account_reference unless @payment_account_reference.nil?
63
- hash['paymentOption'] = @payment_option unless @payment_option.nil?
64
- hash['paymentProduct3208SpecificOutput'] = @payment_product3208_specific_output.to_h if @payment_product3208_specific_output
65
- hash['paymentProduct3209SpecificOutput'] = @payment_product3209_specific_output.to_h if @payment_product3209_specific_output
66
- hash['paymentProductId'] = @payment_product_id unless @payment_product_id.nil?
67
- hash['schemeReferenceData'] = @scheme_reference_data unless @scheme_reference_data.nil?
68
- hash['threeDSecureResults'] = @three_d_secure_results.to_h if @three_d_secure_results
69
- hash['token'] = @token unless @token.nil?
70
- hash
71
- 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
72
34
 
73
- def from_hash(hash)
74
- super
75
- if hash.key? 'acquirerInformation'
76
- raise TypeError, "value '%s' is not a Hash" % [hash['acquirerInformation']] unless hash['acquirerInformation'].is_a? Hash
77
- @acquirer_information = OnlinePayments::SDK::Domain::AcquirerInformation.new_from_hash(hash['acquirerInformation'])
78
- end
79
- @authenticated_amount = hash['authenticatedAmount'] if hash.key? 'authenticatedAmount'
80
- @authorisation_code = hash['authorisationCode'] if hash.key? 'authorisationCode'
81
- if hash.key? 'card'
82
- raise TypeError, "value '%s' is not a Hash" % [hash['card']] unless hash['card'].is_a? Hash
83
- @card = OnlinePayments::SDK::Domain::CardEssentials.new_from_hash(hash['card'])
84
- end
85
- if hash.key? 'currencyConversion'
86
- raise TypeError, "value '%s' is not a Hash" % [hash['currencyConversion']] unless hash['currencyConversion'].is_a? Hash
87
- @currency_conversion = OnlinePayments::SDK::Domain::CurrencyConversion.new_from_hash(hash['currencyConversion'])
88
- end
89
- if hash.key? 'externalTokenLinked'
90
- raise TypeError, "value '%s' is not a Hash" % [hash['externalTokenLinked']] unless hash['externalTokenLinked'].is_a? Hash
91
- @external_token_linked = OnlinePayments::SDK::Domain::ExternalTokenLinked.new_from_hash(hash['externalTokenLinked'])
92
- end
93
- if hash.key? 'fraudResults'
94
- raise TypeError, "value '%s' is not a Hash" % [hash['fraudResults']] unless hash['fraudResults'].is_a? Hash
95
- @fraud_results = OnlinePayments::SDK::Domain::CardFraudResults.new_from_hash(hash['fraudResults'])
96
- end
97
- @initial_scheme_transaction_id = hash['initialSchemeTransactionId'] if hash.key? 'initialSchemeTransactionId'
98
- @payment_account_reference = hash['paymentAccountReference'] if hash.key? 'paymentAccountReference'
99
- @payment_option = hash['paymentOption'] if hash.key? 'paymentOption'
100
- if hash.key? 'paymentProduct3208SpecificOutput'
101
- raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct3208SpecificOutput']] unless hash['paymentProduct3208SpecificOutput'].is_a? Hash
102
- @payment_product3208_specific_output = OnlinePayments::SDK::Domain::PaymentProduct3208SpecificOutput.new_from_hash(hash['paymentProduct3208SpecificOutput'])
103
- end
104
- if hash.key? 'paymentProduct3209SpecificOutput'
105
- raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct3209SpecificOutput']] unless hash['paymentProduct3209SpecificOutput'].is_a? Hash
106
- @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
107
87
  end
108
- @payment_product_id = hash['paymentProductId'] if hash.key? 'paymentProductId'
109
- @scheme_reference_data = hash['schemeReferenceData'] if hash.key? 'schemeReferenceData'
110
- if hash.key? 'threeDSecureResults'
111
- raise TypeError, "value '%s' is not a Hash" % [hash['threeDSecureResults']] unless hash['threeDSecureResults'].is_a? Hash
112
- @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
113
147
  end
114
- @token = hash['token'] if hash.key? 'token'
115
148
  end
116
149
  end
117
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