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,56 +1,78 @@
1
1
  #
2
- # This class was auto-generated.
2
+ # This file was automatically generated.
3
3
  #
4
- require 'onlinepayments/sdk/data_object'
5
4
  require 'onlinepayments/sdk/domain/amount_of_money'
5
+ require 'onlinepayments/sdk/domain/data_object'
6
+ require 'onlinepayments/sdk/domain/operation_payment_references'
6
7
  require 'onlinepayments/sdk/domain/payment_references'
7
8
  require 'onlinepayments/sdk/domain/payment_status_output'
8
9
 
9
- module OnlinePayments::SDK
10
- module Domain
11
-
12
- # @attr [OnlinePayments::SDK::Domain::AmountOfMoney] amount_of_money
13
- # @attr [String] id
14
- # @attr [String] payment_method
15
- # @attr [OnlinePayments::SDK::Domain::PaymentReferences] references
16
- # @attr [String] status
17
- # @attr [OnlinePayments::SDK::Domain::PaymentStatusOutput] status_output
18
- class OperationOutput < OnlinePayments::SDK::DataObject
19
- attr_accessor :amount_of_money
20
- attr_accessor :id
21
- attr_accessor :payment_method
22
- attr_accessor :references
23
- attr_accessor :status
24
- attr_accessor :status_output
25
-
26
- # @return (Hash)
27
- def to_h
28
- hash = super
29
- hash['amountOfMoney'] = @amount_of_money.to_h if @amount_of_money
30
- hash['id'] = @id unless @id.nil?
31
- hash['paymentMethod'] = @payment_method unless @payment_method.nil?
32
- hash['references'] = @references.to_h if @references
33
- hash['status'] = @status unless @status.nil?
34
- hash['statusOutput'] = @status_output.to_h if @status_output
35
- hash
36
- end
10
+ module OnlinePayments
11
+ module SDK
12
+ module Domain
13
+ # @attr [OnlinePayments::SDK::Domain::AmountOfMoney] amount_of_money
14
+ # @attr [String] id
15
+ # @attr [OnlinePayments::SDK::Domain::OperationPaymentReferences] operation_references
16
+ # @attr [String] payment_method
17
+ # @attr [OnlinePayments::SDK::Domain::PaymentReferences] references
18
+ # @attr [String] status
19
+ # @attr [OnlinePayments::SDK::Domain::PaymentStatusOutput] status_output
20
+ class OperationOutput < OnlinePayments::SDK::Domain::DataObject
37
21
 
38
- def from_hash(hash)
39
- super
40
- if hash.key? 'amountOfMoney'
41
- raise TypeError, "value '%s' is not a Hash" % [hash['amountOfMoney']] unless hash['amountOfMoney'].is_a? Hash
42
- @amount_of_money = OnlinePayments::SDK::Domain::AmountOfMoney.new_from_hash(hash['amountOfMoney'])
43
- end
44
- @id = hash['id'] if hash.key? 'id'
45
- @payment_method = hash['paymentMethod'] if hash.key? 'paymentMethod'
46
- if hash.key? 'references'
47
- raise TypeError, "value '%s' is not a Hash" % [hash['references']] unless hash['references'].is_a? Hash
48
- @references = OnlinePayments::SDK::Domain::PaymentReferences.new_from_hash(hash['references'])
22
+ attr_accessor :amount_of_money
23
+
24
+ attr_accessor :id
25
+
26
+ attr_accessor :operation_references
27
+
28
+ attr_accessor :payment_method
29
+
30
+ attr_accessor :references
31
+
32
+ attr_accessor :status
33
+
34
+ attr_accessor :status_output
35
+
36
+ # @return (Hash)
37
+ def to_h
38
+ hash = super
39
+ hash['amountOfMoney'] = @amount_of_money.to_h unless @amount_of_money.nil?
40
+ hash['id'] = @id unless @id.nil?
41
+ hash['operationReferences'] = @operation_references.to_h unless @operation_references.nil?
42
+ hash['paymentMethod'] = @payment_method unless @payment_method.nil?
43
+ hash['references'] = @references.to_h unless @references.nil?
44
+ hash['status'] = @status unless @status.nil?
45
+ hash['statusOutput'] = @status_output.to_h unless @status_output.nil?
46
+ hash
49
47
  end
