onlinepayments-sdk-ruby 4.23.0 → 5.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (414) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +0 -0
  3. data/LICENSE.txt +0 -0
  4. data/README.md +5 -6
  5. data/Rakefile +0 -0
  6. data/lib/onlinepayments/sdk/api_exception.rb +47 -35
  7. data/lib/onlinepayments/sdk/api_resource.rb +49 -97
  8. data/lib/onlinepayments/sdk/authentication/authenticator.rb +19 -0
  9. data/lib/onlinepayments/sdk/authentication/authorization_type.rb +15 -0
  10. data/lib/onlinepayments/sdk/authentication/v1hmac_authenticator.rb +109 -0
  11. data/lib/onlinepayments/sdk/authentication.rb +1 -0
  12. data/lib/onlinepayments/sdk/authorization_exception.rb +14 -8
  13. data/lib/onlinepayments/sdk/call_context.rb +30 -21
  14. data/lib/onlinepayments/sdk/client.rb +36 -18
  15. data/lib/onlinepayments/sdk/communication/communication_exception.rb +19 -0
  16. data/lib/onlinepayments/sdk/communication/connection.rb +48 -0
  17. data/lib/onlinepayments/sdk/communication/default_connection.rb +427 -0
  18. data/lib/onlinepayments/sdk/communication/metadata_provider.rb +160 -0
  19. data/lib/onlinepayments/sdk/communication/multipart_form_data_object.rb +52 -0
  20. data/lib/onlinepayments/sdk/communication/multipart_form_data_request.rb +13 -0
  21. data/lib/onlinepayments/sdk/communication/not_found_exception.rb +19 -0
  22. data/lib/onlinepayments/sdk/communication/param_request.rb +14 -0
  23. data/lib/onlinepayments/sdk/communication/pooled_connection.rb +26 -0
  24. data/lib/onlinepayments/sdk/communication/request_header.rb +62 -0
  25. data/lib/onlinepayments/sdk/communication/request_param.rb +28 -0
  26. data/lib/onlinepayments/sdk/communication/response_exception.rb +56 -0
  27. data/lib/onlinepayments/sdk/communication/response_header.rb +78 -0
  28. data/lib/onlinepayments/sdk/communication.rb +1 -0
  29. data/lib/onlinepayments/sdk/communicator.rb +475 -268
  30. data/lib/onlinepayments/sdk/communicator_configuration.rb +162 -53
  31. data/lib/onlinepayments/sdk/declined_payment_exception.rb +28 -21
  32. data/lib/onlinepayments/sdk/declined_payout_exception.rb +28 -23
  33. data/lib/onlinepayments/sdk/declined_refund_exception.rb +28 -23
  34. data/lib/onlinepayments/sdk/declined_transaction_exception.rb +16 -10
  35. data/lib/onlinepayments/sdk/domain/account_on_file.rb +44 -35
  36. data/lib/onlinepayments/sdk/domain/account_on_file_attribute.rb +42 -28
  37. data/lib/onlinepayments/sdk/domain/account_on_file_display_hints.rb +29 -24
  38. data/lib/onlinepayments/sdk/domain/acquirer_information.rb +27 -22
  39. data/lib/onlinepayments/sdk/domain/acquirer_selection_information.rb +34 -24
  40. data/lib/onlinepayments/sdk/domain/additional_order_input.rb +43 -38
  41. data/lib/onlinepayments/sdk/domain/address.rb +65 -43
  42. data/lib/onlinepayments/sdk/domain/address_personal.rb +78 -52
  43. data/lib/onlinepayments/sdk/domain/airline_data.rb +204 -123
  44. data/lib/onlinepayments/sdk/domain/airline_flight_leg.rb +158 -95
  45. data/lib/onlinepayments/sdk/domain/airline_passenger.rb +59 -39
  46. data/lib/onlinepayments/sdk/domain/amount_breakdown.rb +27 -20
  47. data/lib/onlinepayments/sdk/domain/amount_of_money.rb +27 -20
  48. data/lib/onlinepayments/sdk/domain/api_error.rb +73 -47
  49. data/lib/onlinepayments/sdk/domain/apple_pay_line_item.rb +72 -0
  50. data/lib/onlinepayments/sdk/domain/apple_pay_recurring_payment_request.rb +61 -0
  51. data/lib/onlinepayments/sdk/domain/bank_account_iban.rb +20 -16
  52. data/lib/onlinepayments/sdk/domain/browser_data.rb +51 -35
  53. data/lib/onlinepayments/sdk/domain/calculate_surcharge_request.rb +27 -24
  54. data/lib/onlinepayments/sdk/domain/calculate_surcharge_response.rb +22 -20
  55. data/lib/onlinepayments/sdk/domain/cancel_payment_request.rb +27 -22
  56. data/lib/onlinepayments/sdk/domain/cancel_payment_response.rb +20 -18
  57. data/lib/onlinepayments/sdk/domain/capture.rb +41 -32
  58. data/lib/onlinepayments/sdk/domain/capture_output.rb +106 -78
  59. data/lib/onlinepayments/sdk/domain/capture_payment_request.rb +43 -26
  60. data/lib/onlinepayments/sdk/domain/capture_response.rb +41 -32
  61. data/lib/onlinepayments/sdk/domain/capture_status_output.rb +20 -16
  62. data/lib/onlinepayments/sdk/domain/captures_response.rb +22 -20
  63. data/lib/onlinepayments/sdk/domain/card.rb +41 -28
  64. data/lib/onlinepayments/sdk/domain/card_essentials.rb +41 -28
  65. data/lib/onlinepayments/sdk/domain/card_fraud_results.rb +34 -24
  66. data/lib/onlinepayments/sdk/domain/card_info.rb +27 -20
  67. data/lib/onlinepayments/sdk/domain/card_payment_method_specific_input.rb +199 -128
  68. data/lib/onlinepayments/sdk/domain/card_payment_method_specific_input_base.rb +149 -104
  69. data/lib/onlinepayments/sdk/domain/card_payment_method_specific_input_for_hosted_checkout.rb +36 -28
  70. data/lib/onlinepayments/sdk/domain/card_payment_method_specific_output.rb +142 -100
  71. data/lib/onlinepayments/sdk/domain/card_payout_method_specific_input.rb +41 -30
  72. data/lib/onlinepayments/sdk/domain/card_recurrence_details.rb +20 -16
  73. data/lib/onlinepayments/sdk/domain/card_source.rb +41 -30
  74. data/lib/onlinepayments/sdk/domain/card_without_cvv.rb +34 -24
  75. data/lib/onlinepayments/sdk/domain/company_information.rb +20 -16
  76. data/lib/onlinepayments/sdk/domain/complete_payment_card_payment_method_specific_input.rb +20 -18
  77. data/lib/onlinepayments/sdk/domain/complete_payment_request.rb +27 -24
  78. data/lib/onlinepayments/sdk/domain/complete_payment_response.rb +35 -31
  79. data/lib/onlinepayments/sdk/domain/contact_details.rb +51 -35
  80. data/lib/onlinepayments/sdk/domain/create_hosted_checkout_request.rb +76 -59
  81. data/lib/onlinepayments/sdk/domain/create_hosted_checkout_response.rb +60 -43
  82. data/lib/onlinepayments/sdk/domain/create_hosted_tokenization_request.rb +57 -42
  83. data/lib/onlinepayments/sdk/domain/create_hosted_tokenization_response.rb +57 -44
  84. data/lib/onlinepayments/sdk/domain/create_mandate_request.rb +71 -48
  85. data/lib/onlinepayments/sdk/domain/create_mandate_response.rb +27 -24
  86. data/lib/onlinepayments/sdk/domain/create_mandate_with_return_url.rb +71 -48
  87. data/lib/onlinepayments/sdk/domain/create_payment_link_request.rb +127 -87
  88. data/lib/onlinepayments/sdk/domain/create_payment_request.rb +82 -60
  89. data/lib/onlinepayments/sdk/domain/create_payment_response.rb +35 -31
  90. data/lib/onlinepayments/sdk/domain/create_payout_request.rb +61 -40
  91. data/lib/onlinepayments/sdk/domain/create_token_request.rb +27 -22
  92. data/lib/onlinepayments/sdk/domain/created_payment_output.rb +27 -22
  93. data/lib/onlinepayments/sdk/domain/created_token_response.rb +50 -38
  94. data/lib/onlinepayments/sdk/domain/credit_card_specific_input_hosted_tokenization.rb +29 -26
  95. data/lib/onlinepayments/sdk/domain/credit_card_validation_rules_hosted_tokenization.rb +27 -20
  96. data/lib/onlinepayments/sdk/domain/currency_conversion.rb +27 -22
  97. data/lib/onlinepayments/sdk/domain/currency_conversion_input.rb +27 -20
  98. data/lib/onlinepayments/sdk/domain/currency_conversion_request.rb +27 -24
  99. data/lib/onlinepayments/sdk/domain/currency_conversion_response.rb +34 -28
  100. data/lib/onlinepayments/sdk/domain/currency_conversion_result.rb +27 -20
  101. data/lib/onlinepayments/sdk/domain/currency_conversion_specific_input.rb +20 -16
  102. data/lib/onlinepayments/sdk/domain/customer.rb +87 -68
  103. data/lib/onlinepayments/sdk/domain/customer_account.rb +77 -55
  104. data/lib/onlinepayments/sdk/domain/customer_account_authentication.rb +34 -20
  105. data/lib/onlinepayments/sdk/domain/customer_bank_account.rb +34 -24
  106. data/lib/onlinepayments/sdk/domain/customer_device.rb +64 -44
  107. data/lib/onlinepayments/sdk/domain/customer_device_output.rb +20 -16
  108. data/lib/onlinepayments/sdk/domain/customer_output.rb +20 -18
  109. data/lib/onlinepayments/sdk/domain/customer_payment_activity.rb +34 -24
  110. data/lib/onlinepayments/sdk/domain/customer_token.rb +35 -31
  111. data/lib/onlinepayments/sdk/domain/data_object.rb +32 -0
  112. data/lib/onlinepayments/sdk/domain/dcc_card_source.rb +41 -30
  113. data/lib/onlinepayments/sdk/domain/dcc_proposal.rb +51 -41
  114. data/lib/onlinepayments/sdk/domain/decrypted_payment_data.rb +51 -35
  115. data/lib/onlinepayments/sdk/domain/directory_entry.rb +34 -24
  116. data/lib/onlinepayments/sdk/domain/discount.rb +20 -16
  117. data/lib/onlinepayments/sdk/domain/empty_validator.rb +7 -6
  118. data/lib/onlinepayments/sdk/domain/error_response.rb +29 -24
  119. data/lib/onlinepayments/sdk/domain/external_cardholder_authentication_data.rb +86 -55
  120. data/lib/onlinepayments/sdk/domain/external_token_linked.rb +35 -24
  121. data/lib/onlinepayments/sdk/domain/feedbacks.rb +42 -0
  122. data/lib/onlinepayments/sdk/domain/fixed_list_validator.rb +22 -20
  123. data/lib/onlinepayments/sdk/domain/fraud_fields.rb +37 -28
  124. data/lib/onlinepayments/sdk/domain/fraud_results.rb +20 -16
  125. data/lib/onlinepayments/sdk/domain/g_pay_three_d_secure.rb +50 -36
  126. data/lib/onlinepayments/sdk/domain/get_hosted_checkout_response.rb +27 -22
  127. data/lib/onlinepayments/sdk/domain/get_hosted_tokenization_response.rb +27 -22
  128. data/lib/onlinepayments/sdk/domain/get_iin_details_request.rb +27 -22
  129. data/lib/onlinepayments/sdk/domain/get_iin_details_response.rb +52 -38
  130. data/lib/onlinepayments/sdk/domain/get_mandate_response.rb +20 -18
  131. data/lib/onlinepayments/sdk/domain/get_payment_product_groups_response.rb +22 -20
  132. data/lib/onlinepayments/sdk/domain/get_payment_products_response.rb +22 -20
  133. data/lib/onlinepayments/sdk/domain/get_privacy_policy_response.rb +20 -16
  134. data/lib/onlinepayments/sdk/domain/gift_card_purchase.rb +27 -22
  135. data/lib/onlinepayments/sdk/domain/hosted_checkout_specific_input.rb +83 -56
  136. data/lib/onlinepayments/sdk/domain/hosted_checkout_specific_output.rb +27 -20
  137. data/lib/onlinepayments/sdk/domain/iin_detail.rb +34 -24
  138. data/lib/onlinepayments/sdk/domain/label_template_element.rb +27 -20
  139. data/lib/onlinepayments/sdk/domain/length_validator.rb +27 -20
  140. data/lib/onlinepayments/sdk/domain/line_item.rb +44 -31
  141. data/lib/onlinepayments/sdk/domain/line_item_invoice_data.rb +20 -16
  142. data/lib/onlinepayments/sdk/domain/loan_recipient.rb +51 -35
  143. data/lib/onlinepayments/sdk/domain/lodging_data.rb +20 -16
  144. data/lib/onlinepayments/sdk/domain/mandate_address.rb +51 -35
  145. data/lib/onlinepayments/sdk/domain/mandate_address_response.rb +51 -35
  146. data/lib/onlinepayments/sdk/domain/mandate_contact_details.rb +20 -16
  147. data/lib/onlinepayments/sdk/domain/mandate_customer.rb +52 -44
  148. data/lib/onlinepayments/sdk/domain/mandate_customer_response.rb +52 -44
  149. data/lib/onlinepayments/sdk/domain/mandate_merchant_action.rb +27 -22
  150. data/lib/onlinepayments/sdk/domain/mandate_personal_information.rb +27 -22
  151. data/lib/onlinepayments/sdk/domain/mandate_personal_information_response.rb +27 -22
  152. data/lib/onlinepayments/sdk/domain/mandate_personal_name.rb +27 -20
  153. data/lib/onlinepayments/sdk/domain/mandate_personal_name_response.rb +27 -20
  154. data/lib/onlinepayments/sdk/domain/mandate_redirect_data.rb +27 -20
  155. data/lib/onlinepayments/sdk/domain/mandate_response.rb +64 -44
  156. data/lib/onlinepayments/sdk/domain/merchant_action.rb +54 -30
  157. data/lib/onlinepayments/sdk/domain/mobile_payment_data.rb +27 -20
  158. data/lib/onlinepayments/sdk/domain/mobile_payment_method_hosted_checkout_specific_input.rb +43 -26
  159. data/lib/onlinepayments/sdk/domain/mobile_payment_method_specific_input.rb +71 -50
  160. data/lib/onlinepayments/sdk/domain/mobile_payment_method_specific_output.rb +58 -45
  161. data/lib/onlinepayments/sdk/domain/mobile_payment_product302_specific_input.rb +32 -0
  162. data/lib/onlinepayments/sdk/domain/mobile_payment_product320_specific_input.rb +20 -18
  163. data/lib/onlinepayments/sdk/domain/mobile_three_d_secure_challenge_parameters.rb +51 -0
  164. data/lib/onlinepayments/sdk/domain/multiple_payment_information.rb +27 -20
  165. data/lib/onlinepayments/sdk/domain/omnichannel_payout_specific_input.rb +20 -16
  166. data/lib/onlinepayments/sdk/domain/operation_output.rb +67 -45
  167. data/lib/onlinepayments/sdk/domain/operation_payment_references.rb +30 -0
  168. data/lib/onlinepayments/sdk/domain/order.rb +75 -66
  169. data/lib/onlinepayments/sdk/domain/order_line_details.rb +79 -47
  170. data/lib/onlinepayments/sdk/domain/order_references.rb +34 -24
  171. data/lib/onlinepayments/sdk/domain/order_status_output.rb +52 -38
  172. data/lib/onlinepayments/sdk/domain/order_type_information.rb +27 -20
  173. data/lib/onlinepayments/sdk/domain/other_details.rb +37 -0
  174. data/lib/onlinepayments/sdk/domain/payment_account_on_file.rb +27 -20
  175. data/lib/onlinepayments/sdk/domain/payment_context.rb +34 -26
  176. data/lib/onlinepayments/sdk/domain/payment_creation_output.rb +41 -28
  177. data/lib/onlinepayments/sdk/domain/payment_details_response.rb +60 -49
  178. data/lib/onlinepayments/sdk/domain/payment_error_response.rb +37 -31
  179. data/lib/onlinepayments/sdk/domain/payment_link_event.rb +34 -24
  180. data/lib/onlinepayments/sdk/domain/payment_link_order_input.rb +34 -28
  181. data/lib/onlinepayments/sdk/domain/payment_link_order_output.rb +34 -28
  182. data/lib/onlinepayments/sdk/domain/payment_link_response.rb +81 -51
  183. data/lib/onlinepayments/sdk/domain/payment_link_specific_input.rb +36 -24
  184. data/lib/onlinepayments/sdk/domain/payment_output.rb +115 -94
  185. data/lib/onlinepayments/sdk/domain/payment_product.rb +117 -85
  186. data/lib/onlinepayments/sdk/domain/payment_product130_specific_input.rb +20 -18
  187. data/lib/onlinepayments/sdk/domain/payment_product130_specific_three_d_secure.rb +41 -28
  188. data/lib/onlinepayments/sdk/domain/payment_product3012.rb +27 -20
  189. data/lib/onlinepayments/sdk/domain/payment_product3012_specific_input.rb +51 -0
  190. data/lib/onlinepayments/sdk/domain/payment_product302_specific_data.rb +22 -20
  191. data/lib/onlinepayments/sdk/domain/payment_product3203_specific_output.rb +27 -24
  192. data/lib/onlinepayments/sdk/domain/payment_product3208_specific_input.rb +20 -16
  193. data/lib/onlinepayments/sdk/domain/payment_product3208_specific_output.rb +20 -16
  194. data/lib/onlinepayments/sdk/domain/payment_product3209_specific_input.rb +20 -16
  195. data/lib/onlinepayments/sdk/domain/payment_product3209_specific_output.rb +20 -16
  196. data/lib/onlinepayments/sdk/domain/payment_product320_specific_data.rb +29 -24
  197. data/lib/onlinepayments/sdk/domain/payment_product5001_specific_output.rb +48 -16
  198. data/lib/onlinepayments/sdk/domain/payment_product5100_specific_input.rb +20 -16
  199. data/lib/onlinepayments/sdk/domain/payment_product5402_specific_output.rb +20 -16
  200. data/lib/onlinepayments/sdk/domain/payment_product5404.rb +27 -20
  201. data/lib/onlinepayments/sdk/domain/payment_product5407.rb +27 -20
  202. data/lib/onlinepayments/sdk/domain/payment_product5500_specific_output.rb +41 -24
  203. data/lib/onlinepayments/sdk/domain/payment_product771_specific_output.rb +20 -16
  204. data/lib/onlinepayments/sdk/domain/payment_product840_customer_account.rb +72 -47
  205. data/lib/onlinepayments/sdk/domain/payment_product840_specific_output.rb +43 -38
  206. data/lib/onlinepayments/sdk/domain/payment_product_display_hints.rb +34 -24
  207. data/lib/onlinepayments/sdk/domain/payment_product_field.rb +41 -32
  208. data/lib/onlinepayments/sdk/domain/payment_product_field_data_restrictions.rb +27 -22
  209. data/lib/onlinepayments/sdk/domain/payment_product_field_display_element.rb +41 -28
  210. data/lib/onlinepayments/sdk/domain/payment_product_field_display_hints.rb +84 -56
  211. data/lib/onlinepayments/sdk/domain/payment_product_field_form_element.rb +30 -24
  212. data/lib/onlinepayments/sdk/domain/payment_product_field_tooltip.rb +28 -20
  213. data/lib/onlinepayments/sdk/domain/payment_product_field_validators.rb +83 -73
  214. data/lib/onlinepayments/sdk/domain/payment_product_filter.rb +32 -29
  215. data/lib/onlinepayments/sdk/domain/payment_product_filter_hosted_tokenization.rb +22 -20
  216. data/lib/onlinepayments/sdk/domain/payment_product_filters_hosted_checkout.rb +27 -24
  217. data/lib/onlinepayments/sdk/domain/payment_product_filters_hosted_tokenization.rb +27 -24
  218. data/lib/onlinepayments/sdk/domain/payment_product_group.rb +44 -37
  219. data/lib/onlinepayments/sdk/domain/payment_product_networks_response.rb +22 -20
  220. data/lib/onlinepayments/sdk/domain/payment_references.rb +27 -20
  221. data/lib/onlinepayments/sdk/domain/payment_response.rb +51 -41
  222. data/lib/onlinepayments/sdk/domain/payment_status_output.rb +66 -46
  223. data/lib/onlinepayments/sdk/domain/payout_error_response.rb +37 -31
  224. data/lib/onlinepayments/sdk/domain/payout_output.rb +27 -22
  225. data/lib/onlinepayments/sdk/domain/payout_response.rb +41 -32
  226. data/lib/onlinepayments/sdk/domain/payout_result.rb +41 -32
  227. data/lib/onlinepayments/sdk/domain/payout_status_output.rb +34 -24
  228. data/lib/onlinepayments/sdk/domain/personal_information.rb +34 -26
  229. data/lib/onlinepayments/sdk/domain/personal_information_token.rb +20 -18
  230. data/lib/onlinepayments/sdk/domain/personal_name.rb +34 -24
  231. data/lib/onlinepayments/sdk/domain/personal_name_token.rb +27 -20
  232. data/lib/onlinepayments/sdk/domain/product_directory.rb +22 -20
  233. data/lib/onlinepayments/sdk/domain/protection_eligibility.rb +27 -20
  234. data/lib/onlinepayments/sdk/domain/range_validator.rb +27 -20
  235. data/lib/onlinepayments/sdk/domain/rate_details.rb +51 -35
  236. data/lib/onlinepayments/sdk/domain/reattempt_instructions.rb +46 -0
  237. data/lib/onlinepayments/sdk/domain/reattempt_instructions_conditions.rb +37 -0
  238. data/lib/onlinepayments/sdk/domain/redirect_data.rb +27 -20
  239. data/lib/onlinepayments/sdk/domain/redirect_payment_method_specific_input.rb +166 -88
  240. data/lib/onlinepayments/sdk/domain/redirect_payment_method_specific_output.rb +95 -75
  241. data/lib/onlinepayments/sdk/domain/redirect_payment_product3203_specific_input.rb +20 -16
  242. data/lib/onlinepayments/sdk/domain/redirect_payment_product3204_specific_input.rb +30 -0
  243. data/lib/onlinepayments/sdk/domain/redirect_payment_product3302_specific_input.rb +44 -0
  244. data/lib/onlinepayments/sdk/domain/redirect_payment_product3306_specific_input.rb +20 -16
  245. data/lib/onlinepayments/sdk/domain/redirect_payment_product5001_specific_input.rb +27 -16
  246. data/lib/onlinepayments/sdk/domain/redirect_payment_product5300_specific_input.rb +72 -0
  247. data/lib/onlinepayments/sdk/domain/redirect_payment_product5402_specific_input.rb +30 -0
  248. data/lib/onlinepayments/sdk/domain/redirect_payment_product5403_specific_input.rb +30 -0
  249. data/lib/onlinepayments/sdk/domain/redirect_payment_product5406_specific_input.rb +20 -18
  250. data/lib/onlinepayments/sdk/domain/redirect_payment_product5408_specific_input.rb +27 -22
  251. data/lib/onlinepayments/sdk/domain/redirect_payment_product5410_specific_input.rb +32 -0
  252. data/lib/onlinepayments/sdk/domain/redirect_payment_product809_specific_input.rb +20 -16
  253. data/lib/onlinepayments/sdk/domain/redirect_payment_product840_specific_input.rb +41 -20
  254. data/lib/onlinepayments/sdk/domain/redirection_data.rb +20 -16
  255. data/lib/onlinepayments/sdk/domain/refund_card_method_specific_output.rb +34 -26
  256. data/lib/onlinepayments/sdk/domain/refund_e_wallet_method_specific_output.rb +34 -26
  257. data/lib/onlinepayments/sdk/domain/refund_error_response.rb +37 -31
  258. data/lib/onlinepayments/sdk/domain/refund_mobile_method_specific_output.rb +34 -24
  259. data/lib/onlinepayments/sdk/domain/refund_output.rb +89 -64
  260. data/lib/onlinepayments/sdk/domain/refund_payment_product840_customer_account.rb +34 -24
  261. data/lib/onlinepayments/sdk/domain/refund_payment_product840_specific_output.rb +20 -18
  262. data/lib/onlinepayments/sdk/domain/refund_redirect_method_specific_output.rb +27 -20
  263. data/lib/onlinepayments/sdk/domain/refund_request.rb +43 -24
  264. data/lib/onlinepayments/sdk/domain/refund_response.rb +41 -32
  265. data/lib/onlinepayments/sdk/domain/refunds_response.rb +22 -20
  266. data/lib/onlinepayments/sdk/domain/regular_expression_validator.rb +20 -16
  267. data/lib/onlinepayments/sdk/domain/send_test_request.rb +30 -0
  268. data/lib/onlinepayments/sdk/domain/sepa_direct_debit_payment_method_specific_input.rb +27 -22
  269. data/lib/onlinepayments/sdk/domain/sepa_direct_debit_payment_method_specific_input_base.rb +27 -22
  270. data/lib/onlinepayments/sdk/domain/sepa_direct_debit_payment_method_specific_output.rb +34 -28
  271. data/lib/onlinepayments/sdk/domain/sepa_direct_debit_payment_product771_specific_input.rb +27 -22
  272. data/lib/onlinepayments/sdk/domain/sepa_direct_debit_payment_product771_specific_input_base.rb +27 -22
  273. data/lib/onlinepayments/sdk/domain/session_request.rb +22 -20
  274. data/lib/onlinepayments/sdk/domain/session_response.rb +53 -39
  275. data/lib/onlinepayments/sdk/domain/shipping.rb +76 -52
  276. data/lib/onlinepayments/sdk/domain/shipping_method.rb +41 -28
  277. data/lib/onlinepayments/sdk/domain/shopping_cart.rb +62 -48
  278. data/lib/onlinepayments/sdk/domain/shopping_cart_extension.rb +51 -43
  279. data/lib/onlinepayments/sdk/domain/show_form_data.rb +35 -31
  280. data/lib/onlinepayments/sdk/domain/show_instructions_data.rb +30 -0
  281. data/lib/onlinepayments/sdk/domain/subsequent_card_payment_method_specific_input.rb +60 -39
  282. data/lib/onlinepayments/sdk/domain/subsequent_payment_product5001_specific_input.rb +20 -16
  283. data/lib/onlinepayments/sdk/domain/subsequent_payment_request.rb +35 -31
  284. data/lib/onlinepayments/sdk/domain/subsequent_payment_response.rb +20 -18
  285. data/lib/onlinepayments/sdk/domain/surcharge.rb +59 -48
  286. data/lib/onlinepayments/sdk/domain/surcharge_calculation_card.rb +27 -20
  287. data/lib/onlinepayments/sdk/domain/surcharge_for_payment_link.rb +20 -16
  288. data/lib/onlinepayments/sdk/domain/surcharge_rate.rb +41 -28
  289. data/lib/onlinepayments/sdk/domain/surcharge_specific_input.rb +27 -22
  290. data/lib/onlinepayments/sdk/domain/surcharge_specific_output.rb +34 -28
  291. data/lib/onlinepayments/sdk/domain/test_connection.rb +20 -16
  292. data/lib/onlinepayments/sdk/domain/three_d_secure.rb +98 -63
  293. data/lib/onlinepayments/sdk/domain/three_d_secure_base.rb +78 -52
  294. data/lib/onlinepayments/sdk/domain/three_d_secure_data.rb +34 -24
  295. data/lib/onlinepayments/sdk/domain/three_d_secure_results.rb +107 -67
  296. data/lib/onlinepayments/sdk/domain/token_card.rb +27 -22
  297. data/lib/onlinepayments/sdk/domain/token_card_data.rb +27 -18
  298. data/lib/onlinepayments/sdk/domain/token_card_specific_input.rb +20 -18
  299. data/lib/onlinepayments/sdk/domain/token_data.rb +27 -18
  300. data/lib/onlinepayments/sdk/domain/token_e_wallet.rb +28 -22
  301. data/lib/onlinepayments/sdk/domain/token_response.rb +58 -45
  302. data/lib/onlinepayments/sdk/domain/transaction.rb +20 -18
  303. data/lib/onlinepayments/sdk/domain/uploadable_file.rb +33 -0
  304. data/lib/onlinepayments/sdk/domain/validate_credentials_request.rb +37 -0
  305. data/lib/onlinepayments/sdk/domain/validate_credentials_response.rb +30 -0
  306. data/lib/onlinepayments/sdk/domain/value_mapping_element.rb +29 -24
  307. data/lib/onlinepayments/sdk/domain.rb +4 -0
  308. data/lib/onlinepayments/sdk/exception_factory.rb +76 -0
  309. data/lib/onlinepayments/sdk/factory.rb +163 -118
  310. data/lib/onlinepayments/sdk/idempotence_exception.rb +23 -19
  311. data/lib/onlinepayments/sdk/json/default_marshaller.rb +34 -0
  312. data/lib/onlinepayments/sdk/json/marshaller.rb +27 -0
  313. data/lib/onlinepayments/sdk/json/marshaller_syntax_exception.rb +9 -0
  314. data/lib/onlinepayments/sdk/json.rb +1 -0
  315. data/lib/onlinepayments/sdk/logging/communicator_logger.rb +18 -16
  316. data/lib/onlinepayments/sdk/logging/log_message_builder.rb +80 -47
  317. data/lib/onlinepayments/sdk/logging/logging_capable.rb +1 -1
  318. data/lib/onlinepayments/sdk/logging/obfuscation/body_obfuscator.rb +113 -0
  319. data/lib/onlinepayments/sdk/logging/obfuscation/header_obfuscator.rb +54 -0
  320. data/lib/onlinepayments/sdk/logging/obfuscation/obfuscation_capable.rb +21 -0
  321. data/lib/onlinepayments/sdk/logging/obfuscation/obfuscation_rule.rb +47 -0
  322. data/lib/onlinepayments/sdk/logging/obfuscation.rb +1 -0
  323. data/lib/onlinepayments/sdk/logging/request_log_message_builder.rb +40 -29
  324. data/lib/onlinepayments/sdk/logging/response_log_message_builder.rb +30 -23
  325. data/lib/onlinepayments/sdk/logging/ruby_communicator_logger.rb +49 -45
  326. data/lib/onlinepayments/sdk/logging/stdout_communicator_logger.rb +20 -23
  327. data/lib/onlinepayments/sdk/logging.rb +1 -10
  328. data/lib/onlinepayments/sdk/merchant/captures/captures_client.rb +57 -0
  329. data/lib/onlinepayments/sdk/merchant/captures.rb +4 -0
  330. data/lib/onlinepayments/sdk/merchant/complete/complete_client.rb +60 -0
  331. data/lib/onlinepayments/sdk/merchant/complete.rb +4 -0
  332. data/lib/onlinepayments/sdk/merchant/hostedcheckout/hosted_checkout_client.rb +72 -71
  333. data/lib/onlinepayments/sdk/merchant/hostedcheckout.rb +4 -0
  334. data/lib/onlinepayments/sdk/merchant/hostedtokenization/hosted_tokenization_client.rb +72 -71
  335. data/lib/onlinepayments/sdk/merchant/hostedtokenization.rb +4 -0
  336. data/lib/onlinepayments/sdk/merchant/mandates/mandates_client.rb +165 -164
  337. data/lib/onlinepayments/sdk/merchant/mandates.rb +4 -0
  338. data/lib/onlinepayments/sdk/merchant/merchant_client.rb +116 -64
  339. data/lib/onlinepayments/sdk/merchant/paymentlinks/payment_links_client.rb +102 -101
  340. data/lib/onlinepayments/sdk/merchant/paymentlinks.rb +4 -0
  341. data/lib/onlinepayments/sdk/merchant/payments/payments_client.rb +233 -332
  342. data/lib/onlinepayments/sdk/merchant/payments.rb +4 -0
  343. data/lib/onlinepayments/sdk/merchant/payouts/payouts_client.rb +73 -71
  344. data/lib/onlinepayments/sdk/merchant/payouts.rb +4 -0
  345. data/lib/onlinepayments/sdk/merchant/privacypolicy/get_privacy_policy_params.rb +32 -0
  346. data/lib/onlinepayments/sdk/merchant/privacypolicy/privacy_policy_client.rb +54 -0
  347. data/lib/onlinepayments/sdk/merchant/privacypolicy.rb +4 -0
  348. data/lib/onlinepayments/sdk/merchant/productgroups/get_product_group_params.rb +50 -47
  349. data/lib/onlinepayments/sdk/merchant/productgroups/get_product_groups_params.rb +50 -47
  350. data/lib/onlinepayments/sdk/merchant/productgroups/product_groups_client.rb +72 -72
  351. data/lib/onlinepayments/sdk/merchant/productgroups.rb +4 -0
  352. data/lib/onlinepayments/sdk/merchant/products/get_payment_product_networks_params.rb +27 -25
  353. data/lib/onlinepayments/sdk/merchant/products/get_payment_product_params.rb +50 -47
  354. data/lib/onlinepayments/sdk/merchant/products/get_payment_products_params.rb +50 -47
  355. data/lib/onlinepayments/sdk/merchant/products/get_product_directory_params.rb +21 -19
  356. data/lib/onlinepayments/sdk/merchant/products/products_client.rb +134 -136
  357. data/lib/onlinepayments/sdk/merchant/products.rb +4 -0
  358. data/lib/onlinepayments/sdk/merchant/refunds/refunds_client.rb +57 -0
  359. data/lib/onlinepayments/sdk/merchant/refunds.rb +4 -0
  360. data/lib/onlinepayments/sdk/merchant/services/services_client.rb +124 -155
  361. data/lib/onlinepayments/sdk/merchant/services.rb +4 -0
  362. data/lib/onlinepayments/sdk/merchant/sessions/sessions_client.rb +42 -41
  363. data/lib/onlinepayments/sdk/merchant/sessions.rb +4 -0
  364. data/lib/onlinepayments/sdk/merchant/tokens/tokens_client.rb +101 -100
  365. data/lib/onlinepayments/sdk/merchant/tokens.rb +4 -0
  366. data/lib/onlinepayments/sdk/merchant/webhooks/webhooks_client.rb +83 -0
  367. data/lib/onlinepayments/sdk/merchant/webhooks.rb +4 -0
  368. data/lib/onlinepayments/sdk/merchant.rb +4 -0
  369. data/lib/onlinepayments/sdk/platform_exception.rb +19 -0
  370. data/lib/onlinepayments/sdk/proxy_configuration.rb +60 -60
  371. data/lib/onlinepayments/sdk/reference_exception.rb +14 -9
  372. data/lib/onlinepayments/sdk/validation_exception.rb +14 -9
  373. data/lib/onlinepayments/sdk/webhooks/api_version_mismatch_exception.rb +17 -15
  374. data/lib/onlinepayments/sdk/webhooks/in_memory_secret_key_store.rb +46 -43
  375. data/lib/onlinepayments/sdk/webhooks/secret_key_not_available_exception.rb +16 -12
  376. data/lib/onlinepayments/sdk/webhooks/secret_key_store.rb +13 -11
  377. data/lib/onlinepayments/sdk/webhooks/signature_validation_exception.rb +15 -14
  378. data/lib/onlinepayments/sdk/webhooks/signature_validator.rb +81 -0
  379. data/lib/onlinepayments/sdk/webhooks/webhooks_event.rb +84 -53
  380. data/lib/onlinepayments/sdk/webhooks/webhooks_helper.rb +28 -90
  381. data/lib/onlinepayments/sdk/webhooks.rb +1 -11
  382. data/lib/onlinepayments/sdk.rb +4 -26
  383. data/onlinepayments-sdk-ruby.gemspec +3 -2
  384. metadata +95 -35
  385. data/lib/onlinepayments/sdk/authenticator.rb +0 -16
  386. data/lib/onlinepayments/sdk/communication_exception.rb +0 -16
  387. data/lib/onlinepayments/sdk/connection.rb +0 -41
  388. data/lib/onlinepayments/sdk/data_object.rb +0 -31
  389. data/lib/onlinepayments/sdk/defaultimpl/authorization_type.rb +0 -24
  390. data/lib/onlinepayments/sdk/defaultimpl/default_authenticator.rb +0 -108
  391. data/lib/onlinepayments/sdk/defaultimpl/default_connection.rb +0 -365
  392. data/lib/onlinepayments/sdk/defaultimpl/default_marshaller.rb +0 -32
  393. data/lib/onlinepayments/sdk/defaultimpl.rb +0 -6
  394. data/lib/onlinepayments/sdk/endpoint_configuration.rb +0 -127
  395. data/lib/onlinepayments/sdk/exceptions.rb +0 -8
  396. data/lib/onlinepayments/sdk/logging/logging_util.rb +0 -286
  397. data/lib/onlinepayments/sdk/marshaller.rb +0 -24
  398. data/lib/onlinepayments/sdk/marshaller_syntax_exception.rb +0 -6
  399. data/lib/onlinepayments/sdk/merchant/services/get_privacy_policy_params.rb +0 -30
  400. data/lib/onlinepayments/sdk/meta_data_provider.rb +0 -150
  401. data/lib/onlinepayments/sdk/modules.rb +0 -62
  402. data/lib/onlinepayments/sdk/multipart_form_data_object.rb +0 -44
  403. data/lib/onlinepayments/sdk/multipart_form_data_request.rb +0 -9
  404. data/lib/onlinepayments/sdk/not_found_exception.rb +0 -16
  405. data/lib/onlinepayments/sdk/param_request.rb +0 -11
  406. data/lib/onlinepayments/sdk/payment_platform_exception.rb +0 -15
  407. data/lib/onlinepayments/sdk/pooled_connection.rb +0 -21
  408. data/lib/onlinepayments/sdk/request_header.rb +0 -50
  409. data/lib/onlinepayments/sdk/request_param.rb +0 -23
  410. data/lib/onlinepayments/sdk/response_exception.rb +0 -47
  411. data/lib/onlinepayments/sdk/response_header.rb +0 -42
  412. data/lib/onlinepayments/sdk/uploadable_file.rb +0 -30
  413. data/lib/onlinepayments/sdk/webhooks/webhooks.rb +0 -22
  414. data/lib/onlinepayments/sdk/webhooks/webhooks_helper_builder.rb +0 -25
