onlinepayments-sdk-ruby 3.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 (269) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +2 -0
  3. data/LICENSE.txt +22 -0
  4. data/README.md +140 -0
  5. data/Rakefile +34 -0
  6. data/lib/onlinepayments/sdk/api_exception.rb +42 -0
  7. data/lib/onlinepayments/sdk/api_resource.rb +115 -0
  8. data/lib/onlinepayments/sdk/authenticator.rb +16 -0
  9. data/lib/onlinepayments/sdk/authorization_exception.rb +13 -0
  10. data/lib/onlinepayments/sdk/call_context.rb +26 -0
  11. data/lib/onlinepayments/sdk/client.rb +82 -0
  12. data/lib/onlinepayments/sdk/communication_exception.rb +16 -0
  13. data/lib/onlinepayments/sdk/communicator.rb +300 -0
  14. data/lib/onlinepayments/sdk/communicator_configuration.rb +59 -0
  15. data/lib/onlinepayments/sdk/connection.rb +41 -0
  16. data/lib/onlinepayments/sdk/data_object.rb +31 -0
  17. data/lib/onlinepayments/sdk/declined_payment_exception.rb +30 -0
  18. data/lib/onlinepayments/sdk/declined_payout_exception.rb +32 -0
  19. data/lib/onlinepayments/sdk/declined_refund_exception.rb +32 -0
  20. data/lib/onlinepayments/sdk/declined_transaction_exception.rb +16 -0
  21. data/lib/onlinepayments/sdk/defaultimpl/authorization_type.rb +24 -0
  22. data/lib/onlinepayments/sdk/defaultimpl/default_authenticator.rb +108 -0
  23. data/lib/onlinepayments/sdk/defaultimpl/default_connection.rb +295 -0
  24. data/lib/onlinepayments/sdk/defaultimpl/default_marshaller.rb +32 -0
  25. data/lib/onlinepayments/sdk/defaultimpl.rb +6 -0
  26. data/lib/onlinepayments/sdk/domain/account_on_file.rb +49 -0
  27. data/lib/onlinepayments/sdk/domain/account_on_file_attribute.rb +38 -0
  28. data/lib/onlinepayments/sdk/domain/account_on_file_display_hints.rb +37 -0
  29. data/lib/onlinepayments/sdk/domain/additional_order_input.rb +54 -0
  30. data/lib/onlinepayments/sdk/domain/address.rb +50 -0
  31. data/lib/onlinepayments/sdk/domain/address_personal.rb +58 -0
  32. data/lib/onlinepayments/sdk/domain/airline_data.rb +128 -0
  33. data/lib/onlinepayments/sdk/domain/airline_flight_leg.rb +102 -0
  34. data/lib/onlinepayments/sdk/domain/airline_passenger.rb +38 -0
  35. data/lib/onlinepayments/sdk/domain/amount_breakdown.rb +30 -0
  36. data/lib/onlinepayments/sdk/domain/amount_of_money.rb +30 -0
  37. data/lib/onlinepayments/sdk/domain/api_error.rb +46 -0
  38. data/lib/onlinepayments/sdk/domain/bank_account_iban.rb +26 -0
  39. data/lib/onlinepayments/sdk/domain/browser_data.rb +42 -0
  40. data/lib/onlinepayments/sdk/domain/cancel_payment_response.rb +30 -0
  41. data/lib/onlinepayments/sdk/domain/capture.rb +46 -0
  42. data/lib/onlinepayments/sdk/domain/capture_output.rb +82 -0
  43. data/lib/onlinepayments/sdk/domain/capture_payment_request.rb +38 -0
  44. data/lib/onlinepayments/sdk/domain/capture_response.rb +46 -0
  45. data/lib/onlinepayments/sdk/domain/capture_status_output.rb +26 -0
  46. data/lib/onlinepayments/sdk/domain/captures_response.rb +33 -0
  47. data/lib/onlinepayments/sdk/domain/card.rb +38 -0
  48. data/lib/onlinepayments/sdk/domain/card_essentials.rb +34 -0
  49. data/lib/onlinepayments/sdk/domain/card_fraud_results.rb +34 -0
  50. data/lib/onlinepayments/sdk/domain/card_payment_method_specific_input.rb +98 -0
  51. data/lib/onlinepayments/sdk/domain/card_payment_method_specific_input_base.rb +86 -0
  52. data/lib/onlinepayments/sdk/domain/card_payment_method_specific_input_for_hosted_checkout.rb +26 -0
  53. data/lib/onlinepayments/sdk/domain/card_payment_method_specific_output.rb +78 -0
  54. data/lib/onlinepayments/sdk/domain/card_payout_method_specific_input.rb +38 -0
  55. data/lib/onlinepayments/sdk/domain/card_recurrence_details.rb +26 -0
  56. data/lib/onlinepayments/sdk/domain/card_without_cvv.rb +34 -0
  57. data/lib/onlinepayments/sdk/domain/company_information.rb +26 -0
  58. data/lib/onlinepayments/sdk/domain/complete_payment_card_payment_method_specific_input.rb +30 -0
  59. data/lib/onlinepayments/sdk/domain/complete_payment_request.rb +38 -0
  60. data/lib/onlinepayments/sdk/domain/complete_payment_response.rb +46 -0
  61. data/lib/onlinepayments/sdk/domain/contact_details.rb +42 -0
  62. data/lib/onlinepayments/sdk/domain/create_hosted_checkout_request.rb +78 -0
  63. data/lib/onlinepayments/sdk/domain/create_hosted_checkout_response.rb +48 -0
  64. data/lib/onlinepayments/sdk/domain/create_hosted_tokenization_request.rb +38 -0
  65. data/lib/onlinepayments/sdk/domain/create_hosted_tokenization_response.rb +50 -0
  66. data/lib/onlinepayments/sdk/domain/create_mandate_request.rb +58 -0
  67. data/lib/onlinepayments/sdk/domain/create_mandate_response.rb +38 -0
  68. data/lib/onlinepayments/sdk/domain/create_mandate_with_return_url.rb +58 -0
  69. data/lib/onlinepayments/sdk/domain/create_payment_request.rb +74 -0
  70. data/lib/onlinepayments/sdk/domain/create_payment_response.rb +46 -0
  71. data/lib/onlinepayments/sdk/domain/create_payout_request.rb +46 -0
  72. data/lib/onlinepayments/sdk/domain/create_token_request.rb +34 -0
  73. data/lib/onlinepayments/sdk/domain/created_payment_output.rb +34 -0
  74. data/lib/onlinepayments/sdk/domain/created_token_response.rb +50 -0
  75. data/lib/onlinepayments/sdk/domain/customer.rb +86 -0
  76. data/lib/onlinepayments/sdk/domain/customer_account.rb +70 -0
  77. data/lib/onlinepayments/sdk/domain/customer_account_authentication.rb +30 -0
  78. data/lib/onlinepayments/sdk/domain/customer_device.rb +50 -0
  79. data/lib/onlinepayments/sdk/domain/customer_payment_activity.rb +34 -0
  80. data/lib/onlinepayments/sdk/domain/customer_token.rb +46 -0
  81. data/lib/onlinepayments/sdk/domain/decrypted_payment_data.rb +42 -0
  82. data/lib/onlinepayments/sdk/domain/directory_entry.rb +34 -0
  83. data/lib/onlinepayments/sdk/domain/empty_validator.rb +12 -0
  84. data/lib/onlinepayments/sdk/domain/error_response.rb +37 -0
  85. data/lib/onlinepayments/sdk/domain/external_cardholder_authentication_data.rb +58 -0
  86. data/lib/onlinepayments/sdk/domain/external_token_linked.rb +34 -0
  87. data/lib/onlinepayments/sdk/domain/fixed_list_validator.rb +32 -0
  88. data/lib/onlinepayments/sdk/domain/fraud_fields.rb +30 -0
  89. data/lib/onlinepayments/sdk/domain/fraud_results.rb +26 -0
  90. data/lib/onlinepayments/sdk/domain/g_pay_three_d_secure.rb +46 -0
  91. data/lib/onlinepayments/sdk/domain/get_hosted_checkout_response.rb +34 -0
  92. data/lib/onlinepayments/sdk/domain/get_hosted_tokenization_response.rb +34 -0
  93. data/lib/onlinepayments/sdk/domain/get_iin_details_request.rb +34 -0
  94. data/lib/onlinepayments/sdk/domain/get_iin_details_response.rb +45 -0
  95. data/lib/onlinepayments/sdk/domain/get_mandate_response.rb +30 -0
  96. data/lib/onlinepayments/sdk/domain/get_payment_product_groups_response.rb +33 -0
  97. data/lib/onlinepayments/sdk/domain/get_payment_products_response.rb +33 -0
  98. data/lib/onlinepayments/sdk/domain/gift_card_purchase.rb +34 -0
  99. data/lib/onlinepayments/sdk/domain/hosted_checkout_specific_input.rb +66 -0
  100. data/lib/onlinepayments/sdk/domain/hosted_checkout_specific_output.rb +30 -0
  101. data/lib/onlinepayments/sdk/domain/iin_detail.rb +30 -0
  102. data/lib/onlinepayments/sdk/domain/label_template_element.rb +30 -0
  103. data/lib/onlinepayments/sdk/domain/length_validator.rb +30 -0
  104. data/lib/onlinepayments/sdk/domain/line_item.rb +46 -0
  105. data/lib/onlinepayments/sdk/domain/line_item_invoice_data.rb +26 -0
  106. data/lib/onlinepayments/sdk/domain/loan_recipient.rb +42 -0
  107. data/lib/onlinepayments/sdk/domain/lodging_data.rb +26 -0
  108. data/lib/onlinepayments/sdk/domain/mandate_address.rb +42 -0
  109. data/lib/onlinepayments/sdk/domain/mandate_contact_details.rb +26 -0
  110. data/lib/onlinepayments/sdk/domain/mandate_customer.rb +58 -0
  111. data/lib/onlinepayments/sdk/domain/mandate_merchant_action.rb +34 -0
  112. data/lib/onlinepayments/sdk/domain/mandate_personal_information.rb +34 -0
  113. data/lib/onlinepayments/sdk/domain/mandate_personal_name.rb +30 -0
  114. data/lib/onlinepayments/sdk/domain/mandate_redirect_data.rb +30 -0
  115. data/lib/onlinepayments/sdk/domain/mandate_response.rb +50 -0
  116. data/lib/onlinepayments/sdk/domain/merchant_action.rb +34 -0
  117. data/lib/onlinepayments/sdk/domain/mobile_payment_data.rb +30 -0
  118. data/lib/onlinepayments/sdk/domain/mobile_payment_method_hosted_checkout_specific_input.rb +30 -0
  119. data/lib/onlinepayments/sdk/domain/mobile_payment_method_specific_input.rb +62 -0
  120. data/lib/onlinepayments/sdk/domain/mobile_payment_method_specific_output.rb +58 -0
  121. data/lib/onlinepayments/sdk/domain/mobile_payment_product320_specific_input.rb +30 -0
  122. data/lib/onlinepayments/sdk/domain/operation_output.rb +58 -0
  123. data/lib/onlinepayments/sdk/domain/order.rb +70 -0
  124. data/lib/onlinepayments/sdk/domain/order_line_details.rb +54 -0
  125. data/lib/onlinepayments/sdk/domain/order_references.rb +34 -0
  126. data/lib/onlinepayments/sdk/domain/order_status_output.rb +49 -0
  127. data/lib/onlinepayments/sdk/domain/order_type_information.rb +30 -0
  128. data/lib/onlinepayments/sdk/domain/payment_account_on_file.rb +30 -0
  129. data/lib/onlinepayments/sdk/domain/payment_context.rb +38 -0
  130. data/lib/onlinepayments/sdk/domain/payment_creation_output.rb +38 -0
  131. data/lib/onlinepayments/sdk/domain/payment_details_response.rb +65 -0
  132. data/lib/onlinepayments/sdk/domain/payment_error_response.rb +45 -0
  133. data/lib/onlinepayments/sdk/domain/payment_output.rb +82 -0
  134. data/lib/onlinepayments/sdk/domain/payment_product.rb +102 -0
  135. data/lib/onlinepayments/sdk/domain/payment_product130_specific_input.rb +30 -0
  136. data/lib/onlinepayments/sdk/domain/payment_product130_specific_three_d_secure.rb +38 -0
  137. data/lib/onlinepayments/sdk/domain/payment_product302_specific_data.rb +32 -0
  138. data/lib/onlinepayments/sdk/domain/payment_product320_specific_data.rb +36 -0
  139. data/lib/onlinepayments/sdk/domain/payment_product5100_specific_input.rb +26 -0
  140. data/lib/onlinepayments/sdk/domain/payment_product5402_specific_output.rb +26 -0
  141. data/lib/onlinepayments/sdk/domain/payment_product5500_specific_output.rb +34 -0
  142. data/lib/onlinepayments/sdk/domain/payment_product771_specific_output.rb +26 -0
  143. data/lib/onlinepayments/sdk/domain/payment_product840_customer_account.rb +54 -0
  144. data/lib/onlinepayments/sdk/domain/payment_product840_specific_output.rb +53 -0
  145. data/lib/onlinepayments/sdk/domain/payment_product_display_hints.rb +34 -0
  146. data/lib/onlinepayments/sdk/domain/payment_product_field.rb +46 -0
  147. data/lib/onlinepayments/sdk/domain/payment_product_field_data_restrictions.rb +34 -0
  148. data/lib/onlinepayments/sdk/domain/payment_product_field_display_element.rb +38 -0
  149. data/lib/onlinepayments/sdk/domain/payment_product_field_display_hints.rb +70 -0
  150. data/lib/onlinepayments/sdk/domain/payment_product_field_form_element.rb +37 -0
  151. data/lib/onlinepayments/sdk/domain/payment_product_field_tooltip.rb +30 -0
  152. data/lib/onlinepayments/sdk/domain/payment_product_field_validators.rb +90 -0
  153. data/lib/onlinepayments/sdk/domain/payment_product_filter.rb +42 -0
  154. data/lib/onlinepayments/sdk/domain/payment_product_filters_hosted_checkout.rb +37 -0
  155. data/lib/onlinepayments/sdk/domain/payment_product_group.rb +52 -0
  156. data/lib/onlinepayments/sdk/domain/payment_product_networks_response.rb +32 -0
  157. data/lib/onlinepayments/sdk/domain/payment_references.rb +30 -0
  158. data/lib/onlinepayments/sdk/domain/payment_response.rb +54 -0
  159. data/lib/onlinepayments/sdk/domain/payment_status_output.rb +57 -0
  160. data/lib/onlinepayments/sdk/domain/payout_error_response.rb +45 -0
  161. data/lib/onlinepayments/sdk/domain/payout_output.rb +30 -0
  162. data/lib/onlinepayments/sdk/domain/payout_response.rb +46 -0
  163. data/lib/onlinepayments/sdk/domain/payout_result.rb +46 -0
  164. data/lib/onlinepayments/sdk/domain/payout_status_output.rb +34 -0
  165. data/lib/onlinepayments/sdk/domain/personal_information.rb +38 -0
  166. data/lib/onlinepayments/sdk/domain/personal_information_token.rb +30 -0
  167. data/lib/onlinepayments/sdk/domain/personal_name.rb +34 -0
  168. data/lib/onlinepayments/sdk/domain/personal_name_token.rb +30 -0
  169. data/lib/onlinepayments/sdk/domain/product_directory.rb +33 -0
  170. data/lib/onlinepayments/sdk/domain/protection_eligibility.rb +30 -0
  171. data/lib/onlinepayments/sdk/domain/range_validator.rb +30 -0
  172. data/lib/onlinepayments/sdk/domain/redirect_data.rb +30 -0
  173. data/lib/onlinepayments/sdk/domain/redirect_payment_method_specific_input.rb +66 -0
  174. data/lib/onlinepayments/sdk/domain/redirect_payment_method_specific_output.rb +66 -0
  175. data/lib/onlinepayments/sdk/domain/redirect_payment_product809_specific_input.rb +26 -0
  176. data/lib/onlinepayments/sdk/domain/redirect_payment_product840_specific_input.rb +26 -0
  177. data/lib/onlinepayments/sdk/domain/redirection_data.rb +26 -0
  178. data/lib/onlinepayments/sdk/domain/refund_card_method_specific_output.rb +30 -0
  179. data/lib/onlinepayments/sdk/domain/refund_e_wallet_method_specific_output.rb +38 -0
  180. data/lib/onlinepayments/sdk/domain/refund_error_response.rb +45 -0
  181. data/lib/onlinepayments/sdk/domain/refund_mobile_method_specific_output.rb +34 -0
  182. data/lib/onlinepayments/sdk/domain/refund_output.rb +82 -0
  183. data/lib/onlinepayments/sdk/domain/refund_payment_product840_customer_account.rb +34 -0
  184. data/lib/onlinepayments/sdk/domain/refund_payment_product840_specific_output.rb +30 -0
  185. data/lib/onlinepayments/sdk/domain/refund_redirect_method_specific_output.rb +30 -0
  186. data/lib/onlinepayments/sdk/domain/refund_request.rb +38 -0
  187. data/lib/onlinepayments/sdk/domain/refund_response.rb +46 -0
  188. data/lib/onlinepayments/sdk/domain/refunds_response.rb +33 -0
  189. data/lib/onlinepayments/sdk/domain/regular_expression_validator.rb +26 -0
  190. data/lib/onlinepayments/sdk/domain/sepa_direct_debit_payment_method_specific_input.rb +34 -0
  191. data/lib/onlinepayments/sdk/domain/sepa_direct_debit_payment_method_specific_input_base.rb +34 -0
  192. data/lib/onlinepayments/sdk/domain/sepa_direct_debit_payment_method_specific_output.rb +42 -0
  193. data/lib/onlinepayments/sdk/domain/sepa_direct_debit_payment_product771_specific_input.rb +34 -0
  194. data/lib/onlinepayments/sdk/domain/sepa_direct_debit_payment_product771_specific_input_base.rb +34 -0
  195. data/lib/onlinepayments/sdk/domain/session_request.rb +32 -0
  196. data/lib/onlinepayments/sdk/domain/session_response.rb +48 -0
  197. data/lib/onlinepayments/sdk/domain/shipping.rb +58 -0
  198. data/lib/onlinepayments/sdk/domain/shopping_cart.rb +64 -0
  199. data/lib/onlinepayments/sdk/domain/shopping_cart_extension.rb +52 -0
  200. data/lib/onlinepayments/sdk/domain/test_connection.rb +26 -0
  201. data/lib/onlinepayments/sdk/domain/three_d_secure.rb +78 -0
  202. data/lib/onlinepayments/sdk/domain/three_d_secure_base.rb +58 -0
  203. data/lib/onlinepayments/sdk/domain/three_d_secure_data.rb +34 -0
  204. data/lib/onlinepayments/sdk/domain/three_d_secure_results.rb +30 -0
  205. data/lib/onlinepayments/sdk/domain/token_card.rb +34 -0
  206. data/lib/onlinepayments/sdk/domain/token_card_data.rb +30 -0
  207. data/lib/onlinepayments/sdk/domain/token_card_specific_input.rb +30 -0
  208. data/lib/onlinepayments/sdk/domain/token_data.rb +30 -0
  209. data/lib/onlinepayments/sdk/domain/token_e_wallet.rb +34 -0
  210. data/lib/onlinepayments/sdk/domain/token_response.rb +58 -0
  211. data/lib/onlinepayments/sdk/domain/value_mapping_element.rb +37 -0
  212. data/lib/onlinepayments/sdk/endpoint_configuration.rb +127 -0
  213. data/lib/onlinepayments/sdk/exceptions.rb +8 -0
  214. data/lib/onlinepayments/sdk/factory.rb +136 -0
  215. data/lib/onlinepayments/sdk/idempotence_exception.rb +24 -0
  216. data/lib/onlinepayments/sdk/logging/communicator_logger.rb +22 -0
  217. data/lib/onlinepayments/sdk/logging/log_message_builder.rb +56 -0
  218. data/lib/onlinepayments/sdk/logging/logging_capable.rb +17 -0
  219. data/lib/onlinepayments/sdk/logging/logging_util.rb +286 -0
  220. data/lib/onlinepayments/sdk/logging/request_log_message_builder.rb +39 -0
  221. data/lib/onlinepayments/sdk/logging/response_log_message_builder.rb +34 -0
  222. data/lib/onlinepayments/sdk/logging/ruby_communicator_logger.rb +57 -0
  223. data/lib/onlinepayments/sdk/logging/stdout_communicator_logger.rb +34 -0
  224. data/lib/onlinepayments/sdk/logging.rb +10 -0
  225. data/lib/onlinepayments/sdk/marshaller.rb +24 -0
  226. data/lib/onlinepayments/sdk/marshaller_syntax_exception.rb +6 -0
  227. data/lib/onlinepayments/sdk/merchant/hostedcheckout/hosted_checkout_client.rb +86 -0
  228. data/lib/onlinepayments/sdk/merchant/hostedtokenization/hosted_tokenization_client.rb +86 -0
  229. data/lib/onlinepayments/sdk/merchant/mandates/mandates_client.rb +182 -0
  230. data/lib/onlinepayments/sdk/merchant/merchant_client.rb +89 -0
  231. data/lib/onlinepayments/sdk/merchant/payments/payments_client.rb +322 -0
  232. data/lib/onlinepayments/sdk/merchant/payouts/payouts_client.rb +86 -0
  233. data/lib/onlinepayments/sdk/merchant/productgroups/get_product_group_params.rb +57 -0
  234. data/lib/onlinepayments/sdk/merchant/productgroups/get_product_groups_params.rb +57 -0
  235. data/lib/onlinepayments/sdk/merchant/productgroups/product_groups_client.rb +87 -0
  236. data/lib/onlinepayments/sdk/merchant/products/get_payment_product_networks_params.rb +38 -0
  237. data/lib/onlinepayments/sdk/merchant/products/get_payment_product_params.rb +57 -0
  238. data/lib/onlinepayments/sdk/merchant/products/get_payment_products_params.rb +57 -0
  239. data/lib/onlinepayments/sdk/merchant/products/get_product_directory_params.rb +30 -0
  240. data/lib/onlinepayments/sdk/merchant/products/products_client.rb +155 -0
  241. data/lib/onlinepayments/sdk/merchant/services/services_client.rb +82 -0
  242. data/lib/onlinepayments/sdk/merchant/sessions/sessions_client.rb +54 -0
  243. data/lib/onlinepayments/sdk/merchant/tokens/tokens_client.rb +116 -0
  244. data/lib/onlinepayments/sdk/meta_data_provider.rb +150 -0
  245. data/lib/onlinepayments/sdk/modules.rb +62 -0
  246. data/lib/onlinepayments/sdk/not_found_exception.rb +16 -0
  247. data/lib/onlinepayments/sdk/param_request.rb +11 -0
  248. data/lib/onlinepayments/sdk/payment_platform_exception.rb +15 -0
  249. data/lib/onlinepayments/sdk/pooled_connection.rb +21 -0
  250. data/lib/onlinepayments/sdk/proxy_configuration.rb +74 -0
  251. data/lib/onlinepayments/sdk/reference_exception.rb +14 -0
  252. data/lib/onlinepayments/sdk/request_header.rb +50 -0
  253. data/lib/onlinepayments/sdk/request_param.rb +23 -0
  254. data/lib/onlinepayments/sdk/response_exception.rb +47 -0
  255. data/lib/onlinepayments/sdk/response_header.rb +42 -0
  256. data/lib/onlinepayments/sdk/validation_exception.rb +14 -0
  257. data/lib/onlinepayments/sdk/webhooks/api_version_mismatch_exception.rb +20 -0
  258. data/lib/onlinepayments/sdk/webhooks/in_memory_secret_key_store.rb +56 -0
  259. data/lib/onlinepayments/sdk/webhooks/secret_key_not_available_exception.rb +17 -0
  260. data/lib/onlinepayments/sdk/webhooks/secret_key_store.rb +16 -0
  261. data/lib/onlinepayments/sdk/webhooks/signature_validation_exception.rb +19 -0
  262. data/lib/onlinepayments/sdk/webhooks/webhooks.rb +22 -0
  263. data/lib/onlinepayments/sdk/webhooks/webhooks_event.rb +58 -0
  264. data/lib/onlinepayments/sdk/webhooks/webhooks_helper.rb +100 -0
  265. data/lib/onlinepayments/sdk/webhooks/webhooks_helper_builder.rb +25 -0
  266. data/lib/onlinepayments/sdk/webhooks.rb +11 -0
  267. data/lib/onlinepayments/sdk.rb +26 -0
  268. data/onlinepayments-sdk-ruby.gemspec +28 -0
  269. metadata +416 -0