50
- @status = hash['status'] if hash.key? 'status'
51
- if hash.key? 'statusOutput'
52
- raise TypeError, "value '%s' is not a Hash" % [hash['statusOutput']] unless hash['statusOutput'].is_a? Hash
53
- @status_output = OnlinePayments::SDK::Domain::PaymentStatusOutput.new_from_hash(hash['statusOutput'])
48
+
49
+ def from_hash(hash)
50
+ super
51
+ if hash.has_key? 'amountOfMoney'
52
+ raise TypeError, "value '%s' is not a Hash" % [hash['amountOfMoney']] unless hash['amountOfMoney'].is_a? Hash
53
+ @amount_of_money = OnlinePayments::SDK::Domain::AmountOfMoney.new_from_hash(hash['amountOfMoney'])
54
+ end
55
+ if hash.has_key? 'id'
56
+ @id = hash['id']
57
+ end
58
+ if hash.has_key? 'operationReferences'
59
+ raise TypeError, "value '%s' is not a Hash" % [hash['operationReferences']] unless hash['operationReferences'].is_a? Hash
60
+ @operation_references = OnlinePayments::SDK::Domain::OperationPaymentReferences.new_from_hash(hash['operationReferences'])
61
+ end
62
+ if hash.has_key? 'paymentMethod'
63
+ @payment_method = hash['paymentMethod']
64
+ end
65
+ if hash.has_key? 'references'
66
+ raise TypeError, "value '%s' is not a Hash" % [hash['references']] unless hash['references'].is_a? Hash
67
+ @references = OnlinePayments::SDK::Domain::PaymentReferences.new_from_hash(hash['references'])
68
+ end
69
+ if hash.has_key? 'status'
70
+ @status = hash['status']
71
+ end
72
+ if hash.has_key? 'statusOutput'
73
+ raise TypeError, "value '%s' is not a Hash" % [hash['statusOutput']] unless hash['statusOutput'].is_a? Hash
74
+ @status_output = OnlinePayments::SDK::Domain::PaymentStatusOutput.new_from_hash(hash['statusOutput'])
75
+ end
54
76
  end
55
77
  end
56
78
  end
@@ -0,0 +1,30 @@
1
+ #
2
+ # This file was automatically generated.
3
+ #
4
+ require 'onlinepayments/sdk/domain/data_object'
5
+
6
+ module OnlinePayments
7
+ module SDK
8
+ module Domain
9
+ # @attr [String] merchant_reference
10
+ class OperationPaymentReferences < OnlinePayments::SDK::Domain::DataObject
11
+
12
+ attr_accessor :merchant_reference
13
+
14
+ # @return (Hash)
15
+ def to_h
16
+ hash = super
17
+ hash['merchantReference'] = @merchant_reference unless @merchant_reference.nil?
18
+ hash
19
+ end
20
+
21
+ def from_hash(hash)
22
+ super
23
+ if hash.has_key? 'merchantReference'
24
+ @merchant_reference = hash['merchantReference']
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -1,84 +1,93 @@
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/additional_order_input'
6
5
  require 'onlinepayments/sdk/domain/amount_of_money'
7
6
  require 'onlinepayments/sdk/domain/customer'
7
+ require 'onlinepayments/sdk/domain/data_object'
8
8
  require 'onlinepayments/sdk/domain/discount'
9
9
  require 'onlinepayments/sdk/domain/order_references'
10
10
  require 'onlinepayments/sdk/domain/shipping'
11
11
  require 'onlinepayments/sdk/domain/shopping_cart'
12
12
  require 'onlinepayments/sdk/domain/surcharge_specific_input'
13
13
 