@@ -1,180 +1,181 @@
1
1
  #
2
- # This class was auto-generated.
2
+ # This file was automatically generated.
3
3
  #
4
4
  require 'onlinepayments/sdk/api_resource'
5
- require 'onlinepayments/sdk/response_exception'
6
- require 'onlinepayments/sdk/domain/create_mandate_request'
5
+ require 'onlinepayments/sdk/exception_factory'
6
+ require 'onlinepayments/sdk/communication/response_exception'
7
7
  require 'onlinepayments/sdk/domain/create_mandate_response'
8
8
  require 'onlinepayments/sdk/domain/error_response'
9
9
  require 'onlinepayments/sdk/domain/get_mandate_response'
10
10
 
11
- module OnlinePayments::SDK
12
- module Merchant
13
- module Mandates
11
+ module OnlinePayments
12
+ module SDK
13
+ module Merchant
14
+ module Mandates
15
+ # Mandates client. Thread-safe.
16
+ class MandatesClient < OnlinePayments::SDK::ApiResource
14
17
 
15
- # Mandates client. Thread-safe.
16
- class MandatesClient < OnlinePayments::SDK::ApiResource
18
+ # @param parent [OnlinePayments::SDK::ApiResource]
19
+ # @param path_context [Hash, nil]
20
+ def initialize(parent, path_context)
21
+ super(parent: parent, path_context: path_context)
22
+ end
17
23
 