@@ -0,0 +1,38 @@
1
+ #
2
+ # This class was auto-generated.
3
+ #
4
+ require 'onlinepayments/sdk/data_object'
5
+
6
+ module OnlinePayments::SDK
7
+ module Domain
8
+
9
+ # @attr [String] id
10
+ # @attr [String] label
11
+ # @attr [String] type
12
+ # @attr [String] value
13
+ class PaymentProductFieldDisplayElement < OnlinePayments::SDK::DataObject
14
+ attr_accessor :id
15
+ attr_accessor :label
16
+ attr_accessor :type
17
+ attr_accessor :value
18
+
19
+ # @return (Hash)
20
+ def to_h
21
+ hash = super
22
+ hash['id'] = @id unless @id.nil?
23
+ hash['label'] = @label unless @label.nil?
24
+ hash['type'] = @type unless @type.nil?
25
+ hash['value'] = @value unless @value.nil?
26
+ hash
27
+ end
28
+
29
+ def from_hash(hash)
30
+ super
31
+ @id = hash['id'] if hash.key? 'id'
32
+ @label = hash['label'] if hash.key? 'label'
33
+ @type = hash['type'] if hash.key? 'type'
34
+ @value = hash['value'] if hash.key? 'value'
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,70 @@
1
+ #
2
+ # This class was auto-generated.
3
+ #
4
+ require 'onlinepayments/sdk/data_object'
5
+ require 'onlinepayments/sdk/domain/payment_product_field_form_element'
6
+ require 'onlinepayments/sdk/domain/payment_product_field_tooltip'
7
+
8
+ module OnlinePayments::SDK
9
+ module Domain
10
+
11
+ # @attr [true/false] always_show
12
+ # @attr [Integer] display_order
13
+ # @attr [OnlinePayments::SDK::Domain::PaymentProductFieldFormElement] form_element
14
+ # @attr [String] label
15
+ # @attr [String] link
16
+ # @attr [String] mask
17
+ # @attr [true/false] obfuscate
18
+ # @attr [String] placeholder_label
19
+ # @attr [String] preferred_input_type
20
+ # @attr [OnlinePayments::SDK::Domain::PaymentProductFieldTooltip] tooltip
21
+ class PaymentProductFieldDisplayHints < OnlinePayments::SDK::DataObject
22
+ attr_accessor :always_show
23
+ attr_accessor :display_order
24
+ attr_accessor :form_element
25
+ attr_accessor :label
26
+ attr_accessor :link
27
+ attr_accessor :mask
28
+ attr_accessor :obfuscate
29
+ attr_accessor :placeholder_label
30
+ attr_accessor :preferred_input_type
31
+ attr_accessor :tooltip
32
+
33
+ # @return (Hash)
34
+ def to_h
35
+ hash = super
36
+ hash['alwaysShow'] = @always_show unless @always_show.nil?
37
+ hash['displayOrder'] = @display_order unless @display_order.nil?
38
+ hash['formElement'] = @form_element.to_h if @form_element
39
+ hash['label'] = @label unless @label.nil?
40
+ hash['link'] = @link unless @link.nil?
41
+ hash['mask'] = @mask unless @mask.nil?
42
+ hash['obfuscate'] = @obfuscate unless @obfuscate.nil?
43
+ hash['placeholderLabel'] = @placeholder_label unless @placeholder_label.nil?
44
+ hash['preferredInputType'] = @preferred_input_type unless @preferred_input_type.nil?
45
+ hash['tooltip'] = @tooltip.to_h if @tooltip
46
+ hash
47
+ end
48
+
49
+ def from_hash(hash)
50
+ super
51
+ @always_show = hash['alwaysShow'] if hash.key? 'alwaysShow'
52
+ @display_order = hash['displayOrder'] if hash.key? 'displayOrder'
53
+ if hash.key? 'formElement'
54
+ raise TypeError, "value '%s' is not a Hash" % [hash['formElement']] unless hash['formElement'].is_a? Hash
55
+ @form_element = OnlinePayments::SDK::Domain::PaymentProductFieldFormElement.new_from_hash(hash['formElement'])
56
+ end
57
+ @label = hash['label'] if hash.key? 'label'
58
+ @link = hash['link'] if hash.key? 'link'
59
+ @mask = hash['mask'] if hash.key? 'mask'
60
+ @obfuscate = hash['obfuscate'] if hash.key? 'obfuscate'
61
+ @placeholder_label = hash['placeholderLabel'] if hash.key? 'placeholderLabel'
62
+ @preferred_input_type = hash['preferredInputType'] if hash.key? 'preferredInputType'
63
+ if hash.key? 'tooltip'
64
+ raise TypeError, "value '%s' is not a Hash" % [hash['tooltip']] unless hash['tooltip'].is_a? Hash
65
+ @tooltip = OnlinePayments::SDK::Domain::PaymentProductFieldTooltip.new_from_hash(hash['tooltip'])
66
+ end
67
+ end
68
+ end
69
+ end
70
+ end
@@ -0,0 +1,37 @@
1
+ #
2
+ # This class was auto-generated.
3
+ #
4
+ require 'onlinepayments/sdk/data_object'
5
+ require 'onlinepayments/sdk/domain/value_mapping_element'
6
+
7
+ module OnlinePayments::SDK
8
+ module Domain
9
+
10
+ # @attr [String] type
11
+ # @attr [Array<OnlinePayments::SDK::Domain::ValueMappingElement>] value_mapping
12
+ class PaymentProductFieldFormElement < OnlinePayments::SDK::DataObject
13
+ attr_accessor :type
14
+ attr_accessor :value_mapping
15
+
16
+ # @return (Hash)
17
+ def to_h
18
+ hash = super
19
+ hash['type'] = @type unless @type.nil?
20
+ hash['valueMapping'] = @value_mapping.collect(&:to_h) if @value_mapping
21
+ hash
22
+ end
23
+
24
+ def from_hash(hash)
25
+ super
26
+ @type = hash['type'] if hash.key? 'type'
27
+ if hash.key? 'valueMapping'
28
+ raise TypeError, "value '%s' is not an Array" % [hash['valueMapping']] unless hash['valueMapping'].is_a? Array
29
+ @value_mapping = []
30
+ hash['valueMapping'].each do |e|
31
+ @value_mapping << OnlinePayments::SDK::Domain::ValueMappingElement.new_from_hash(e)
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,30 @@
1
+ #
2
+ # This class was auto-generated.
3
+ #
4
+ require 'onlinepayments/sdk/data_object'
5
+
6
+ module OnlinePayments::SDK
7
+ module Domain
8
+
9
+ # @attr [String] image
10
+ # @attr [String] label
11
+ class PaymentProductFieldTooltip < OnlinePayments::SDK::DataObject
12
+ attr_accessor :image
13
+ attr_accessor :label
14
+
15
+ # @return (Hash)
16
+ def to_h
17
+ hash = super
18
+ hash['image'] = @image unless @image.nil?
19
+ hash['label'] = @label unless @label.nil?
20
+ hash
21
+ end
22
+
23
+ def from_hash(hash)
24
+ super
25
+ @image = hash['image'] if hash.key? 'image'
26
+ @label = hash['label'] if hash.key? 'label'
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,90 @@
1
+ #
2
+ # This class was auto-generated.
3
+ #
4
+ require 'onlinepayments/sdk/data_object'
5
+ require 'onlinepayments/sdk/domain/empty_validator'
6
+ require 'onlinepayments/sdk/domain/fixed_list_validator'
7
+ require 'onlinepayments/sdk/domain/length_validator'
8
+ require 'onlinepayments/sdk/domain/range_validator'
9
+ require 'onlinepayments/sdk/domain/regular_expression_validator'
10
+
11
+ module OnlinePayments::SDK
12
+ module Domain
13
+
14
+ # @attr [OnlinePayments::SDK::Domain::EmptyValidator] email_address
15
+ # @attr [OnlinePayments::SDK::Domain::EmptyValidator] expiration_date
16
+ # @attr [OnlinePayments::SDK::Domain::FixedListValidator] fixed_list
17
+ # @attr [OnlinePayments::SDK::Domain::EmptyValidator] iban
18
+ # @attr [OnlinePayments::SDK::Domain::LengthValidator] length
19
+ # @attr [OnlinePayments::SDK::Domain::EmptyValidator] luhn
20
+ # @attr [OnlinePayments::SDK::Domain::RangeValidator] range
21
+ # @attr [OnlinePayments::SDK::Domain::RegularExpressionValidator] regular_expression
22
+ # @attr [OnlinePayments::SDK::Domain::EmptyValidator] terms_and_conditions
23
+ class PaymentProductFieldValidators < OnlinePayments::SDK::DataObject
24
+ attr_accessor :email_address
25
+ attr_accessor :expiration_date
26
+ attr_accessor :fixed_list
27
+ attr_accessor :iban
28
+ attr_accessor :length
29
+ attr_accessor :luhn
30
+ attr_accessor :range
31
+ attr_accessor :regular_expression
32
+ attr_accessor :terms_and_conditions
33
+
34
+ # @return (Hash)
35
+ def to_h
36
+ hash = super
37
+ hash['emailAddress'] = @email_address.to_h if @email_address
38
+ hash['expirationDate'] = @expiration_date.to_h if @expiration_date
39
+ hash['fixedList'] = @fixed_list.to_h if @fixed_list
40
+ hash['iban'] = @iban.to_h if @iban
41
+ hash['length'] = @length.to_h if @length
42
+ hash['luhn'] = @luhn.to_h if @luhn
43
+ hash['range'] = @range.to_h if @range
44
+ hash['regularExpression'] = @regular_expression.to_h if @regular_expression
45
+ hash['termsAndConditions'] = @terms_and_conditions.to_h if @terms_and_conditions
46
+ hash
47
+ end
48
+
49
+ def from_hash(hash)
50
+ super
51
+ if hash.key? 'emailAddress'
52
+ raise TypeError, "value '%s' is not a Hash" % [hash['emailAddress']] unless hash['emailAddress'].is_a? Hash
53
+ @email_address = OnlinePayments::SDK::Domain::EmptyValidator.new_from_hash(hash['emailAddress'])
54
+ end
55
+ if hash.key? 'expirationDate'
56
+ raise TypeError, "value '%s' is not a Hash" % [hash['expirationDate']] unless hash['expirationDate'].is_a? Hash
57
+ @expiration_date = OnlinePayments::SDK::Domain::EmptyValidator.new_from_hash(hash['expirationDate'])
58
+ end
59
+ if hash.key? 'fixedList'
60
+ raise TypeError, "value '%s' is not a Hash" % [hash['fixedList']] unless hash['fixedList'].is_a? Hash
61
+ @fixed_list = OnlinePayments::SDK::Domain::FixedListValidator.new_from_hash(hash['fixedList'])
62
+ end
63
+ if hash.key? 'iban'
64
+ raise TypeError, "value '%s' is not a Hash" % [hash['iban']] unless hash['iban'].is_a? Hash
65
+ @iban = OnlinePayments::SDK::Domain::EmptyValidator.new_from_hash(hash['iban'])
66
+ end
67
+ if hash.key? 'length'
68
+ raise TypeError, "value '%s' is not a Hash" % [hash['length']] unless hash['length'].is_a? Hash
69
+ @length = OnlinePayments::SDK::Domain::LengthValidator.new_from_hash(hash['length'])
70
+ end
71
+ if hash.key? 'luhn'
72
+ raise TypeError, "value '%s' is not a Hash" % [hash['luhn']] unless hash['luhn'].is_a? Hash
73
+ @luhn = OnlinePayments::SDK::Domain::EmptyValidator.new_from_hash(hash['luhn'])
74
+ end
75
+ if hash.key? 'range'
76
+ raise TypeError, "value '%s' is not a Hash" % [hash['range']] unless hash['range'].is_a? Hash
77
+ @range = OnlinePayments::SDK::Domain::RangeValidator.new_from_hash(hash['range'])
78
+ end
79
+ if hash.key? 'regularExpression'
80
+ raise TypeError, "value '%s' is not a Hash" % [hash['regularExpression']] unless hash['regularExpression'].is_a? Hash
81
+ @regular_expression = OnlinePayments::SDK::Domain::RegularExpressionValidator.new_from_hash(hash['regularExpression'])
82
+ end
83
+ if hash.key? 'termsAndConditions'
84
+ raise TypeError, "value '%s' is not a Hash" % [hash['termsAndConditions']] unless hash['termsAndConditions'].is_a? Hash
85
+ @terms_and_conditions = OnlinePayments::SDK::Domain::EmptyValidator.new_from_hash(hash['termsAndConditions'])
86
+ end
87
+ end
88
+ end
89
+ end
90
+ end
@@ -0,0 +1,42 @@
1
+ #
2
+ # This class was auto-generated.
3
+ #
4
+ require 'onlinepayments/sdk/data_object'
5
+
6
+ module OnlinePayments::SDK
7
+ module Domain
8
+
9
+ # @attr [Array<String>] groups
10
+ # @attr [Array<Integer>] products
11
+ class PaymentProductFilter < OnlinePayments::SDK::DataObject
12
+ attr_accessor :groups
13
+ attr_accessor :products
14
+
15
+ # @return (Hash)
16
+ def to_h
17
+ hash = super
18
+ hash['groups'] = @groups unless @groups.nil?
19
+ hash['products'] = @products unless @products.nil?
20
+ hash
21
+ end
22
+
23
+ def from_hash(hash)
24
+ super
25
+ if hash.key? 'groups'
26
+ raise TypeError, "value '%s' is not an Array" % [hash['groups']] unless hash['groups'].is_a? Array
27
+ @groups = []
28
+ hash['groups'].each do |e|
29
+ @groups << e
30
+ end
31
+ end
32
+ if hash.key? 'products'
33
+ raise TypeError, "value '%s' is not an Array" % [hash['products']] unless hash['products'].is_a? Array
34
+ @products = []
35
+ hash['products'].each do |e|
36
+ @products << e
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,37 @@
1
+ #
2
+ # This class was auto-generated.
3
+ #
4
+ require 'onlinepayments/sdk/data_object'
5
+ require 'onlinepayments/sdk/domain/payment_product_filter'
6
+
7
+ module OnlinePayments::SDK
8
+ module Domain
9
+
10
+ # @attr [OnlinePayments::SDK::Domain::PaymentProductFilter] exclude
11
+ # @attr [OnlinePayments::SDK::Domain::PaymentProductFilter] restrict_to
12
+ class PaymentProductFiltersHostedCheckout < OnlinePayments::SDK::DataObject
13
+ attr_accessor :exclude
14
+ attr_accessor :restrict_to
15
+
16
+ # @return (Hash)
17
+ def to_h
18
+ hash = super
19
+ hash['exclude'] = @exclude.to_h if @exclude
20
+ hash['restrictTo'] = @restrict_to.to_h if @restrict_to
21
+ hash
22
+ end
23
+
24
+ def from_hash(hash)
25
+ super
26
+ if hash.key? 'exclude'
27
+ raise TypeError, "value '%s' is not a Hash" % [hash['exclude']] unless hash['exclude'].is_a? Hash
28
+ @exclude = OnlinePayments::SDK::Domain::PaymentProductFilter.new_from_hash(hash['exclude'])
29
+ end
30
+ if hash.key? 'restrictTo'
31
+ raise TypeError, "value '%s' is not a Hash" % [hash['restrictTo']] unless hash['restrictTo'].is_a? Hash
32
+ @restrict_to = OnlinePayments::SDK::Domain::PaymentProductFilter.new_from_hash(hash['restrictTo'])
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,52 @@
1
+ #
2
+ # This class was auto-generated.
3
+ #
4
+ require 'onlinepayments/sdk/data_object'
5
+ require 'onlinepayments/sdk/domain/account_on_file'
6
+ require 'onlinepayments/sdk/domain/payment_product_display_hints'
7
+
8
+ module OnlinePayments::SDK
9
+ module Domain
10
+
11
+ # @attr [OnlinePayments::SDK::Domain::AccountOnFile] account_on_file
12
+ # @attr [OnlinePayments::SDK::Domain::PaymentProductDisplayHints] display_hints
13
+ # @attr [Array<OnlinePayments::SDK::Domain::PaymentProductDisplayHints>] display_hints_list
14
+ # @attr [String] id
15
+ class PaymentProductGroup < OnlinePayments::SDK::DataObject
16
+ attr_accessor :account_on_file
17
+ attr_accessor :display_hints
18
+ attr_accessor :display_hints_list
19
+ attr_accessor :id
20
+
21
+ # @return (Hash)
22
+ def to_h
23
+ hash = super
24
+ hash['accountOnFile'] = @account_on_file.to_h if @account_on_file
25
+ hash['displayHints'] = @display_hints.to_h if @display_hints
26
+ hash['displayHintsList'] = @display_hints_list.collect(&:to_h) if @display_hints_list
27
+ hash['id'] = @id unless @id.nil?
28
+ hash
29
+ end
30
+
31
+ def from_hash(hash)
32
+ super
33
+ if hash.key? 'accountOnFile'
34
+ raise TypeError, "value '%s' is not a Hash" % [hash['accountOnFile']] unless hash['accountOnFile'].is_a? Hash
35
+ @account_on_file = OnlinePayments::SDK::Domain::AccountOnFile.new_from_hash(hash['accountOnFile'])
36
+ end
37
+ if hash.key? 'displayHints'
38
+ raise TypeError, "value '%s' is not a Hash" % [hash['displayHints']] unless hash['displayHints'].is_a? Hash
39
+ @display_hints = OnlinePayments::SDK::Domain::PaymentProductDisplayHints.new_from_hash(hash['displayHints'])
40
+ end
41
+ if hash.key? 'displayHintsList'
42
+ raise TypeError, "value '%s' is not an Array" % [hash['displayHintsList']] unless hash['displayHintsList'].is_a? Array
43
+ @display_hints_list = []
44
+ hash['displayHintsList'].each do |e|
45
+ @display_hints_list << OnlinePayments::SDK::Domain::PaymentProductDisplayHints.new_from_hash(e)
46
+ end
47
+ end
48
+ @id = hash['id'] if hash.key? 'id'
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,32 @@
1
+ #
2
+ # This class was auto-generated.
3
+ #
4
+ require 'onlinepayments/sdk/data_object'
5
+
6
+ module OnlinePayments::SDK
7
+ module Domain
8
+
9
+ # @attr [Array<String>] networks
10
+ class PaymentProductNetworksResponse < OnlinePayments::SDK::DataObject
11
+ attr_accessor :networks
12
+
13
+ # @return (Hash)
14
+ def to_h
15
+ hash = super
16
+ hash['networks'] = @networks unless @networks.nil?
17
+ hash
18
+ end
19
+
20
+ def from_hash(hash)
21
+ super
22
+ if hash.key? 'networks'
23
+ raise TypeError, "value '%s' is not an Array" % [hash['networks']] unless hash['networks'].is_a? Array
24
+ @networks = []
25
+ hash['networks'].each do |e|
26
+ @networks << e
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,30 @@
1
+ #
2
+ # This class was auto-generated.
3
+ #
4
+ require 'onlinepayments/sdk/data_object'
5
+
6
+ module OnlinePayments::SDK
7
+ module Domain
8
+
9
+ # @attr [String] merchant_parameters
10
+ # @attr [String] merchant_reference
11
+ class PaymentReferences < OnlinePayments::SDK::DataObject
12
+ attr_accessor :merchant_parameters
13
+ attr_accessor :merchant_reference
14
+
15
+ # @return (Hash)
16
+ def to_h
17
+ hash = super
18
+ hash['merchantParameters'] = @merchant_parameters unless @merchant_parameters.nil?
19
+ hash['merchantReference'] = @merchant_reference unless @merchant_reference.nil?
20
+ hash
21
+ end
22
+
23
+ def from_hash(hash)
24
+ super
25
+ @merchant_parameters = hash['merchantParameters'] if hash.key? 'merchantParameters'
26
+ @merchant_reference = hash['merchantReference'] if hash.key? 'merchantReference'
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,54 @@
1
+ #
2
+ # This class was auto-generated.
3
+ #
4
+ require 'onlinepayments/sdk/data_object'
5
+ require 'onlinepayments/sdk/domain/hosted_checkout_specific_output'
6
+ require 'onlinepayments/sdk/domain/payment_output'
7
+ require 'onlinepayments/sdk/domain/payment_status_output'
8
+
9
+ module OnlinePayments::SDK
10
+ module Domain
11
+
12
+ # @attr [OnlinePayments::SDK::Domain::HostedCheckoutSpecificOutput] hosted_checkout_specific_output
13
+ # @attr [String] id
14
+ # @attr [OnlinePayments::SDK::Domain::PaymentOutput] payment_output
15
+ # @attr [String] status
16
+ # @attr [OnlinePayments::SDK::Domain::PaymentStatusOutput] status_output
17
+ class PaymentResponse < OnlinePayments::SDK::DataObject
18
+ attr_accessor :hosted_checkout_specific_output
19
+ attr_accessor :id
20
+ attr_accessor :payment_output
21
+ attr_accessor :status
22
+ attr_accessor :status_output
23
+
24
+ # @return (Hash)
25
+ def to_h
26
+ hash = super
27
+ hash['hostedCheckoutSpecificOutput'] = @hosted_checkout_specific_output.to_h if @hosted_checkout_specific_output
28
+ hash['id'] = @id unless @id.nil?
29
+ hash['paymentOutput'] = @payment_output.to_h if @payment_output
30
+ hash['status'] = @status unless @status.nil?
31
+ hash['statusOutput'] = @status_output.to_h if @status_output
32
+ hash
33
+ end
34
+
35
+ def from_hash(hash)
36
+ super
37
+ if hash.key? 'hostedCheckoutSpecificOutput'
38
+ raise TypeError, "value '%s' is not a Hash" % [hash['hostedCheckoutSpecificOutput']] unless hash['hostedCheckoutSpecificOutput'].is_a? Hash
39
+ @hosted_checkout_specific_output = OnlinePayments::SDK::Domain::HostedCheckoutSpecificOutput.new_from_hash(hash['hostedCheckoutSpecificOutput'])
40
+ end
41
+ @id = hash['id'] if hash.key? 'id'
42
+ if hash.key? 'paymentOutput'
43
+ raise TypeError, "value '%s' is not a Hash" % [hash['paymentOutput']] unless hash['paymentOutput'].is_a? Hash
44
+ @payment_output = OnlinePayments::SDK::Domain::PaymentOutput.new_from_hash(hash['paymentOutput'])
45
+ end
46
+ @status = hash['status'] if hash.key? 'status'
47
+ if hash.key? 'statusOutput'
48
+ raise TypeError, "value '%s' is not a Hash" % [hash['statusOutput']] unless hash['statusOutput'].is_a? Hash
49
+ @status_output = OnlinePayments::SDK::Domain::PaymentStatusOutput.new_from_hash(hash['statusOutput'])
50
+ end
51
+ end
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,57 @@
1
+ #
2
+ # This class was auto-generated.
3
+ #
4
+ require 'onlinepayments/sdk/data_object'
5
+ require 'onlinepayments/sdk/domain/api_error'
6
+
7
+ module OnlinePayments::SDK
8
+ module Domain
9
+
10
+ # @attr [Array<OnlinePayments::SDK::Domain::APIError>] errors
11
+ # @attr [true/false] is_authorized
12
+ # @attr [true/false] is_cancellable
13
+ # @attr [true/false] is_refundable
14
+ # @attr [String] status_category
15
+ # @attr [Integer] status_code
16
+ # @attr [String] status_code_change_date_time
17
+ class PaymentStatusOutput < OnlinePayments::SDK::DataObject
18
+ attr_accessor :errors
19
+ attr_accessor :is_authorized
20
+ attr_accessor :is_cancellable
21
+ attr_accessor :is_refundable
22
+ attr_accessor :status_category
23
+ attr_accessor :status_code
24
+ attr_accessor :status_code_change_date_time
25
+
26
+ # @return (Hash)
27
+ def to_h
28
+ hash = super
29
+ hash['errors'] = @errors.collect(&:to_h) if @errors
30
+ hash['isAuthorized'] = @is_authorized unless @is_authorized.nil?
31
+ hash['isCancellable'] = @is_cancellable unless @is_cancellable.nil?
32
+ hash['isRefundable'] = @is_refundable unless @is_refundable.nil?
33
+ hash['statusCategory'] = @status_category unless @status_category.nil?
34
+ hash['statusCode'] = @status_code unless @status_code.nil?
35
+ hash['statusCodeChangeDateTime'] = @status_code_change_date_time unless @status_code_change_date_time.nil?
36
+ hash
37
+ end
38
+
39
+ def from_hash(hash)
40
+ super
41
+ if hash.key? 'errors'
42
+ raise TypeError, "value '%s' is not an Array" % [hash['errors']] unless hash['errors'].is_a? Array
43
+ @errors = []
44
+ hash['errors'].each do |e|
45
+ @errors << OnlinePayments::SDK::Domain::APIError.new_from_hash(e)
46
+ end
47
+ end
48
+ @is_authorized = hash['isAuthorized'] if hash.key? 'isAuthorized'
49
+ @is_cancellable = hash['isCancellable'] if hash.key? 'isCancellable'
50
+ @is_refundable = hash['isRefundable'] if hash.key? 'isRefundable'
51
+ @status_category = hash['statusCategory'] if hash.key? 'statusCategory'
52
+ @status_code = hash['statusCode'] if hash.key? 'statusCode'
53
+ @status_code_change_date_time = hash['statusCodeChangeDateTime'] if hash.key? 'statusCodeChangeDateTime'
54
+ end
55
+ end
56
+ end
57
+ end
@@ -0,0 +1,45 @@
1
+ #
2
+ # This class was auto-generated.
3
+ #
4
+ require 'onlinepayments/sdk/data_object'
5
+ require 'onlinepayments/sdk/domain/api_error'
6
+ require 'onlinepayments/sdk/domain/payout_result'
7
+
8
+ module OnlinePayments::SDK
9
+ module Domain
10
+
11
+ # @attr [String] error_id
12
+ # @attr [Array<OnlinePayments::SDK::Domain::APIError>] errors
13
+ # @attr [OnlinePayments::SDK::Domain::PayoutResult] payout_result
14
+ class PayoutErrorResponse < OnlinePayments::SDK::DataObject
15
+ attr_accessor :error_id
16
+ attr_accessor :errors
17
+ attr_accessor :payout_result
18
+
19
+ # @return (Hash)
20
+ def to_h
21
+ hash = super
22
+ hash['errorId'] = @error_id unless @error_id.nil?
23
+ hash['errors'] = @errors.collect(&:to_h) if @errors
24
+ hash['payoutResult'] = @payout_result.to_h if @payout_result
25
+ hash
26
+ end
27
+
28
+ def from_hash(hash)
29
+ super
30
+ @error_id = hash['errorId'] if hash.key? 'errorId'
31
+ if hash.key? 'errors'
32
+ raise TypeError, "value '%s' is not an Array" % [hash['errors']] unless hash['errors'].is_a? Array
33
+ @errors = []
34
+ hash['errors'].each do |e|
35
+ @errors << OnlinePayments::SDK::Domain::APIError.new_from_hash(e)
36
+ end
37
+ end
38
+ if hash.key? 'payoutResult'
39
+ raise TypeError, "value '%s' is not a Hash" % [hash['payoutResult']] unless hash['payoutResult'].is_a? Hash
40
+ @payout_result = OnlinePayments::SDK::Domain::PayoutResult.new_from_hash(hash['payoutResult'])
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,30 @@
1
+ #
2
+ # This class was auto-generated.
3
+ #
4
+ require 'onlinepayments/sdk/data_object'
5
+ require 'onlinepayments/sdk/domain/amount_of_money'
6
+
7
+ module OnlinePayments::SDK
8
+ module Domain
9
+
10
+ # @attr [OnlinePayments::SDK::Domain::AmountOfMoney] amount_of_money
11
+ class PayoutOutput < OnlinePayments::SDK::DataObject
12
+ attr_accessor :amount_of_money
13
+
14
+ # @return (Hash)
15
+ def to_h
16
+ hash = super
17
+ hash['amountOfMoney'] = @amount_of_money.to_h if @amount_of_money
18
+ hash
19
+ end
20
+
21
+ def from_hash(hash)
22
+ super
23
+ if hash.key? 'amountOfMoney'
24
+ raise TypeError, "value '%s' is not a Hash" % [hash['amountOfMoney']] unless hash['amountOfMoney'].is_a? Hash
25
+ @amount_of_money = OnlinePayments::SDK::Domain::AmountOfMoney.new_from_hash(hash['amountOfMoney'])
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end