14
- module OnlinePayments::SDK
15
- module Domain
14
+ module OnlinePayments
15
+ module SDK
16
+ module Domain
17
+ # @attr [OnlinePayments::SDK::Domain::AdditionalOrderInput] additional_input
18
+ # @attr [OnlinePayments::SDK::Domain::AmountOfMoney] amount_of_money
19
+ # @attr [OnlinePayments::SDK::Domain::Customer] customer
20
+ # @attr [OnlinePayments::SDK::Domain::Discount] discount
21
+ # @attr [OnlinePayments::SDK::Domain::OrderReferences] references
22
+ # @attr [OnlinePayments::SDK::Domain::Shipping] shipping
23
+ # @attr [OnlinePayments::SDK::Domain::ShoppingCart] shopping_cart
24
+ # @attr [OnlinePayments::SDK::Domain::SurchargeSpecificInput] surcharge_specific_input
25
+ class Order < OnlinePayments::SDK::Domain::DataObject
16
26
 
17
- # @attr [OnlinePayments::SDK::Domain::AdditionalOrderInput] additional_input
18
- # @attr [OnlinePayments::SDK::Domain::AmountOfMoney] amount_of_money
19
- # @attr [OnlinePayments::SDK::Domain::Customer] customer
20
- # @attr [OnlinePayments::SDK::Domain::Discount] discount
21
- # @attr [OnlinePayments::SDK::Domain::OrderReferences] references
22
- # @attr [OnlinePayments::SDK::Domain::Shipping] shipping
23
- # @attr [OnlinePayments::SDK::Domain::ShoppingCart] shopping_cart
24
- # @attr [OnlinePayments::SDK::Domain::SurchargeSpecificInput] surcharge_specific_input
25
- class Order < OnlinePayments::SDK::DataObject
26
- attr_accessor :additional_input
27
- attr_accessor :amount_of_money
28
- attr_accessor :customer
29
- attr_accessor :discount
30
- attr_accessor :references
31
- attr_accessor :shipping
32
- attr_accessor :shopping_cart
33
- attr_accessor :surcharge_specific_input
27
+ attr_accessor :additional_input
34
28
 
35
- # @return (Hash)
36
- def to_h
37
- hash = super
38
- hash['additionalInput'] = @additional_input.to_h if @additional_input
39
- hash['amountOfMoney'] = @amount_of_money.to_h if @amount_of_money
40
- hash['customer'] = @customer.to_h if @customer
41
- hash['discount'] = @discount.to_h if @discount
42
- hash['references'] = @references.to_h if @references
43
- hash['shipping'] = @shipping.to_h if @shipping
44
- hash['shoppingCart'] = @shopping_cart.to_h if @shopping_cart
45
- hash['surchargeSpecificInput'] = @surcharge_specific_input.to_h if @surcharge_specific_input
46
- hash
47
- end
29
+ attr_accessor :amount_of_money
48
30
 