18
- # @param parent [OnlinePayments::SDK::ApiResource]
19
- # @param path_context [Hash, nil]
20
- def initialize(parent, path_context = nil)
21
- super(parent, path_context)
22
- end
23
-
24
- # Resource /v2/!{merchantId}/mandates
25
- # @param body [OnlinePayments::SDK::Domain::CreateMandateRequest]
26
- # @param context [OnlinePayments::SDK::CallContext]
27
- # @return [OnlinePayments::SDK::Domain::CreateMandateResponse]
28
- # @raise [OnlinePayments::SDK::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400)
29
- # @raise [OnlinePayments::SDK::AuthorizationException] if the request was not allowed (HTTP status code 403)
30
- # @raise [OnlinePayments::SDK::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
31
- # @raise [OnlinePayments::SDK::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed,
32
- # or there was a conflict (HTTP status code 404, 409 or 410)
33
- # @raise [OnlinePayments::SDK::PaymentPlatformException] if something went wrong at the payment platform,
34
- # the payment platform was unable to process a message from a downstream partner/acquirer,
35
- # or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
36
- # @raise [OnlinePayments::SDK::ApiException]if the payment platform returned any other error
37
- def create_mandate(body, context = nil)
38
- uri = instantiate_uri('/v2/{merchantId}/mandates')
39
- @communicator.post(
40
- uri,
41
- client_headers,
42
- nil,
43
- body,
44
- OnlinePayments::SDK::Domain::CreateMandateResponse,
45
- context
46
- )
47
- rescue ResponseException => e
48
- error_type = OnlinePayments::SDK::Domain::ErrorResponse
49
- error_object = @communicator.marshaller.unmarshal(e.body, error_type)
50
- raise create_exception(e.status_code, e.body, error_object, context)
51
- end
24
+ # Resource /v2/!{merchantId}/mandates - Create mandate
25
+ #
26
+ # @param body [OnlinePayments::SDK::Domain::CreateMandateRequest]
27
+ # @param context [OnlinePayments::SDK::CallContext, nil]
28
+ # @return [OnlinePayments::SDK::Domain::CreateMandateResponse]
29
+ # @raise [OnlinePayments::SDK::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
30
+ # @raise [OnlinePayments::SDK::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400)
31
+ # @raise [OnlinePayments::SDK::AuthorizationException] if the request was not allowed (HTTP status code 403)
32
+ # @raise [OnlinePayments::SDK::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed,
33
+ # or there was a conflict (HTTP status code 404, 409 or 410)
34
+ # @raise [OnlinePayments::SDK::PlatformException] if something went wrong at the payment platform,
35
+ # the payment platform was unable to process a message from a downstream partner/acquirer,
36
+ # or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
37
+ # @raise [OnlinePayments::SDK::ApiException] if the payment platform returned any other error
38
+ def create_mandate(body, context = nil)
39
+ uri = instantiate_uri('/v2/{merchantId}/mandates', nil)
40
+ @communicator.post(
41
+ uri,
42
+ client_headers,
43
+ nil,
44
+ body,
45
+ OnlinePayments::SDK::Domain::CreateMandateResponse,
46
+ context)
47
+ rescue OnlinePayments::SDK::Communication::ResponseException => e
48
+ error_type = OnlinePayments::SDK::Domain::ErrorResponse
49
+ error_object = @communicator.marshaller.unmarshal(e.body, error_type)
50
+ raise OnlinePayments::SDK.create_exception(e.status_code, e.body, error_object, context)
51
+ end
52
52
 