49
- def from_hash(hash)
50
- super
51
- if hash.key? 'additionalInput'
52
- raise TypeError, "value '%s' is not a Hash" % [hash['additionalInput']] unless hash['additionalInput'].is_a? Hash
53
- @additional_input = OnlinePayments::SDK::Domain::AdditionalOrderInput.new_from_hash(hash['additionalInput'])
54
- end
55
- if hash.key? 'amountOfMoney'
56
- raise TypeError, "value '%s' is not a Hash" % [hash['amountOfMoney']] unless hash['amountOfMoney'].is_a? Hash
57
- @amount_of_money = OnlinePayments::SDK::Domain::AmountOfMoney.new_from_hash(hash['amountOfMoney'])
58
- end
59
- if hash.key? 'customer'
60
- raise TypeError, "value '%s' is not a Hash" % [hash['customer']] unless hash['customer'].is_a? Hash
61
- @customer = OnlinePayments::SDK::Domain::Customer.new_from_hash(hash['customer'])
62
- end
63
- if hash.key? 'discount'
64
- raise TypeError, "value '%s' is not a Hash" % [hash['discount']] unless hash['discount'].is_a? Hash
65
- @discount = OnlinePayments::SDK::Domain::Discount.new_from_hash(hash['discount'])
66
- end
67
- if hash.key? 'references'
68
- raise TypeError, "value '%s' is not a Hash" % [hash['references']] unless hash['references'].is_a? Hash
69
- @references = OnlinePayments::SDK::Domain::OrderReferences.new_from_hash(hash['references'])
70
- end
71
- if hash.key? 'shipping'
72
- raise TypeError, "value '%s' is not a Hash" % [hash['shipping']] unless hash['shipping'].is_a? Hash
73
- @shipping = OnlinePayments::SDK::Domain::Shipping.new_from_hash(hash['shipping'])
74
- end
75
- if hash.key? 'shoppingCart'
76
- raise TypeError, "value '%s' is not a Hash" % [hash['shoppingCart']] unless hash['shoppingCart'].is_a? Hash
77
- @shopping_cart = OnlinePayments::SDK::Domain::ShoppingCart.new_from_hash(hash['shoppingCart'])
31
+ attr_accessor :customer
32
+
33
+ attr_accessor :discount
34
+
35
+ attr_accessor :references
36
+
37
+ attr_accessor :shipping
38
+
39
+ attr_accessor :shopping_cart
40
+
41
+ attr_accessor :surcharge_specific_input
42
+
43
+ # @return (Hash)
44
+ def to_h
45
+ hash = super
46
+ hash['additionalInput'] = @additional_input.to_h unless @additional_input.nil?
47
+ hash['amountOfMoney'] = @amount_of_money.to_h unless @amount_of_money.nil?
48
+ hash['customer'] = @customer.to_h unless @customer.nil?
49
+ hash['discount'] = @discount.to_h unless @discount.nil?
50
+ hash['references'] = @references.to_h unless @references.nil?
51
+ hash['shipping'] = @shipping.to_h unless @shipping.nil?
52
+ hash['shoppingCart'] = @shopping_cart.to_h unless @shopping_cart.nil?
53
+ hash['surchargeSpecificInput'] = @surcharge_specific_input.to_h unless @surcharge_specific_input.nil?
54
+ hash
78
55
  end
79
- if hash.key? 'surchargeSpecificInput'
80
- raise TypeError, "value '%s' is not a Hash" % [hash['surchargeSpecificInput']] unless hash['surchargeSpecificInput'].is_a? Hash
81
- @surcharge_specific_input = OnlinePayments::SDK::Domain::SurchargeSpecificInput.new_from_hash(hash['surchargeSpecificInput'])
56
+
57
+ def from_hash(hash)
58
+ super
59
+ if hash.has_key? 'additionalInput'
60
+ raise TypeError, "value '%s' is not a Hash" % [hash['additionalInput']] unless hash['additionalInput'].is_a? Hash
61
+ @additional_input = OnlinePayments::SDK::Domain::AdditionalOrderInput.new_from_hash(hash['additionalInput'])
62
+ end
63
+ if hash.has_key? 'amountOfMoney'
64
+ raise TypeError, "value '%s' is not a Hash" % [hash['amountOfMoney']] unless hash['amountOfMoney'].is_a? Hash
65
+ @amount_of_money = OnlinePayments::SDK::Domain::AmountOfMoney.new_from_hash(hash['amountOfMoney'])
66
+ end
67
+ if hash.has_key? 'customer'
68
+ raise TypeError, "value '%s' is not a Hash" % [hash['customer']] unless hash['customer'].is_a? Hash
69
+ @customer = OnlinePayments::SDK::Domain::Customer.new_from_hash(hash['customer'])
70
+ end
71
+ if hash.has_key? 'discount'
72
+ raise TypeError, "value '%s' is not a Hash" % [hash['discount']] unless hash['discount'].is_a? Hash
73
+ @discount = OnlinePayments::SDK::Domain::Discount.new_from_hash(hash['discount'])
74
+ end
75
+ if hash.has_key? 'references'
76
+ raise TypeError, "value '%s' is not a Hash" % [hash['references']] unless hash['references'].is_a? Hash
77
+ @references = OnlinePayments::SDK::Domain::OrderReferences.new_from_hash(hash['references'])
78
+ end
79
+ if hash.has_key? 'shipping'
80
+ raise TypeError, "value '%s' is not a Hash" % [hash['shipping']] unless hash['shipping'].is_a? Hash
81
+ @shipping = OnlinePayments::SDK::Domain::Shipping.new_from_hash(hash['shipping'])
82
+ end
83
+ if hash.has_key? 'shoppingCart'
84
+ raise TypeError, "value '%s' is not a Hash" % [hash['shoppingCart']] unless hash['shoppingCart'].is_a? Hash
85
+ @shopping_cart = OnlinePayments::SDK::Domain::ShoppingCart.new_from_hash(hash['shoppingCart'])
86
+ end
87
+ if hash.has_key? 'surchargeSpecificInput'
88
+ raise TypeError, "value '%s' is not a Hash" % [hash['surchargeSpecificInput']] unless hash['surchargeSpecificInput'].is_a? Hash
89
+ @surcharge_specific_input = OnlinePayments::SDK::Domain::SurchargeSpecificInput.new_from_hash(hash['surchargeSpecificInput'])
90
+ end
82
91
  end