53
- # Resource /v2/!{merchantId}/mandates/!{uniqueMandateReference}
54
- # @param unique_mandate_reference [String]
55
- # @param context [OnlinePayments::SDK::CallContext]
56
- # @return [OnlinePayments::SDK::Domain::GetMandateResponse]
57
- # @raise [OnlinePayments::SDK::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400)
58
- # @raise [OnlinePayments::SDK::AuthorizationException] if the request was not allowed (HTTP status code 403)
59
- # @raise [OnlinePayments::SDK::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
60
- # @raise [OnlinePayments::SDK::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed,
61
- # or there was a conflict (HTTP status code 404, 409 or 410)
62
- # @raise [OnlinePayments::SDK::PaymentPlatformException] if something went wrong at the payment platform,
63
- # the payment platform was unable to process a message from a downstream partner/acquirer,
64
- # or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
65
- # @raise [OnlinePayments::SDK::ApiException]if the payment platform returned any other error
66
- def get_mandate(unique_mandate_reference, context = nil)
67
- path_context = {
68
- 'uniqueMandateReference'.freeze => unique_mandate_reference,
69
- }
70
- uri = instantiate_uri('/v2/{merchantId}/mandates/{uniqueMandateReference}', path_context)
71
- @communicator.get(
72
- uri,
73
- client_headers,
74
- nil,
75
- OnlinePayments::SDK::Domain::GetMandateResponse,
76
- context
77
- )
78
- rescue ResponseException => e
79
- error_type = OnlinePayments::SDK::Domain::ErrorResponse
80
- error_object = @communicator.marshaller.unmarshal(e.body, error_type)
81
- raise create_exception(e.status_code, e.body, error_object, context)
82
- end
53
+ # Resource /v2/!{merchantId}/mandates/!{uniqueMandateReference} - Get mandate
54
+ #
55
+ # @param unique_mandate_reference [String]
56
+ # @param context [OnlinePayments::SDK::CallContext, nil]
57
+ # @return [OnlinePayments::SDK::Domain::GetMandateResponse]
58
+ # @raise [OnlinePayments::SDK::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
59
+ # @raise [OnlinePayments::SDK::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400)
60
+ # @raise [OnlinePayments::SDK::AuthorizationException] if the request was not allowed (HTTP status code 403)
61
+ # @raise [OnlinePayments::SDK::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed,
62
+ # or there was a conflict (HTTP status code 404, 409 or 410)
63
+ # @raise [OnlinePayments::SDK::PlatformException] if something went wrong at the payment platform,
64
+ # the payment platform was unable to process a message from a downstream partner/acquirer,
65
+ # or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
66
+ # @raise [OnlinePayments::SDK::ApiException] if the payment platform returned any other error
67
+ def get_mandate(unique_mandate_reference, context = nil)
68
+ path_context = {
69
+ 'uniqueMandateReference'.freeze => unique_mandate_reference,
70
+ }
71
+ uri = instantiate_uri('/v2/{merchantId}/mandates/{uniqueMandateReference}', path_context)
72
+ @communicator.get(
73
+ uri,
74
+ client_headers,
75
+ nil,
76
+ OnlinePayments::SDK::Domain::GetMandateResponse,
77
+ context)
78
+ rescue OnlinePayments::SDK::Communication::ResponseException => e
79
+ error_type = OnlinePayments::SDK::Domain::ErrorResponse
80
+ error_object = @communicator.marshaller.unmarshal(e.body, error_type)
81
+ raise OnlinePayments::SDK.create_exception(e.status_code, e.body, error_object, context)
82
+ end
83
83
 