83
92
  end
84
93
  end
@@ -1,53 +1,85 @@
1
1
  #
2
- # This class was auto-generated.
2
+ # This file was automatically generated.
3
3
  #
4
- require 'onlinepayments/sdk/data_object'
5
-
6
- module OnlinePayments::SDK
7
- module Domain
8
-
9
- # @attr [Long] discount_amount
10
- # @attr [String] product_code
11
- # @attr [String] product_name
12
- # @attr [Long] product_price
13
- # @attr [String] product_type
14
- # @attr [Long] quantity
15
- # @attr [Long] tax_amount
16
- # @attr [String] unit
17
- class OrderLineDetails < OnlinePayments::SDK::DataObject
18
- attr_accessor :discount_amount
19
- attr_accessor :product_code
20
- attr_accessor :product_name
21
- attr_accessor :product_price
22
- attr_accessor :product_type
23
- attr_accessor :quantity
24
- attr_accessor :tax_amount
25
- attr_accessor :unit
26
-
27
- # @return (Hash)
28
- def to_h
29
- hash = super
30
- hash['discountAmount'] = @discount_amount unless @discount_amount.nil?
31
- hash['productCode'] = @product_code unless @product_code.nil?
32
- hash['productName'] = @product_name unless @product_name.nil?
33
- hash['productPrice'] = @product_price unless @product_price.nil?
34
- hash['productType'] = @product_type unless @product_type.nil?
35
- hash['quantity'] = @quantity unless @quantity.nil?
36
- hash['taxAmount'] = @tax_amount unless @tax_amount.nil?
37
- hash['unit'] = @unit unless @unit.nil?
38
- hash
39
- end
4
+ require 'onlinepayments/sdk/domain/data_object'
5
+
6
+ module OnlinePayments
7
+ module SDK
8
+ module Domain
9
+ # @attr [Integer] discount_amount
10
+ # @attr [String] product_brand
11
+ # @attr [String] product_code
12
+ # @attr [String] product_name
13
+ # @attr [Integer] product_price
14
+ # @attr [String] product_type
15
+ # @attr [Integer] quantity
16
+ # @attr [Integer] tax_amount
17
+ # @attr [String] unit
18
+ class OrderLineDetails < OnlinePayments::SDK::Domain::DataObject
19
+
20
+ attr_accessor :discount_amount
21
+
22
+ attr_accessor :product_brand
23
+
24
+ attr_accessor :product_code
25
+
26
+ attr_accessor :product_name
27
+
28
+ attr_accessor :product_price
29
+
30
+ attr_accessor :product_type
31
+
32
+ attr_accessor :quantity
33
+
34
+ attr_accessor :tax_amount
35
+
36
+ attr_accessor :unit
37
+
38
+ # @return (Hash)
39
+ def to_h
40
+ hash = super
41
+ hash['discountAmount'] = @discount_amount unless @discount_amount.nil?
42
+ hash['productBrand'] = @product_brand unless @product_brand.nil?
43
+ hash['productCode'] = @product_code unless @product_code.nil?
44
+ hash['productName'] = @product_name unless @product_name.nil?
45
+ hash['productPrice'] = @product_price unless @product_price.nil?
46
+ hash['productType'] = @product_type unless @product_type.nil?
47
+ hash['quantity'] = @quantity unless @quantity.nil?
48
+ hash['taxAmount'] = @tax_amount unless @tax_amount.nil?
49
+ hash['unit'] = @unit unless @unit.nil?
50
+ hash
51
+ end
40
52
 