84
- # Resource /v2/!{merchantId}/mandates/!{uniqueMandateReference}/block
85
- # @param unique_mandate_reference [String]
86
- # @param context [OnlinePayments::SDK::CallContext]
87
- # @return [OnlinePayments::SDK::Domain::GetMandateResponse]
88
- # @raise [OnlinePayments::SDK::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400)
89
- # @raise [OnlinePayments::SDK::AuthorizationException] if the request was not allowed (HTTP status code 403)
90
- # @raise [OnlinePayments::SDK::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
91
- # @raise [OnlinePayments::SDK::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed,
92
- # or there was a conflict (HTTP status code 404, 409 or 410)
93
- # @raise [OnlinePayments::SDK::PaymentPlatformException] if something went wrong at the payment platform,
94
- # the payment platform was unable to process a message from a downstream partner/acquirer,
95
- # or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
96
- # @raise [OnlinePayments::SDK::ApiException]if the payment platform returned any other error
97
- def block_mandate(unique_mandate_reference, context = nil)
98
- path_context = {
99
- 'uniqueMandateReference'.freeze => unique_mandate_reference,
100
- }
101
- uri = instantiate_uri('/v2/{merchantId}/mandates/{uniqueMandateReference}/block', path_context)
102
- @communicator.post(
103
- uri,
104
- client_headers,
105
- nil,
106
- nil,
107
- OnlinePayments::SDK::Domain::GetMandateResponse,
108
- context
109
- )
110
- rescue ResponseException => e
111
- error_type = OnlinePayments::SDK::Domain::ErrorResponse
112
- error_object = @communicator.marshaller.unmarshal(e.body, error_type)
113
- raise create_exception(e.status_code, e.body, error_object, context)
114
- end
84
+ # Resource /v2/!{merchantId}/mandates/!{uniqueMandateReference}/block - Block mandate
85
+ #
86
+ # @param unique_mandate_reference [String]
87
+ # @param context [OnlinePayments::SDK::CallContext, nil]
88
+ # @return [OnlinePayments::SDK::Domain::GetMandateResponse]
89
+ # @raise [OnlinePayments::SDK::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
90
+ # @raise [OnlinePayments::SDK::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400)
91
+ # @raise [OnlinePayments::SDK::AuthorizationException] if the request was not allowed (HTTP status code 403)
92
+ # @raise [OnlinePayments::SDK::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed,
93
+ # or there was a conflict (HTTP status code 404, 409 or 410)
94
+ # @raise [OnlinePayments::SDK::PlatformException] if something went wrong at the payment platform,
95
+ # the payment platform was unable to process a message from a downstream partner/acquirer,
96
+ # or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
97
+ # @raise [OnlinePayments::SDK::ApiException] if the payment platform returned any other error
98
+ def block_mandate(unique_mandate_reference, context = nil)
99
+ path_context = {
100
+ 'uniqueMandateReference'.freeze => unique_mandate_reference,
101
+ }
102
+ uri = instantiate_uri('/v2/{merchantId}/mandates/{uniqueMandateReference}/block', path_context)
103
+ @communicator.post(
104
+ uri,
105
+ client_headers,
106
+ nil,
107
+ nil,
108
+ OnlinePayments::SDK::Domain::GetMandateResponse,
109
+ context)
110
+ rescue OnlinePayments::SDK::Communication::ResponseException => e
111
+ error_type = OnlinePayments::SDK::Domain::ErrorResponse
112
+ error_object = @communicator.marshaller.unmarshal(e.body, error_type)
113
+ raise OnlinePayments::SDK.create_exception(e.status_code, e.body, error_object, context)
114
+ end
115
115
 