41
- def from_hash(hash)
42
- super
43
- @discount_amount = hash['discountAmount'] if hash.key? 'discountAmount'
44
- @product_code = hash['productCode'] if hash.key? 'productCode'
45
- @product_name = hash['productName'] if hash.key? 'productName'
46
- @product_price = hash['productPrice'] if hash.key? 'productPrice'
47
- @product_type = hash['productType'] if hash.key? 'productType'
48
- @quantity = hash['quantity'] if hash.key? 'quantity'
49
- @tax_amount = hash['taxAmount'] if hash.key? 'taxAmount'
50
- @unit = hash['unit'] if hash.key? 'unit'
53
+ def from_hash(hash)
54
+ super
55
+ if hash.has_key? 'discountAmount'
56
+ @discount_amount = hash['discountAmount']
57
+ end
58
+ if hash.has_key? 'productBrand'
59
+ @product_brand = hash['productBrand']
60
+ end
61
+ if hash.has_key? 'productCode'
62
+ @product_code = hash['productCode']
63
+ end
64
+ if hash.has_key? 'productName'
65
+ @product_name = hash['productName']
66
+ end
67
+ if hash.has_key? 'productPrice'
68
+ @product_price = hash['productPrice']
69
+ end
70
+ if hash.has_key? 'productType'
71
+ @product_type = hash['productType']
72
+ end
73
+ if hash.has_key? 'quantity'
74
+ @quantity = hash['quantity']
75
+ end
76
+ if hash.has_key? 'taxAmount'
77
+ @tax_amount = hash['taxAmount']
78
+ end
79
+ if hash.has_key? 'unit'
80
+ @unit = hash['unit']
81
+ end
82
+ end
51
83
  end
52
84
  end
53
85
  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] descriptor
10
+ # @attr [String] merchant_parameters
11
+ # @attr [String] merchant_reference
12
+ class OrderReferences < OnlinePayments::SDK::Domain::DataObject
8
13
 
9
- # @attr [String] descriptor
10
- # @attr [String] merchant_parameters
11
- # @attr [String] merchant_reference
12
- class OrderReferences < OnlinePayments::SDK::DataObject
13
- attr_accessor :descriptor
14
- attr_accessor :merchant_parameters
15
- attr_accessor :merchant_reference
14
+ attr_accessor :descriptor
16
15
 
17
- # @return (Hash)
18
- def to_h
19
- hash = super
20
- hash['descriptor'] = @descriptor unless @descriptor.nil?
21
- hash['merchantParameters'] = @merchant_parameters unless @merchant_parameters.nil?
22
- hash['merchantReference'] = @merchant_reference unless @merchant_reference.nil?
23
- hash
24
- end
16
+ attr_accessor :merchant_parameters
17
+
18
+ attr_accessor :merchant_reference
19
+
20
+ # @return (Hash)
21
+ def to_h
22
+ hash = super
23
+ hash['descriptor'] = @descriptor unless @descriptor.nil?
24
+ hash['merchantParameters'] = @merchant_parameters unless @merchant_parameters.nil?
25
+ hash['merchantReference'] = @merchant_reference unless @merchant_reference.nil?
26
+ hash
27
+ end
25
28
 
26
- def from_hash(hash)
27
- super
28
- @descriptor = hash['descriptor'] if hash.key? 'descriptor'
29
- @merchant_parameters = hash['merchantParameters'] if hash.key? 'merchantParameters'
30
- @merchant_reference = hash['merchantReference'] if hash.key? 'merchantReference'
29
+ def from_hash(hash)
30
+ super
31
+ if hash.has_key? 'descriptor'
32
+ @descriptor = hash['descriptor']
33
+ end
34
+ if hash.has_key? 'merchantParameters'
35
+ @merchant_parameters = hash['merchantParameters']
36
+ end
37
+ if hash.has_key? 'merchantReference'
38
+ @merchant_reference = hash['merchantReference']
39
+ end
40
+ end
31
41
  end
32
42
  end
33
43
  end
@@ -1,48 +1,62 @@
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/api_error'
5
+ require 'onlinepayments/sdk/domain/data_object'
6
6
 
7
- module OnlinePayments::SDK
8
- module Domain
9
-
10
- # @attr [Array<OnlinePayments::SDK::Domain::APIError>] errors
11
- # @attr [true/false] is_cancellable
12
- # @attr [String] status_category
13
- # @attr [Integer] status_code
14
- # @attr [String] status_code_change_date_time
15
- class OrderStatusOutput < OnlinePayments::SDK::DataObject
16
- attr_accessor :errors
17
- attr_accessor :is_cancellable
18
- attr_accessor :status_category
19
- attr_accessor :status_code
20
- attr_accessor :status_code_change_date_time
21
-
22
- # @return (Hash)
23
- def to_h
24
- hash = super
25
- hash['errors'] = @errors.collect(&:to_h) if @errors
26
- hash['isCancellable'] = @is_cancellable unless @is_cancellable.nil?
27
- hash['statusCategory'] = @status_category unless @status_category.nil?
28
- hash['statusCode'] = @status_code unless @status_code.nil?
29
- hash['statusCodeChangeDateTime'] = @status_code_change_date_time unless @status_code_change_date_time.nil?
30
- hash
31
- end
7
+ module OnlinePayments
8
+ module SDK
9
+ module Domain
10
+ # @attr [Array<OnlinePayments::SDK::Domain::APIError>] errors
11
+ # @attr [true/false] is_cancellable
12
+ # @attr [String] status_category
13
+ # @attr [Integer] status_code
14
+ # @attr [String] status_code_change_date_time
15
+ class OrderStatusOutput < OnlinePayments::SDK::Domain::DataObject
16
+
17
+ attr_accessor :errors
18
+
19
+ attr_accessor :is_cancellable
20
+
21
+ attr_accessor :status_category
22
+
23
+ attr_accessor :status_code
24
+
25
+ attr_accessor :status_code_change_date_time
32
26
 
33
- def from_hash(hash)
34
- super
35
- if hash.key? 'errors'
36
- raise TypeError, "value '%s' is not an Array" % [hash['errors']] unless hash['errors'].is_a? Array
37
- @errors = []
38
- hash['errors'].each do |e|
39
- @errors << OnlinePayments::SDK::Domain::APIError.new_from_hash(e)
27
+ # @return (Hash)
28
+ def to_h
29
+ hash = super
30
+ hash['errors'] = @errors.collect{|val| val.to_h} unless @errors.nil?
31
+ hash['isCancellable'] = @is_cancellable unless @is_cancellable.nil?
32
+ hash['statusCategory'] = @status_category unless @status_category.nil?
33
+ hash['statusCode'] = @status_code unless @status_code.nil?
34
+ hash['statusCodeChangeDateTime'] = @status_code_change_date_time unless @status_code_change_date_time.nil?
35
+ hash
36
+ end
37
+
38
+ def from_hash(hash)
39
+ super
40
+ if hash.has_key? 'errors'
41
+ raise TypeError, "value '%s' is not an Array" % [hash['errors']] unless hash['errors'].is_a? Array
42
+ @errors = []
43
+ hash['errors'].each do |e|
44
+ @errors << OnlinePayments::SDK::Domain::APIError.new_from_hash(e)
45
+ end
46
+ end
47
+ if hash.has_key? 'isCancellable'
48
+ @is_cancellable = hash['isCancellable']
49
+ end
50
+ if hash.has_key? 'statusCategory'
51
+ @status_category = hash['statusCategory']
52
+ end
53
+ if hash.has_key? 'statusCode'
54
+ @status_code = hash['statusCode']
55
+ end
56
+ if hash.has_key? 'statusCodeChangeDateTime'
57
+ @status_code_change_date_time = hash['statusCodeChangeDateTime']
40
58
  end
41
59
  end
42
- @is_cancellable = hash['isCancellable'] if hash.key? 'isCancellable'
43
- @status_category = hash['statusCategory'] if hash.key? 'statusCategory'
44
- @status_code = hash['statusCode'] if hash.key? 'statusCode'
45
- @status_code_change_date_time = hash['statusCodeChangeDateTime'] if hash.key? 'statusCodeChangeDateTime'
46
60
  end
47
61
  end
48
62
  end