116
- # Resource /v2/!{merchantId}/mandates/!{uniqueMandateReference}/unblock
117
- # @param unique_mandate_reference [String]
118
- # @param context [OnlinePayments::SDK::CallContext]
119
- # @return [OnlinePayments::SDK::Domain::GetMandateResponse]
120
- # @raise [OnlinePayments::SDK::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400)
121
- # @raise [OnlinePayments::SDK::AuthorizationException] if the request was not allowed (HTTP status code 403)
122
- # @raise [OnlinePayments::SDK::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
123
- # @raise [OnlinePayments::SDK::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed,
124
- # or there was a conflict (HTTP status code 404, 409 or 410)
125
- # @raise [OnlinePayments::SDK::PaymentPlatformException] if something went wrong at the payment platform,
126
- # the payment platform was unable to process a message from a downstream partner/acquirer,
127
- # or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
128
- # @raise [OnlinePayments::SDK::ApiException]if the payment platform returned any other error
129
- def unblock_mandate(unique_mandate_reference, context = nil)
130
- path_context = {
131
- 'uniqueMandateReference'.freeze => unique_mandate_reference,
132
- }
133
- uri = instantiate_uri('/v2/{merchantId}/mandates/{uniqueMandateReference}/unblock', path_context)
134
- @communicator.post(
135
- uri,
136
- client_headers,
137
- nil,
138
- nil,
139
- OnlinePayments::SDK::Domain::GetMandateResponse,
140
- context
141
- )
142
- rescue ResponseException => e
143
- error_type = OnlinePayments::SDK::Domain::ErrorResponse
144
- error_object = @communicator.marshaller.unmarshal(e.body, error_type)
145
- raise create_exception(e.status_code, e.body, error_object, context)
146
- end
116
+ # Resource /v2/!{merchantId}/mandates/!{uniqueMandateReference}/unblock - Unblock mandate
117
+ #
118
+ # @param unique_mandate_reference [String]
119
+ # @param context [OnlinePayments::SDK::CallContext, nil]
120
+ # @return [OnlinePayments::SDK::Domain::GetMandateResponse]
121
+ # @raise [OnlinePayments::SDK::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
122
+ # @raise [OnlinePayments::SDK::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400)
123
+ # @raise [OnlinePayments::SDK::AuthorizationException] if the request was not allowed (HTTP status code 403)
124
+ # @raise [OnlinePayments::SDK::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed,
125
+ # or there was a conflict (HTTP status code 404, 409 or 410)
126
+ # @raise [OnlinePayments::SDK::PlatformException] if something went wrong at the payment platform,
127
+ # the payment platform was unable to process a message from a downstream partner/acquirer,
128
+ # or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
129
+ # @raise [OnlinePayments::SDK::ApiException] if the payment platform returned any other error
130
+ def unblock_mandate(unique_mandate_reference, context = nil)
131
+ path_context = {
132
+ 'uniqueMandateReference'.freeze => unique_mandate_reference,
133
+ }
134
+ uri = instantiate_uri('/v2/{merchantId}/mandates/{uniqueMandateReference}/unblock', path_context)
135
+ @communicator.post(
136
+ uri,
137
+ client_headers,
138
+ nil,
139
+ nil,
140
+ OnlinePayments::SDK::Domain::GetMandateResponse,
141
+ context)
142
+ rescue OnlinePayments::SDK::Communication::ResponseException => e
143
+ error_type = OnlinePayments::SDK::Domain::ErrorResponse
144
+ error_object = @communicator.marshaller.unmarshal(e.body, error_type)
145
+ raise OnlinePayments::SDK.create_exception(e.status_code, e.body, error_object, context)
146
+ end
147
147
 
148
- # Resource /v2/!{merchantId}/mandates/!{uniqueMandateReference}/revoke
149
- # @param unique_mandate_reference [String]
150
- # @param context [OnlinePayments::SDK::CallContext]
151
- # @return [OnlinePayments::SDK::Domain::GetMandateResponse]
152
- # @raise [OnlinePayments::SDK::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400)
153
- # @raise [OnlinePayments::SDK::AuthorizationException] if the request was not allowed (HTTP status code 403)
154
- # @raise [OnlinePayments::SDK::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
155
- # @raise [OnlinePayments::SDK::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed,
156
- # or there was a conflict (HTTP status code 404, 409 or 410)
157
- # @raise [OnlinePayments::SDK::PaymentPlatformException] if something went wrong at the payment platform,
158
- # the payment platform was unable to process a message from a downstream partner/acquirer,
159
- # or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
160
- # @raise [OnlinePayments::SDK::ApiException]if the payment platform returned any other error
161
- def revoke_mandate(unique_mandate_reference, context = nil)
162
- path_context = {
163
- 'uniqueMandateReference'.freeze => unique_mandate_reference,
164
- }
165
- uri = instantiate_uri('/v2/{merchantId}/mandates/{uniqueMandateReference}/revoke', path_context)
166
- @communicator.post(
167
- uri,
168
- client_headers,
169
- nil,
170
- nil,
171
- OnlinePayments::SDK::Domain::GetMandateResponse,
172
- context
173
- )
174
- rescue ResponseException => e
175
- error_type = OnlinePayments::SDK::Domain::ErrorResponse
176
- error_object = @communicator.marshaller.unmarshal(e.body, error_type)
177
- raise create_exception(e.status_code, e.body, error_object, context)
148
+ # Resource /v2/!{merchantId}/mandates/!{uniqueMandateReference}/revoke - Revoke mandate
149
+ #
150
+ # @param unique_mandate_reference [String]
151
+ # @param context [OnlinePayments::SDK::CallContext, nil]
152
+ # @return [OnlinePayments::SDK::Domain::GetMandateResponse]
153
+ # @raise [OnlinePayments::SDK::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
154
+ # @raise [OnlinePayments::SDK::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400)
155
+ # @raise [OnlinePayments::SDK::AuthorizationException] if the request was not allowed (HTTP status code 403)
156
+ # @raise [OnlinePayments::SDK::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed,
157
+ # or there was a conflict (HTTP status code 404, 409 or 410)
158
+ # @raise [OnlinePayments::SDK::PlatformException] if something went wrong at the payment platform,
159
+ # the payment platform was unable to process a message from a downstream partner/acquirer,
160
+ # or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
161
+ # @raise [OnlinePayments::SDK::ApiException] if the payment platform returned any other error
162
+ def revoke_mandate(unique_mandate_reference, context = nil)
163
+ path_context = {
164
+ 'uniqueMandateReference'.freeze => unique_mandate_reference,
165
+ }
166
+ uri = instantiate_uri('/v2/{merchantId}/mandates/{uniqueMandateReference}/revoke', path_context)
167
+ @communicator.post(
168
+ uri,
169
+ client_headers,
170
+ nil,
171
+ nil,
172
+ OnlinePayments::SDK::Domain::GetMandateResponse,
173
+ context)
174
+ rescue OnlinePayments::SDK::Communication::ResponseException => e
175
+ error_type = OnlinePayments::SDK::Domain::ErrorResponse
176
+ error_object = @communicator.marshaller.unmarshal(e.body, error_type)
177
+ raise OnlinePayments::SDK.create_exception(e.status_code, e.body, error_object, context)
178
+ end
178
179
  end
179
180
  end
180
181
  end
@@ -0,0 +1,4 @@
1
+ #
2
+ # This file was automatically generated.
3
+ #
4
+ Dir[File.join(__dir__, 'mandates', '*.rb')].each { |f| require f }
@@ -1,95 +1,147 @@
1
1
  #
2
- # This class was auto-generated.
2
+ # This file was automatically generated.
3
3
  #
4
4
  require 'onlinepayments/sdk/api_resource'
5
+ require 'onlinepayments/sdk/merchant/captures/captures_client'
6
+ require 'onlinepayments/sdk/merchant/complete/complete_client'
5
7
  require 'onlinepayments/sdk/merchant/hostedcheckout/hosted_checkout_client'
6
8
  require 'onlinepayments/sdk/merchant/hostedtokenization/hosted_tokenization_client'
7
9
  require 'onlinepayments/sdk/merchant/mandates/mandates_client'
8
10
  require 'onlinepayments/sdk/merchant/paymentlinks/payment_links_client'
9
11
  require 'onlinepayments/sdk/merchant/payments/payments_client'
10
12
  require 'onlinepayments/sdk/merchant/payouts/payouts_client'
13
+ require 'onlinepayments/sdk/merchant/privacypolicy/privacy_policy_client'
11
14
  require 'onlinepayments/sdk/merchant/productgroups/product_groups_client'
12
15
  require 'onlinepayments/sdk/merchant/products/products_client'
16
+ require 'onlinepayments/sdk/merchant/refunds/refunds_client'
13
17
  require 'onlinepayments/sdk/merchant/services/services_client'
14
18
  require 'onlinepayments/sdk/merchant/sessions/sessions_client'
15
19
  require 'onlinepayments/sdk/merchant/tokens/tokens_client'
20
+ require 'onlinepayments/sdk/merchant/webhooks/webhooks_client'
16
21
 
17
- module OnlinePayments::SDK
18
- module Merchant
22
+ module OnlinePayments
23
+ module SDK
24
+ module Merchant
25
+ # Merchant client. Thread-safe.
26
+ class MerchantClient < OnlinePayments::SDK::ApiResource
19
27
 
20
- # Merchant client. Thread-safe.
21
- class MerchantClient < OnlinePayments::SDK::ApiResource
28
+ # @param parent [OnlinePayments::SDK::ApiResource]
29
+ # @param path_context [Hash, nil]
30
+ def initialize(parent, path_context)
31
+ super(parent: parent, path_context: path_context)
32
+ end
22
33
 
23
- # @param parent [OnlinePayments::SDK::ApiResource]
24
- # @param path_context [Hash, nil]
25
- def initialize(parent, path_context = nil)
26
- super(parent, path_context)
27
- end
34
+ # Resource /v2/{merchantId}/hostedcheckouts
35
+ #
36
+ # @return [OnlinePayments::SDK::Merchant::HostedCheckout::HostedCheckoutClient]
37
+ def hosted_checkout
38
+ OnlinePayments::SDK::Merchant::HostedCheckout::HostedCheckoutClient.new(self, nil)
39
+ end
28
40
 
29
- # Resource /v2/!{merchantId}/hostedcheckouts
30
- # @return [OnlinePayments::SDK::Merchant::HostedCheckout::HostedCheckoutClient]
31
- def hosted_checkout
32
- OnlinePayments::SDK::Merchant::HostedCheckout::HostedCheckoutClient.new(self, nil)
33
- end
41
+ # Resource /v2/{merchantId}/hostedtokenizations
42
+ #
43
+ # @return [OnlinePayments::SDK::Merchant::HostedTokenization::HostedTokenizationClient]
44
+ def hosted_tokenization
45
+ OnlinePayments::SDK::Merchant::HostedTokenization::HostedTokenizationClient.new(self, nil)
46
+ end
34
47
 
35
- # Resource /v2/!{merchantId}/hostedtokenizations
36
- # @return [OnlinePayments::SDK::Merchant::HostedTokenization::HostedTokenizationClient]
37
- def hosted_tokenization
38
- OnlinePayments::SDK::Merchant::HostedTokenization::HostedTokenizationClient.new(self, nil)
39
- end
48
+ # Resource /v2/{merchantId}/payments
49
+ #
50
+ # @return [OnlinePayments::SDK::Merchant::Payments::PaymentsClient]
51
+ def payments
52
+ OnlinePayments::SDK::Merchant::Payments::PaymentsClient.new(self, nil)
53
+ end
40
54
 
41
- # Resource /v2/!{merchantId}/mandates
42
- # @return [OnlinePayments::SDK::Merchant::Mandates::MandatesClient]
43
- def mandates
44
- OnlinePayments::SDK::Merchant::Mandates::MandatesClient.new(self, nil)
45
- end
55
+ # Resource /v2/{merchantId}/payments/{paymentId}/captures
56
+ #
57
+ # @return [OnlinePayments::SDK::Merchant::Captures::CapturesClient]
58
+ def captures
59
+ OnlinePayments::SDK::Merchant::Captures::CapturesClient.new(self, nil)
60
+ end
46
61
 
47
- # Resource /v2/!{merchantId}/paymentlinks
48
- # @return [OnlinePayments::SDK::Merchant::PaymentLinks::PaymentLinksClient]
49
- def payment_links
50
- OnlinePayments::SDK::Merchant::PaymentLinks::PaymentLinksClient.new(self, nil)
51
- end
62
+ # Resource /v2/{merchantId}/payments/{paymentId}/refunds
63
+ #
64
+ # @return [OnlinePayments::SDK::Merchant::Refunds::RefundsClient]
65
+ def refunds
66
+ OnlinePayments::SDK::Merchant::Refunds::RefundsClient.new(self, nil)
67
+ end
52
68
 
53
- # Resource /v2/!{merchantId}/payments
54
- # @return [OnlinePayments::SDK::Merchant::Payments::PaymentsClient]
55
- def payments
56
- OnlinePayments::SDK::Merchant::Payments::PaymentsClient.new(self, nil)
57
- end
69
+ # Resource /v2/{merchantId}/payments/{paymentId}/complete
70
+ #
71
+ # @return [OnlinePayments::SDK::Merchant::Complete::CompleteClient]
72
+ def complete
73
+ OnlinePayments::SDK::Merchant::Complete::CompleteClient.new(self, nil)
74
+ end
58
75
 
59
- # Resource /v2/!{merchantId}/payouts
60
- # @return [OnlinePayments::SDK::Merchant::Payouts::PayoutsClient]
61
- def payouts
62
- OnlinePayments::SDK::Merchant::Payouts::PayoutsClient.new(self, nil)
63
- end
76
+ # Resource /v2/{merchantId}/productgroups
77
+ #
78
+ # @return [OnlinePayments::SDK::Merchant::ProductGroups::ProductGroupsClient]
79
+ def product_groups
80
+ OnlinePayments::SDK::Merchant::ProductGroups::ProductGroupsClient.new(self, nil)
81
+ end
64
82
 
65
- # Resource /v2/!{merchantId}/productgroups
66
- # @return [OnlinePayments::SDK::Merchant::ProductGroups::ProductGroupsClient]
67
- def product_groups
68
- OnlinePayments::SDK::Merchant::ProductGroups::ProductGroupsClient.new(self, nil)
69
- end
83
+ # Resource /v2/{merchantId}/products
84
+ #
85
+ # @return [OnlinePayments::SDK::Merchant::Products::ProductsClient]
86
+ def products
87
+ OnlinePayments::SDK::Merchant::Products::ProductsClient.new(self, nil)
88
+ end
70
89
 
71
- # Resource /v2/!{merchantId}/products
72
- # @return [OnlinePayments::SDK::Merchant::Products::ProductsClient]
73
- def products
74
- OnlinePayments::SDK::Merchant::Products::ProductsClient.new(self, nil)
75
- end
90
+ # Resource /v2/{merchantId}/services/testconnection
91
+ #
92
+ # @return [OnlinePayments::SDK::Merchant::Services::ServicesClient]
93
+ def services
94
+ OnlinePayments::SDK::Merchant::Services::ServicesClient.new(self, nil)
95
+ end
76
96
 
77
- # Resource /v2/!{merchantId}/services
78
- # @return [OnlinePayments::SDK::Merchant::Services::ServicesClient]
79
- def services
80
- OnlinePayments::SDK::Merchant::Services::ServicesClient.new(self, nil)
81
- end
97
+ # Resource /v2/{merchantId}/webhooks/validateCredentials
98
+ #
99
+ # @return [OnlinePayments::SDK::Merchant::Webhooks::WebhooksClient]
100
+ def webhooks
101
+ OnlinePayments::SDK::Merchant::Webhooks::WebhooksClient.new(self, nil)
102
+ end
82
103
 
83
- # Resource /v2/!{merchantId}/sessions
84
- # @return [OnlinePayments::SDK::Merchant::Sessions::SessionsClient]
85
- def sessions
86
- OnlinePayments::SDK::Merchant::Sessions::SessionsClient.new(self, nil)
87
- end
104
+ # Resource /v2/{merchantId}/sessions
105
+ #
106
+ # @return [OnlinePayments::SDK::Merchant::Sessions::SessionsClient]
107
+ def sessions
108
+ OnlinePayments::SDK::Merchant::Sessions::SessionsClient.new(self, nil)
109
+ end
110
+
111
+ # Resource /v2/{merchantId}/tokens/{tokenId}
112
+ #
113
+ # @return [OnlinePayments::SDK::Merchant::Tokens::TokensClient]
114
+ def tokens
115
+ OnlinePayments::SDK::Merchant::Tokens::TokensClient.new(self, nil)
116
+ end
117
+
118
+ # Resource /v2/{merchantId}/payouts/{payoutId}
119
+ #
120
+ # @return [OnlinePayments::SDK::Merchant::Payouts::PayoutsClient]
121
+ def payouts
122
+ OnlinePayments::SDK::Merchant::Payouts::PayoutsClient.new(self, nil)
123
+ end
124
+
125
+ # Resource /v2/{merchantId}/mandates
126
+ #
127
+ # @return [OnlinePayments::SDK::Merchant::Mandates::MandatesClient]
128
+ def mandates
129
+ OnlinePayments::SDK::Merchant::Mandates::MandatesClient.new(self, nil)
130
+ end
131
+
132
+ # Resource /v2/{merchantId}/services/privacypolicy
133
+ #
134
+ # @return [OnlinePayments::SDK::Merchant::PrivacyPolicy::PrivacyPolicyClient]
135
+ def privacy_policy
136
+ OnlinePayments::SDK::Merchant::PrivacyPolicy::PrivacyPolicyClient.new(self, nil)
137
+ end
88
138
 
89
- # Resource /v2/!{merchantId}/tokens
90
- # @return [OnlinePayments::SDK::Merchant::Tokens::TokensClient]
91
- def tokens
92
- OnlinePayments::SDK::Merchant::Tokens::TokensClient.new(self, nil)
139
+ # Resource /v2/{merchantId}/paymentlinks
140
+ #
141
+ # @return [OnlinePayments::SDK::Merchant::PaymentLinks::PaymentLinksClient]
142
+ def payment_links
143
+ OnlinePayments::SDK::Merchant::PaymentLinks::PaymentLinksClient.new(self, nil)
144
+ end
93
145
  end
94
146
  end
95
147
  end