onlinepayments-sdk-python3 7.4.1__py3-none-any.whl

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 (475) hide show
  1. onlinepayments/__init__.py +0 -0
  2. onlinepayments/sdk/__init__.py +4 -0
  3. onlinepayments/sdk/api_exception.py +60 -0
  4. onlinepayments/sdk/api_resource.py +57 -0
  5. onlinepayments/sdk/authentication/__init__.py +0 -0
  6. onlinepayments/sdk/authentication/authenticator.py +24 -0
  7. onlinepayments/sdk/authentication/authorization_type.py +10 -0
  8. onlinepayments/sdk/authentication/v1hmac_authenticator.py +122 -0
  9. onlinepayments/sdk/authorization_exception.py +19 -0
  10. onlinepayments/sdk/call_context.py +72 -0
  11. onlinepayments/sdk/client.py +107 -0
  12. onlinepayments/sdk/communication/__init__.py +0 -0
  13. onlinepayments/sdk/communication/communication_exception.py +8 -0
  14. onlinepayments/sdk/communication/connection.py +84 -0
  15. onlinepayments/sdk/communication/default_connection.py +313 -0
  16. onlinepayments/sdk/communication/i_metadata_provider.py +19 -0
  17. onlinepayments/sdk/communication/metadata_provider.py +132 -0
  18. onlinepayments/sdk/communication/multipart_form_data_object.py +51 -0
  19. onlinepayments/sdk/communication/multipart_form_data_request.py +16 -0
  20. onlinepayments/sdk/communication/not_found_exception.py +10 -0
  21. onlinepayments/sdk/communication/param_request.py +17 -0
  22. onlinepayments/sdk/communication/pooled_connection.py +29 -0
  23. onlinepayments/sdk/communication/request_header.py +60 -0
  24. onlinepayments/sdk/communication/request_param.py +30 -0
  25. onlinepayments/sdk/communication/response_exception.py +58 -0
  26. onlinepayments/sdk/communication/response_header.py +50 -0
  27. onlinepayments/sdk/communicator.py +465 -0
  28. onlinepayments/sdk/communicator_configuration.py +264 -0
  29. onlinepayments/sdk/declined_payment_exception.py +46 -0
  30. onlinepayments/sdk/declined_payout_exception.py +46 -0
  31. onlinepayments/sdk/declined_refund_exception.py +46 -0
  32. onlinepayments/sdk/declined_transaction_exception.py +22 -0
  33. onlinepayments/sdk/domain/__init__.py +4 -0
  34. onlinepayments/sdk/domain/acceptance.py +56 -0
  35. onlinepayments/sdk/domain/account_on_file.py +102 -0
  36. onlinepayments/sdk/domain/account_on_file_attribute.py +97 -0
  37. onlinepayments/sdk/domain/account_on_file_display_hints.py +64 -0
  38. onlinepayments/sdk/domain/acquirer_information.py +59 -0
  39. onlinepayments/sdk/domain/acquirer_selection_information.py +73 -0
  40. onlinepayments/sdk/domain/additional_order_input.py +107 -0
  41. onlinepayments/sdk/domain/address.py +145 -0
  42. onlinepayments/sdk/domain/address_personal.py +185 -0
  43. onlinepayments/sdk/domain/airline_data.py +519 -0
  44. onlinepayments/sdk/domain/airline_flight_leg.py +386 -0
  45. onlinepayments/sdk/domain/airline_passenger.py +129 -0
  46. onlinepayments/sdk/domain/amount_breakdown.py +63 -0
  47. onlinepayments/sdk/domain/amount_of_money.py +59 -0
  48. onlinepayments/sdk/domain/api_error.py +177 -0
  49. onlinepayments/sdk/domain/apple_pay_line_item.py +145 -0
  50. onlinepayments/sdk/domain/apple_pay_recurring_payment_request.py +116 -0
  51. onlinepayments/sdk/domain/bank_account_iban.py +37 -0
  52. onlinepayments/sdk/domain/batch_metadata.py +73 -0
  53. onlinepayments/sdk/domain/browser_data.py +130 -0
  54. onlinepayments/sdk/domain/calculate_surcharge_request.py +63 -0
  55. onlinepayments/sdk/domain/calculate_surcharge_response.py +44 -0
  56. onlinepayments/sdk/domain/cancel_payment_batch_request.py +57 -0
  57. onlinepayments/sdk/domain/cancel_payment_request.py +130 -0
  58. onlinepayments/sdk/domain/cancel_payment_response.py +41 -0
  59. onlinepayments/sdk/domain/capture.py +97 -0
  60. onlinepayments/sdk/domain/capture_output.py +272 -0
  61. onlinepayments/sdk/domain/capture_payment_batch_request.py +57 -0
  62. onlinepayments/sdk/domain/capture_payment_request.py +148 -0
  63. onlinepayments/sdk/domain/capture_response.py +99 -0
  64. onlinepayments/sdk/domain/capture_status_output.py +37 -0
  65. onlinepayments/sdk/domain/captures_response.py +46 -0
  66. onlinepayments/sdk/domain/card.py +91 -0
  67. onlinepayments/sdk/domain/card_bin_details.py +384 -0
  68. onlinepayments/sdk/domain/card_data_without_cvv.py +73 -0
  69. onlinepayments/sdk/domain/card_essentials.py +438 -0
  70. onlinepayments/sdk/domain/card_fraud_results.py +112 -0
  71. onlinepayments/sdk/domain/card_info.py +55 -0
  72. onlinepayments/sdk/domain/card_payment_method_specific_input.py +608 -0
  73. onlinepayments/sdk/domain/card_payment_method_specific_input_base.py +441 -0
  74. onlinepayments/sdk/domain/card_payment_method_specific_input_for_hosted_checkout.py +105 -0
  75. onlinepayments/sdk/domain/card_payment_method_specific_output.py +467 -0
  76. onlinepayments/sdk/domain/card_payout_method_specific_input.py +99 -0
  77. onlinepayments/sdk/domain/card_recurrence_details.py +40 -0
  78. onlinepayments/sdk/domain/card_source.py +95 -0
  79. onlinepayments/sdk/domain/card_without_cvv.py +73 -0
  80. onlinepayments/sdk/domain/click_to_pay.py +37 -0
  81. onlinepayments/sdk/domain/company_information.py +37 -0
  82. onlinepayments/sdk/domain/complete_payment_card_payment_method_specific_input.py +39 -0
  83. onlinepayments/sdk/domain/complete_payment_request.py +61 -0
  84. onlinepayments/sdk/domain/complete_payment_response.py +85 -0
  85. onlinepayments/sdk/domain/contact_details.py +109 -0
  86. onlinepayments/sdk/domain/create_certificate_response.py +55 -0
  87. onlinepayments/sdk/domain/create_hosted_checkout_request.py +195 -0
  88. onlinepayments/sdk/domain/create_hosted_checkout_response.py +132 -0
  89. onlinepayments/sdk/domain/create_hosted_fields_session_request.py +37 -0
  90. onlinepayments/sdk/domain/create_hosted_fields_session_response.py +102 -0
  91. onlinepayments/sdk/domain/create_hosted_tokenization_request.py +133 -0
  92. onlinepayments/sdk/domain/create_hosted_tokenization_response.py +127 -0
  93. onlinepayments/sdk/domain/create_mandate_request.py +187 -0
  94. onlinepayments/sdk/domain/create_mandate_response.py +63 -0
  95. onlinepayments/sdk/domain/create_mandate_with_return_url.py +187 -0
  96. onlinepayments/sdk/domain/create_payment_link_request.py +344 -0
  97. onlinepayments/sdk/domain/create_payment_request.py +249 -0
  98. onlinepayments/sdk/domain/create_payment_response.py +85 -0
  99. onlinepayments/sdk/domain/create_payout_request.py +176 -0
  100. onlinepayments/sdk/domain/create_token_request.py +77 -0
  101. onlinepayments/sdk/domain/created_payment_output.py +57 -0
  102. onlinepayments/sdk/domain/created_token_response.py +142 -0
  103. onlinepayments/sdk/domain/credit_card_specific_input_hosted_tokenization.py +66 -0
  104. onlinepayments/sdk/domain/credit_card_validation_rules.py +55 -0
  105. onlinepayments/sdk/domain/credit_card_validation_rules_hosted_tokenization.py +55 -0
  106. onlinepayments/sdk/domain/crm_token.py +55 -0
  107. onlinepayments/sdk/domain/csr_request.py +37 -0
  108. onlinepayments/sdk/domain/currency_conversion.py +59 -0
  109. onlinepayments/sdk/domain/currency_conversion_input.py +55 -0
  110. onlinepayments/sdk/domain/currency_conversion_request.py +59 -0
  111. onlinepayments/sdk/domain/currency_conversion_response.py +81 -0
  112. onlinepayments/sdk/domain/currency_conversion_result.py +61 -0
  113. onlinepayments/sdk/domain/currency_conversion_specific_input.py +40 -0
  114. onlinepayments/sdk/domain/customer.py +234 -0
  115. onlinepayments/sdk/domain/customer_account.py +204 -0
  116. onlinepayments/sdk/domain/customer_account_authentication.py +81 -0
  117. onlinepayments/sdk/domain/customer_bank_account.py +73 -0
  118. onlinepayments/sdk/domain/customer_device.py +155 -0
  119. onlinepayments/sdk/domain/customer_device_output.py +37 -0
  120. onlinepayments/sdk/domain/customer_output.py +41 -0
  121. onlinepayments/sdk/domain/customer_payment_activity.py +73 -0
  122. onlinepayments/sdk/domain/customer_token.py +83 -0
  123. onlinepayments/sdk/domain/data_object.py +47 -0
  124. onlinepayments/sdk/domain/dcc_card_source.py +93 -0
  125. onlinepayments/sdk/domain/dcc_proposal.py +118 -0
  126. onlinepayments/sdk/domain/decrypted_payment_data.py +120 -0
  127. onlinepayments/sdk/domain/detokenization_response.py +46 -0
  128. onlinepayments/sdk/domain/detokenized_token_response.py +145 -0
  129. onlinepayments/sdk/domain/directory_entry.py +73 -0
  130. onlinepayments/sdk/domain/discount.py +41 -0
  131. onlinepayments/sdk/domain/empty_validator.py +16 -0
  132. onlinepayments/sdk/domain/error_response.py +64 -0
  133. onlinepayments/sdk/domain/external_cardholder_authentication_data.py +216 -0
  134. onlinepayments/sdk/domain/external_token_linked.py +75 -0
  135. onlinepayments/sdk/domain/feedbacks.py +64 -0
  136. onlinepayments/sdk/domain/fixed_list_validator.py +42 -0
  137. onlinepayments/sdk/domain/fraud_fields.py +84 -0
  138. onlinepayments/sdk/domain/fraud_results.py +43 -0
  139. onlinepayments/sdk/domain/g_pay_three_d_secure.py +159 -0
  140. onlinepayments/sdk/domain/get_batch_status_response.py +91 -0
  141. onlinepayments/sdk/domain/get_hosted_checkout_response.py +63 -0
  142. onlinepayments/sdk/domain/get_hosted_tokenization_response.py +61 -0
  143. onlinepayments/sdk/domain/get_iin_details_request.py +57 -0
  144. onlinepayments/sdk/domain/get_iin_details_response.py +450 -0
  145. onlinepayments/sdk/domain/get_mandate_response.py +41 -0
  146. onlinepayments/sdk/domain/get_payment_product_groups_response.py +44 -0
  147. onlinepayments/sdk/domain/get_payment_products_response.py +44 -0
  148. onlinepayments/sdk/domain/get_privacy_policy_response.py +37 -0
  149. onlinepayments/sdk/domain/gift_card_purchase.py +59 -0
  150. onlinepayments/sdk/domain/hosted_checkout_specific_input.py +250 -0
  151. onlinepayments/sdk/domain/hosted_checkout_specific_output.py +55 -0
  152. onlinepayments/sdk/domain/iin_detail.py +423 -0
  153. onlinepayments/sdk/domain/import_cof_series_request.py +113 -0
  154. onlinepayments/sdk/domain/import_cof_series_response.py +37 -0
  155. onlinepayments/sdk/domain/label_template_element.py +55 -0
  156. onlinepayments/sdk/domain/length_validator.py +51 -0
  157. onlinepayments/sdk/domain/line_item.py +107 -0
  158. onlinepayments/sdk/domain/line_item_detail.py +99 -0
  159. onlinepayments/sdk/domain/line_item_invoice_data.py +37 -0
  160. onlinepayments/sdk/domain/loan_recipient.py +109 -0
  161. onlinepayments/sdk/domain/lodging_data.py +37 -0
  162. onlinepayments/sdk/domain/mandate_address.py +109 -0
  163. onlinepayments/sdk/domain/mandate_address_response.py +109 -0
  164. onlinepayments/sdk/domain/mandate_contact_details.py +37 -0
  165. onlinepayments/sdk/domain/mandate_customer.py +125 -0
  166. onlinepayments/sdk/domain/mandate_customer_response.py +125 -0
  167. onlinepayments/sdk/domain/mandate_merchant_action.py +61 -0
  168. onlinepayments/sdk/domain/mandate_personal_information.py +59 -0
  169. onlinepayments/sdk/domain/mandate_personal_information_response.py +59 -0
  170. onlinepayments/sdk/domain/mandate_personal_name.py +55 -0
  171. onlinepayments/sdk/domain/mandate_personal_name_response.py +55 -0
  172. onlinepayments/sdk/domain/mandate_redirect_data.py +55 -0
  173. onlinepayments/sdk/domain/mandate_response.py +150 -0
  174. onlinepayments/sdk/domain/market_place.py +55 -0
  175. onlinepayments/sdk/domain/merchant_action.py +132 -0
  176. onlinepayments/sdk/domain/mobile_payment_data.py +55 -0
  177. onlinepayments/sdk/domain/mobile_payment_method_hosted_checkout_specific_input.py +105 -0
  178. onlinepayments/sdk/domain/mobile_payment_method_specific_input.py +202 -0
  179. onlinepayments/sdk/domain/mobile_payment_method_specific_output.py +139 -0
  180. onlinepayments/sdk/domain/mobile_payment_product302_specific_input.py +103 -0
  181. onlinepayments/sdk/domain/mobile_payment_product320_specific_input.py +103 -0
  182. onlinepayments/sdk/domain/mobile_three_d_secure_challenge_parameters.py +91 -0
  183. onlinepayments/sdk/domain/multiple_payment_information.py +57 -0
  184. onlinepayments/sdk/domain/network_token_data.py +127 -0
  185. onlinepayments/sdk/domain/network_token_essentials.py +134 -0
  186. onlinepayments/sdk/domain/network_token_linked.py +80 -0
  187. onlinepayments/sdk/domain/omnichannel_payment_specific_input.py +37 -0
  188. onlinepayments/sdk/domain/omnichannel_payout_specific_input.py +55 -0
  189. onlinepayments/sdk/domain/omnichannel_refund_specific_input.py +37 -0
  190. onlinepayments/sdk/domain/omnichannel_subsequent_specific_input.py +37 -0
  191. onlinepayments/sdk/domain/operation_output.py +161 -0
  192. onlinepayments/sdk/domain/operation_payment_references.py +55 -0
  193. onlinepayments/sdk/domain/order.py +213 -0
  194. onlinepayments/sdk/domain/order_line_details.py +189 -0
  195. onlinepayments/sdk/domain/order_references.py +120 -0
  196. onlinepayments/sdk/domain/order_status_output.py +119 -0
  197. onlinepayments/sdk/domain/order_type_information.py +64 -0
  198. onlinepayments/sdk/domain/other_details.py +55 -0
  199. onlinepayments/sdk/domain/payment_account_on_file.py +57 -0
  200. onlinepayments/sdk/domain/payment_context.py +77 -0
  201. onlinepayments/sdk/domain/payment_creation_output.py +94 -0
  202. onlinepayments/sdk/domain/payment_details_response.py +148 -0
  203. onlinepayments/sdk/domain/payment_error_response.py +84 -0
  204. onlinepayments/sdk/domain/payment_link_event.py +73 -0
  205. onlinepayments/sdk/domain/payment_link_order_input.py +84 -0
  206. onlinepayments/sdk/domain/payment_link_order_output.py +81 -0
  207. onlinepayments/sdk/domain/payment_link_response.py +216 -0
  208. onlinepayments/sdk/domain/payment_link_specific_input.py +74 -0
  209. onlinepayments/sdk/domain/payment_links_response.py +44 -0
  210. onlinepayments/sdk/domain/payment_output.py +335 -0
  211. onlinepayments/sdk/domain/payment_product.py +296 -0
  212. onlinepayments/sdk/domain/payment_product130_specific_input.py +41 -0
  213. onlinepayments/sdk/domain/payment_product130_specific_three_d_secure.py +91 -0
  214. onlinepayments/sdk/domain/payment_product3012.py +55 -0
  215. onlinepayments/sdk/domain/payment_product3012_specific_input.py +100 -0
  216. onlinepayments/sdk/domain/payment_product3013_specific_input.py +73 -0
  217. onlinepayments/sdk/domain/payment_product302_specific_data.py +44 -0
  218. onlinepayments/sdk/domain/payment_product3203_specific_output.py +62 -0
  219. onlinepayments/sdk/domain/payment_product3204_specific_output.py +37 -0
  220. onlinepayments/sdk/domain/payment_product3208_specific_input.py +37 -0
  221. onlinepayments/sdk/domain/payment_product3208_specific_output.py +37 -0
  222. onlinepayments/sdk/domain/payment_product3209_specific_input.py +37 -0
  223. onlinepayments/sdk/domain/payment_product3209_specific_output.py +37 -0
  224. onlinepayments/sdk/domain/payment_product320_specific_data.py +62 -0
  225. onlinepayments/sdk/domain/payment_product350.py +55 -0
  226. onlinepayments/sdk/domain/payment_product5001.py +58 -0
  227. onlinepayments/sdk/domain/payment_product5001_specific_output.py +112 -0
  228. onlinepayments/sdk/domain/payment_product5100_specific_input.py +37 -0
  229. onlinepayments/sdk/domain/payment_product5402_specific_output.py +37 -0
  230. onlinepayments/sdk/domain/payment_product5404.py +55 -0
  231. onlinepayments/sdk/domain/payment_product5407.py +55 -0
  232. onlinepayments/sdk/domain/payment_product5500_specific_output.py +91 -0
  233. onlinepayments/sdk/domain/payment_product771_specific_output.py +37 -0
  234. onlinepayments/sdk/domain/payment_product840.py +37 -0
  235. onlinepayments/sdk/domain/payment_product840_customer_account.py +170 -0
  236. onlinepayments/sdk/domain/payment_product840_specific_output.py +167 -0
  237. onlinepayments/sdk/domain/payment_product_display_hints.py +73 -0
  238. onlinepayments/sdk/domain/payment_product_field.py +95 -0
  239. onlinepayments/sdk/domain/payment_product_field_data_restrictions.py +60 -0
  240. onlinepayments/sdk/domain/payment_product_field_display_element.py +97 -0
  241. onlinepayments/sdk/domain/payment_product_field_display_hints.py +218 -0
  242. onlinepayments/sdk/domain/payment_product_field_form_element.py +72 -0
  243. onlinepayments/sdk/domain/payment_product_field_tooltip.py +57 -0
  244. onlinepayments/sdk/domain/payment_product_field_validators.py +195 -0
  245. onlinepayments/sdk/domain/payment_product_filter.py +67 -0
  246. onlinepayments/sdk/domain/payment_product_filter_hosted_tokenization.py +42 -0
  247. onlinepayments/sdk/domain/payment_product_filters_hosted_checkout.py +62 -0
  248. onlinepayments/sdk/domain/payment_product_filters_hosted_tokenization.py +62 -0
  249. onlinepayments/sdk/domain/payment_product_group.py +103 -0
  250. onlinepayments/sdk/domain/payment_product_networks_response.py +42 -0
  251. onlinepayments/sdk/domain/payment_references.py +73 -0
  252. onlinepayments/sdk/domain/payment_response.py +143 -0
  253. onlinepayments/sdk/domain/payment_status_output.py +152 -0
  254. onlinepayments/sdk/domain/payout_error_response.py +80 -0
  255. onlinepayments/sdk/domain/payout_output.py +63 -0
  256. onlinepayments/sdk/domain/payout_response.py +93 -0
  257. onlinepayments/sdk/domain/payout_result.py +93 -0
  258. onlinepayments/sdk/domain/payout_status_output.py +76 -0
  259. onlinepayments/sdk/domain/pending_authentication.py +37 -0
  260. onlinepayments/sdk/domain/personal_information.py +77 -0
  261. onlinepayments/sdk/domain/personal_information_token.py +39 -0
  262. onlinepayments/sdk/domain/personal_name.py +73 -0
  263. onlinepayments/sdk/domain/personal_name_token.py +51 -0
  264. onlinepayments/sdk/domain/product302_recurring.py +37 -0
  265. onlinepayments/sdk/domain/product320_recurring.py +37 -0
  266. onlinepayments/sdk/domain/product_directory.py +46 -0
  267. onlinepayments/sdk/domain/protection_eligibility.py +59 -0
  268. onlinepayments/sdk/domain/range_validator.py +51 -0
  269. onlinepayments/sdk/domain/rate_details.py +109 -0
  270. onlinepayments/sdk/domain/reattempt_instructions.py +82 -0
  271. onlinepayments/sdk/domain/reattempt_instructions_conditions.py +55 -0
  272. onlinepayments/sdk/domain/redirect_data.py +55 -0
  273. onlinepayments/sdk/domain/redirect_payment_method_specific_input.py +575 -0
  274. onlinepayments/sdk/domain/redirect_payment_method_specific_output.py +267 -0
  275. onlinepayments/sdk/domain/redirect_payment_product11_specific_input.py +38 -0
  276. onlinepayments/sdk/domain/redirect_payment_product3103_specific_input.py +40 -0
  277. onlinepayments/sdk/domain/redirect_payment_product3112_specific_input.py +40 -0
  278. onlinepayments/sdk/domain/redirect_payment_product3116_specific_input.py +40 -0
  279. onlinepayments/sdk/domain/redirect_payment_product3203_specific_input.py +40 -0
  280. onlinepayments/sdk/domain/redirect_payment_product3204_specific_input.py +55 -0
  281. onlinepayments/sdk/domain/redirect_payment_product3302_specific_input.py +73 -0
  282. onlinepayments/sdk/domain/redirect_payment_product3306_specific_input.py +37 -0
  283. onlinepayments/sdk/domain/redirect_payment_product3307_specific_input.py +16 -0
  284. onlinepayments/sdk/domain/redirect_payment_product5001_specific_input.py +62 -0
  285. onlinepayments/sdk/domain/redirect_payment_product5300_specific_input.py +163 -0
  286. onlinepayments/sdk/domain/redirect_payment_product5402_specific_input.py +40 -0
  287. onlinepayments/sdk/domain/redirect_payment_product5403_specific_input.py +40 -0
  288. onlinepayments/sdk/domain/redirect_payment_product5406_specific_input.py +41 -0
  289. onlinepayments/sdk/domain/redirect_payment_product5408_specific_input.py +60 -0
  290. onlinepayments/sdk/domain/redirect_payment_product5410_specific_input.py +38 -0
  291. onlinepayments/sdk/domain/redirect_payment_product5412_specific_input.py +55 -0
  292. onlinepayments/sdk/domain/redirect_payment_product5601_specific_input.py +40 -0
  293. onlinepayments/sdk/domain/redirect_payment_product809_specific_input.py +40 -0
  294. onlinepayments/sdk/domain/redirect_payment_product840_specific_input.py +100 -0
  295. onlinepayments/sdk/domain/redirection_data.py +37 -0
  296. onlinepayments/sdk/domain/refund_card_method_specific_output.py +71 -0
  297. onlinepayments/sdk/domain/refund_e_wallet_method_specific_output.py +71 -0
  298. onlinepayments/sdk/domain/refund_error_response.py +82 -0
  299. onlinepayments/sdk/domain/refund_mobile_method_specific_output.py +69 -0
  300. onlinepayments/sdk/domain/refund_output.py +217 -0
  301. onlinepayments/sdk/domain/refund_payment_batch_request.py +57 -0
  302. onlinepayments/sdk/domain/refund_payment_product840_customer_account.py +69 -0
  303. onlinepayments/sdk/domain/refund_payment_product840_specific_output.py +39 -0
  304. onlinepayments/sdk/domain/refund_redirect_method_specific_output.py +51 -0
  305. onlinepayments/sdk/domain/refund_redirect_payment_method_specific_input.py +41 -0
  306. onlinepayments/sdk/domain/refund_redirect_payment_product900_specific_input.py +37 -0
  307. onlinepayments/sdk/domain/refund_request.py +210 -0
  308. onlinepayments/sdk/domain/refund_response.py +97 -0
  309. onlinepayments/sdk/domain/refunds_response.py +46 -0
  310. onlinepayments/sdk/domain/regular_expression_validator.py +35 -0
  311. onlinepayments/sdk/domain/revoke_mandate_request.py +48 -0
  312. onlinepayments/sdk/domain/send_test_request.py +37 -0
  313. onlinepayments/sdk/domain/sepa_direct_debit_payment_method_specific_input.py +59 -0
  314. onlinepayments/sdk/domain/sepa_direct_debit_payment_method_specific_input_base.py +59 -0
  315. onlinepayments/sdk/domain/sepa_direct_debit_payment_method_specific_output.py +81 -0
  316. onlinepayments/sdk/domain/sepa_direct_debit_payment_product771_specific_input.py +59 -0
  317. onlinepayments/sdk/domain/sepa_direct_debit_payment_product771_specific_input_base.py +59 -0
  318. onlinepayments/sdk/domain/session_data.py +116 -0
  319. onlinepayments/sdk/domain/session_details.py +55 -0
  320. onlinepayments/sdk/domain/session_request.py +44 -0
  321. onlinepayments/sdk/domain/session_response.py +114 -0
  322. onlinepayments/sdk/domain/shipping.py +214 -0
  323. onlinepayments/sdk/domain/shipping_detail.py +63 -0
  324. onlinepayments/sdk/domain/shipping_method.py +91 -0
  325. onlinepayments/sdk/domain/shopping_cart.py +155 -0
  326. onlinepayments/sdk/domain/shopping_cart_extension.py +77 -0
  327. onlinepayments/sdk/domain/shopping_cart_output.py +46 -0
  328. onlinepayments/sdk/domain/show_form_data.py +173 -0
  329. onlinepayments/sdk/domain/show_instructions_data.py +37 -0
  330. onlinepayments/sdk/domain/split_payment_product_filter.py +42 -0
  331. onlinepayments/sdk/domain/split_payment_product_filters_hosted_checkout.py +62 -0
  332. onlinepayments/sdk/domain/submit_batch_request_body.py +230 -0
  333. onlinepayments/sdk/domain/submit_batch_response.py +55 -0
  334. onlinepayments/sdk/domain/subsequent_card_payment_method_specific_input.py +175 -0
  335. onlinepayments/sdk/domain/subsequent_payment_batch_request.py +57 -0
  336. onlinepayments/sdk/domain/subsequent_payment_product5001_specific_input.py +41 -0
  337. onlinepayments/sdk/domain/subsequent_payment_request.py +107 -0
  338. onlinepayments/sdk/domain/subsequent_payment_response.py +41 -0
  339. onlinepayments/sdk/domain/surcharge.py +141 -0
  340. onlinepayments/sdk/domain/surcharge_calculation_card.py +55 -0
  341. onlinepayments/sdk/domain/surcharge_for_payment_link.py +40 -0
  342. onlinepayments/sdk/domain/surcharge_rate.py +91 -0
  343. onlinepayments/sdk/domain/surcharge_specific_input.py +62 -0
  344. onlinepayments/sdk/domain/surcharge_specific_output.py +84 -0
  345. onlinepayments/sdk/domain/test_connection.py +35 -0
  346. onlinepayments/sdk/domain/three_d_secure.py +281 -0
  347. onlinepayments/sdk/domain/three_d_secure_base.py +219 -0
  348. onlinepayments/sdk/domain/three_d_secure_data.py +78 -0
  349. onlinepayments/sdk/domain/three_d_secure_results.py +266 -0
  350. onlinepayments/sdk/domain/token_card.py +57 -0
  351. onlinepayments/sdk/domain/token_card_data.py +83 -0
  352. onlinepayments/sdk/domain/token_card_specific_input.py +41 -0
  353. onlinepayments/sdk/domain/token_data.py +63 -0
  354. onlinepayments/sdk/domain/token_e_wallet.py +59 -0
  355. onlinepayments/sdk/domain/token_response.py +181 -0
  356. onlinepayments/sdk/domain/transaction.py +41 -0
  357. onlinepayments/sdk/domain/uploadable_file.py +51 -0
  358. onlinepayments/sdk/domain/validate_credentials_request.py +55 -0
  359. onlinepayments/sdk/domain/validate_credentials_response.py +37 -0
  360. onlinepayments/sdk/domain/value_mapping_element.py +62 -0
  361. onlinepayments/sdk/domain/web_hooks_event.py +214 -0
  362. onlinepayments/sdk/exception_factory.py +75 -0
  363. onlinepayments/sdk/factory.py +127 -0
  364. onlinepayments/sdk/i_client.py +78 -0
  365. onlinepayments/sdk/i_communicator.py +180 -0
  366. onlinepayments/sdk/idempotence_exception.py +36 -0
  367. onlinepayments/sdk/json/__init__.py +0 -0
  368. onlinepayments/sdk/json/default_marshaller.py +60 -0
  369. onlinepayments/sdk/json/marshaller.py +32 -0
  370. onlinepayments/sdk/json/marshaller_syntax_exception.py +13 -0
  371. onlinepayments/sdk/log/__init__.py +0 -0
  372. onlinepayments/sdk/log/body_obfuscator.py +113 -0
  373. onlinepayments/sdk/log/communicator_logger.py +35 -0
  374. onlinepayments/sdk/log/header_obfuscator.py +49 -0
  375. onlinepayments/sdk/log/log_message.py +94 -0
  376. onlinepayments/sdk/log/logging_capable.py +26 -0
  377. onlinepayments/sdk/log/obfuscation_capable.py +24 -0
  378. onlinepayments/sdk/log/obfuscation_rule.py +50 -0
  379. onlinepayments/sdk/log/python_communicator_logger.py +54 -0
  380. onlinepayments/sdk/log/request_log_message.py +28 -0
  381. onlinepayments/sdk/log/response_log_message.py +37 -0
  382. onlinepayments/sdk/log/sys_out_communicator_logger.py +36 -0
  383. onlinepayments/sdk/merchant/__init__.py +4 -0
  384. onlinepayments/sdk/merchant/captures/__init__.py +4 -0
  385. onlinepayments/sdk/merchant/captures/captures_client.py +63 -0
  386. onlinepayments/sdk/merchant/captures/i_captures_client.py +34 -0
  387. onlinepayments/sdk/merchant/cofseries/__init__.py +4 -0
  388. onlinepayments/sdk/merchant/cofseries/cof_series_client.py +62 -0
  389. onlinepayments/sdk/merchant/cofseries/i_cof_series_client.py +35 -0
  390. onlinepayments/sdk/merchant/complete/__init__.py +4 -0
  391. onlinepayments/sdk/merchant/complete/complete_client.py +67 -0
  392. onlinepayments/sdk/merchant/complete/i_complete_client.py +37 -0
  393. onlinepayments/sdk/merchant/hostedcheckout/__init__.py +4 -0
  394. onlinepayments/sdk/merchant/hostedcheckout/hosted_checkout_client.py +99 -0
  395. onlinepayments/sdk/merchant/hostedcheckout/i_hosted_checkout_client.py +55 -0
  396. onlinepayments/sdk/merchant/hostedfields/__init__.py +4 -0
  397. onlinepayments/sdk/merchant/hostedfields/hosted_fields_client.py +62 -0
  398. onlinepayments/sdk/merchant/hostedfields/i_hosted_fields_client.py +35 -0
  399. onlinepayments/sdk/merchant/hostedtokenization/__init__.py +4 -0
  400. onlinepayments/sdk/merchant/hostedtokenization/hosted_tokenization_client.py +99 -0
  401. onlinepayments/sdk/merchant/hostedtokenization/i_hosted_tokenization_client.py +55 -0
  402. onlinepayments/sdk/merchant/i_merchant_client.py +202 -0
  403. onlinepayments/sdk/merchant/mandates/__init__.py +4 -0
  404. onlinepayments/sdk/merchant/mandates/i_mandates_client.py +114 -0
  405. onlinepayments/sdk/merchant/mandates/mandates_client.py +212 -0
  406. onlinepayments/sdk/merchant/merchant_client.py +232 -0
  407. onlinepayments/sdk/merchant/merchantbatch/__init__.py +4 -0
  408. onlinepayments/sdk/merchant/merchantbatch/i_merchant_batch_client.py +74 -0
  409. onlinepayments/sdk/merchant/merchantbatch/merchant_batch_client.py +138 -0
  410. onlinepayments/sdk/merchant/paymentlinks/__init__.py +4 -0
  411. onlinepayments/sdk/merchant/paymentlinks/get_payment_links_in_bulk_params.py +36 -0
  412. onlinepayments/sdk/merchant/paymentlinks/i_payment_links_client.py +73 -0
  413. onlinepayments/sdk/merchant/paymentlinks/payment_links_client.py +135 -0
  414. onlinepayments/sdk/merchant/payments/__init__.py +4 -0
  415. onlinepayments/sdk/merchant/payments/i_payments_client.py +143 -0
  416. onlinepayments/sdk/merchant/payments/payments_client.py +260 -0
  417. onlinepayments/sdk/merchant/payouts/__init__.py +4 -0
  418. onlinepayments/sdk/merchant/payouts/i_payouts_client.py +55 -0
  419. onlinepayments/sdk/merchant/payouts/payouts_client.py +100 -0
  420. onlinepayments/sdk/merchant/privacypolicy/__init__.py +4 -0
  421. onlinepayments/sdk/merchant/privacypolicy/get_privacy_policy_params.py +54 -0
  422. onlinepayments/sdk/merchant/privacypolicy/i_privacy_policy_client.py +36 -0
  423. onlinepayments/sdk/merchant/privacypolicy/privacy_policy_client.py +61 -0
  424. onlinepayments/sdk/merchant/productgroups/__init__.py +4 -0
  425. onlinepayments/sdk/merchant/productgroups/get_product_group_params.py +140 -0
  426. onlinepayments/sdk/merchant/productgroups/get_product_groups_params.py +140 -0
  427. onlinepayments/sdk/merchant/productgroups/i_product_groups_client.py +58 -0
  428. onlinepayments/sdk/merchant/productgroups/product_groups_client.py +100 -0
  429. onlinepayments/sdk/merchant/products/__init__.py +4 -0
  430. onlinepayments/sdk/merchant/products/get_payment_product_networks_params.py +89 -0
  431. onlinepayments/sdk/merchant/products/get_payment_product_params.py +138 -0
  432. onlinepayments/sdk/merchant/products/get_payment_products_params.py +138 -0
  433. onlinepayments/sdk/merchant/products/get_product_directory_params.py +54 -0
  434. onlinepayments/sdk/merchant/products/i_products_client.py +102 -0
  435. onlinepayments/sdk/merchant/products/products_client.py +178 -0
  436. onlinepayments/sdk/merchant/refunds/__init__.py +4 -0
  437. onlinepayments/sdk/merchant/refunds/i_refunds_client.py +34 -0
  438. onlinepayments/sdk/merchant/refunds/refunds_client.py +63 -0
  439. onlinepayments/sdk/merchant/services/__init__.py +4 -0
  440. onlinepayments/sdk/merchant/services/i_services_client.py +96 -0
  441. onlinepayments/sdk/merchant/services/services_client.py +167 -0
  442. onlinepayments/sdk/merchant/sessions/__init__.py +4 -0
  443. onlinepayments/sdk/merchant/sessions/i_sessions_client.py +35 -0
  444. onlinepayments/sdk/merchant/sessions/sessions_client.py +62 -0
  445. onlinepayments/sdk/merchant/subsequent/__init__.py +4 -0
  446. onlinepayments/sdk/merchant/subsequent/i_subsequent_client.py +37 -0
  447. onlinepayments/sdk/merchant/subsequent/subsequent_client.py +67 -0
  448. onlinepayments/sdk/merchant/tokenization/__init__.py +4 -0
  449. onlinepayments/sdk/merchant/tokenization/get_card_data_by_payments_params.py +48 -0
  450. onlinepayments/sdk/merchant/tokenization/get_card_data_by_tokens_params.py +48 -0
  451. onlinepayments/sdk/merchant/tokenization/i_tokenization_client.py +77 -0
  452. onlinepayments/sdk/merchant/tokenization/tokenization_client.py +131 -0
  453. onlinepayments/sdk/merchant/tokens/__init__.py +4 -0
  454. onlinepayments/sdk/merchant/tokens/i_tokens_client.py +74 -0
  455. onlinepayments/sdk/merchant/tokens/tokens_client.py +135 -0
  456. onlinepayments/sdk/merchant/webhooks/__init__.py +4 -0
  457. onlinepayments/sdk/merchant/webhooks/i_webhooks_client.py +55 -0
  458. onlinepayments/sdk/merchant/webhooks/webhooks_client.py +97 -0
  459. onlinepayments/sdk/platform_exception.py +19 -0
  460. onlinepayments/sdk/proxy_configuration.py +102 -0
  461. onlinepayments/sdk/reference_exception.py +19 -0
  462. onlinepayments/sdk/validation_exception.py +19 -0
  463. onlinepayments/sdk/webhooks/__init__.py +0 -0
  464. onlinepayments/sdk/webhooks/api_version_mismatch_exception.py +24 -0
  465. onlinepayments/sdk/webhooks/in_memory_secret_key_store.py +48 -0
  466. onlinepayments/sdk/webhooks/secret_key_not_available_exception.py +18 -0
  467. onlinepayments/sdk/webhooks/secret_key_store.py +15 -0
  468. onlinepayments/sdk/webhooks/signature_validation_exception.py +17 -0
  469. onlinepayments/sdk/webhooks/signature_validator.py +56 -0
  470. onlinepayments/sdk/webhooks/webhooks_helper.py +52 -0
  471. onlinepayments_sdk_python3-7.4.1.dist-info/METADATA +154 -0
  472. onlinepayments_sdk_python3-7.4.1.dist-info/RECORD +475 -0
  473. onlinepayments_sdk_python3-7.4.1.dist-info/WHEEL +5 -0
  474. onlinepayments_sdk_python3-7.4.1.dist-info/licenses/LICENSE.txt +52 -0
  475. onlinepayments_sdk_python3-7.4.1.dist-info/top_level.txt +1 -0
@@ -0,0 +1,100 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # This file was automatically generated.
4
+ #
5
+ from typing import Mapping, Optional
6
+
7
+ from .get_product_group_params import GetProductGroupParams
8
+ from .get_product_groups_params import GetProductGroupsParams
9
+ from .i_product_groups_client import IProductGroupsClient
10
+
11
+ from onlinepayments.sdk.api_resource import ApiResource
12
+ from onlinepayments.sdk.call_context import CallContext
13
+ from onlinepayments.sdk.communication.response_exception import ResponseException
14
+ from onlinepayments.sdk.domain.error_response import ErrorResponse
15
+ from onlinepayments.sdk.domain.get_payment_product_groups_response import GetPaymentProductGroupsResponse
16
+ from onlinepayments.sdk.domain.payment_product_group import PaymentProductGroup
17
+ from onlinepayments.sdk.exception_factory import create_exception
18
+
19
+
20
+ class ProductGroupsClient(ApiResource, IProductGroupsClient):
21
+ """
22
+ ProductGroups client. Thread-safe.
23
+ """
24
+
25
+ def __init__(self, parent: ApiResource, path_context: Optional[Mapping[str, str]]):
26
+ """
27
+ :param parent: :class:`onlinepayments.sdk.api_resource.ApiResource`
28
+ :param path_context: Mapping[str, str]
29
+ """
30
+ super(ProductGroupsClient, self).__init__(parent=parent, path_context=path_context)
31
+
32
+ def get_product_groups(self, query: GetProductGroupsParams, context: Optional[CallContext] = None) -> GetPaymentProductGroupsResponse:
33
+ """
34
+ Resource /v2/{merchantId}/productgroups - Get product groups
35
+
36
+ :param query: :class:`onlinepayments.sdk.merchant.productgroups.get_product_groups_params.GetProductGroupsParams`
37
+ :param context: :class:`onlinepayments.sdk.call_context.CallContext`
38
+ :return: :class:`onlinepayments.sdk.domain.get_payment_product_groups_response.GetPaymentProductGroupsResponse`
39
+ :raise IdempotenceException: if an idempotent request caused a conflict (HTTP status code 409)
40
+ :raise ValidationException: if the request was not correct and couldn't be processed (HTTP status code 400)
41
+ :raise AuthorizationException: if the request was not allowed (HTTP status code 403)
42
+ :raise ReferenceException: if an object was attempted to be referenced that doesn't exist or has been removed,
43
+ or there was a conflict (HTTP status code 404, 409 or 410)
44
+ :raise PlatformException: if something went wrong at the payment platform,
45
+ the payment platform was unable to process a message from a downstream partner/acquirer,
46
+ or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
47
+ :raise ApiException: if the payment platform returned any other error
48
+ """
49
+ uri = self._instantiate_uri("/v2/{merchantId}/productgroups", None)
50
+
51
+
52
+ try:
53
+ return self._communicator.get(
54
+ uri,
55
+ self._client_headers,
56
+ query,
57
+ GetPaymentProductGroupsResponse,
58
+ context)
59
+
60
+ except ResponseException as e:
61
+ error_type = ErrorResponse
62
+ error_object = self._communicator.marshaller.unmarshal(e.body, error_type)
63
+ raise create_exception(e.status_code, e.body, error_object, context)
64
+
65
+ def get_product_group(self, payment_product_group_id: str, query: GetProductGroupParams, context: Optional[CallContext] = None) -> PaymentProductGroup:
66
+ """
67
+ Resource /v2/{merchantId}/productgroups/{paymentProductGroupId} - Get product group
68
+
69
+ :param payment_product_group_id: str
70
+ :param query: :class:`onlinepayments.sdk.merchant.productgroups.get_product_group_params.GetProductGroupParams`
71
+ :param context: :class:`onlinepayments.sdk.call_context.CallContext`
72
+ :return: :class:`onlinepayments.sdk.domain.payment_product_group.PaymentProductGroup`
73
+ :raise IdempotenceException: if an idempotent request caused a conflict (HTTP status code 409)
74
+ :raise ValidationException: if the request was not correct and couldn't be processed (HTTP status code 400)
75
+ :raise AuthorizationException: if the request was not allowed (HTTP status code 403)
76
+ :raise ReferenceException: if an object was attempted to be referenced that doesn't exist or has been removed,
77
+ or there was a conflict (HTTP status code 404, 409 or 410)
78
+ :raise PlatformException: if something went wrong at the payment platform,
79
+ the payment platform was unable to process a message from a downstream partner/acquirer,
80
+ or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
81
+ :raise ApiException: if the payment platform returned any other error
82
+ """
83
+ path_context = {
84
+ "paymentProductGroupId": payment_product_group_id,
85
+ }
86
+ uri = self._instantiate_uri("/v2/{merchantId}/productgroups/{paymentProductGroupId}", path_context)
87
+
88
+
89
+ try:
90
+ return self._communicator.get(
91
+ uri,
92
+ self._client_headers,
93
+ query,
94
+ PaymentProductGroup,
95
+ context)
96
+
97
+ except ResponseException as e:
98
+ error_type = ErrorResponse
99
+ error_object = self._communicator.marshaller.unmarshal(e.body, error_type)
100
+ raise create_exception(e.status_code, e.body, error_object, context)
@@ -0,0 +1,4 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # This file was automatically generated.
4
+ #
@@ -0,0 +1,89 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # This file was automatically generated.
4
+ #
5
+ from typing import List, Optional
6
+
7
+ from onlinepayments.sdk.communication.param_request import ParamRequest
8
+ from onlinepayments.sdk.communication.request_param import RequestParam
9
+
10
+
11
+ class GetPaymentProductNetworksParams(ParamRequest):
12
+ """
13
+ Query parameters for Get payment product networks
14
+ """
15
+
16
+ __country_code: Optional[str] = None
17
+ __currency_code: Optional[str] = None
18
+ __amount: Optional[int] = None
19
+ __is_recurring: Optional[bool] = None
20
+
21
+ @property
22
+ def country_code(self) -> Optional[str]:
23
+ """
24
+ | ISO 3166-1 alpha-2 country code
25
+
26
+ Type: str
27
+ """
28
+ return self.__country_code
29
+
30
+ @country_code.setter
31
+ def country_code(self, value: Optional[str]) -> None:
32
+ self.__country_code = value
33
+
34
+ @property
35
+ def currency_code(self) -> Optional[str]:
36
+ """
37
+ | Three-letter ISO currency code representing the currency for the amount
38
+
39
+ Type: str
40
+ """
41
+ return self.__currency_code
42
+
43
+ @currency_code.setter
44
+ def currency_code(self, value: Optional[str]) -> None:
45
+ self.__currency_code = value
46
+
47
+ @property
48
+ def amount(self) -> Optional[int]:
49
+ """
50
+ | Amount in cents and always having 2 decimals
51
+
52
+ Type: int
53
+ """
54
+ return self.__amount
55
+
56
+ @amount.setter
57
+ def amount(self, value: Optional[int]) -> None:
58
+ self.__amount = value
59
+
60
+ @property
61
+ def is_recurring(self) -> Optional[bool]:
62
+ """
63
+ | This allows you to filter networks based on their support for recurring or not
64
+
65
+ * true
66
+ * false
67
+
68
+ Type: bool
69
+ """
70
+ return self.__is_recurring
71
+
72
+ @is_recurring.setter
73
+ def is_recurring(self, value: Optional[bool]) -> None:
74
+ self.__is_recurring = value
75
+
76
+ def to_request_parameters(self) -> List[RequestParam]:
77
+ """
78
+ :return: list[RequestParam]
79
+ """
80
+ result = []
81
+ if self.country_code is not None:
82
+ result.append(RequestParam("countryCode", self.country_code))
83
+ if self.currency_code is not None:
84
+ result.append(RequestParam("currencyCode", self.currency_code))
85
+ if self.amount is not None:
86
+ result.append(RequestParam("amount", str(self.amount)))
87
+ if self.is_recurring is not None:
88
+ result.append(RequestParam("isRecurring", str(self.is_recurring)))
89
+ return result
@@ -0,0 +1,138 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # This file was automatically generated.
4
+ #
5
+ from typing import List, Optional
6
+
7
+ from onlinepayments.sdk.communication.param_request import ParamRequest
8
+ from onlinepayments.sdk.communication.request_param import RequestParam
9
+
10
+
11
+ class GetPaymentProductParams(ParamRequest):
12
+ """
13
+ Query parameters for Get payment product
14
+ """
15
+
16
+ __country_code: Optional[str] = None
17
+ __currency_code: Optional[str] = None
18
+ __locale: Optional[str] = None
19
+ __amount: Optional[int] = None
20
+ __is_recurring: Optional[bool] = None
21
+ __hide: Optional[List[str]] = None
22
+
23
+ @property
24
+ def country_code(self) -> Optional[str]:
25
+ """
26
+ | ISO 3166-1 alpha-2 country code of the transaction
27
+
28
+ Type: str
29
+ """
30
+ return self.__country_code
31
+
32
+ @country_code.setter
33
+ def country_code(self, value: Optional[str]) -> None:
34
+ self.__country_code = value
35
+
36
+ @property
37
+ def currency_code(self) -> Optional[str]:
38
+ """
39
+ | Three-letter ISO currency code representing the currency for the amount
40
+
41
+ Type: str
42
+ """
43
+ return self.__currency_code
44
+
45
+ @currency_code.setter
46
+ def currency_code(self, value: Optional[str]) -> None:
47
+ self.__currency_code = value
48
+
49
+ @property
50
+ def locale(self) -> Optional[str]:
51
+ """
52
+ | Locale used in the GUI towards the consumer.
53
+
54
+ Type: str
55
+ """
56
+ return self.__locale
57
+
58
+ @locale.setter
59
+ def locale(self, value: Optional[str]) -> None:
60
+ self.__locale = value
61
+
62
+ @property
63
+ def amount(self) -> Optional[int]:
64
+ """
65
+ | Whole amount in cents (not containing any decimals)
66
+
67
+ Type: int
68
+ """
69
+ return self.__amount
70
+
71
+ @amount.setter
72
+ def amount(self, value: Optional[int]) -> None:
73
+ self.__amount = value
74
+
75
+ @property
76
+ def is_recurring(self) -> Optional[bool]:
77
+ """
78
+ | This allows you to filter payment products based on their support for recurring payments.
79
+
80
+ * true - return only payment products that support recurring payments,
81
+ * false - return all payment products that support one-time transactions. Payment products that support recurring products are usually also part of this list.
82
+
83
+ Type: bool
84
+ """
85
+ return self.__is_recurring
86
+
87
+ @is_recurring.setter
88
+ def is_recurring(self, value: Optional[bool]) -> None:
89
+ self.__is_recurring = value
90
+
91
+ @property
92
+ def hide(self) -> Optional[List[str]]:
93
+ """
94
+ | Allows you to hide elements from the response, reducing the amount of data that needs to be returned to your client. Possible options are:
95
+
96
+ * fields - Do not return any data on fields of the payment product
97
+ * accountsOnFile - Do not return any accounts on file data
98
+ * translations - Do not return any label texts associated with the payment products
99
+ * productsWithoutFields - Do not return products that require any additional data to be captured
100
+ * productsWithoutInstructions - Do not return products that show instructions
101
+ * productsWithRedirects - Do not return products that require a redirect to a third party. Note that products that involve potential redirects related to 3D Secure authentication are not hidden
102
+
103
+ Type: list[str]
104
+ """
105
+ return self.__hide
106
+
107
+ @hide.setter
108
+ def hide(self, value: Optional[List[str]]) -> None:
109
+ self.__hide = value
110
+
111
+ def add_hide(self, value: str) -> None:
112
+ """
113
+ :param value: str
114
+ """
115
+ if self.hide is None:
116
+ self.hide = []
117
+ self.hide.append(value)
118
+
119
+ def to_request_parameters(self) -> List[RequestParam]:
120
+ """
121
+ :return: list[RequestParam]
122
+ """
123
+ result = []
124
+ if self.country_code is not None:
125
+ result.append(RequestParam("countryCode", self.country_code))
126
+ if self.currency_code is not None:
127
+ result.append(RequestParam("currencyCode", self.currency_code))
128
+ if self.locale is not None:
129
+ result.append(RequestParam("locale", self.locale))
130
+ if self.amount is not None:
131
+ result.append(RequestParam("amount", str(self.amount)))
132
+ if self.is_recurring is not None:
133
+ result.append(RequestParam("isRecurring", str(self.is_recurring)))
134
+ if self.hide is not None:
135
+ for hide_element in self.hide:
136
+ if hide_element is not None:
137
+ result.append(RequestParam("hide", hide_element))
138
+ return result
@@ -0,0 +1,138 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # This file was automatically generated.
4
+ #
5
+ from typing import List, Optional
6
+
7
+ from onlinepayments.sdk.communication.param_request import ParamRequest
8
+ from onlinepayments.sdk.communication.request_param import RequestParam
9
+
10
+
11
+ class GetPaymentProductsParams(ParamRequest):
12
+ """
13
+ Query parameters for Get payment products
14
+ """
15
+
16
+ __country_code: Optional[str] = None
17
+ __currency_code: Optional[str] = None
18
+ __locale: Optional[str] = None
19
+ __amount: Optional[int] = None
20
+ __is_recurring: Optional[bool] = None
21
+ __hide: Optional[List[str]] = None
22
+
23
+ @property
24
+ def country_code(self) -> Optional[str]:
25
+ """
26
+ | ISO 3166-1 alpha-2 country code of the transaction
27
+
28
+ Type: str
29
+ """
30
+ return self.__country_code
31
+
32
+ @country_code.setter
33
+ def country_code(self, value: Optional[str]) -> None:
34
+ self.__country_code = value
35
+
36
+ @property
37
+ def currency_code(self) -> Optional[str]:
38
+ """
39
+ | Three-letter ISO currency code representing the currency for the amount
40
+
41
+ Type: str
42
+ """
43
+ return self.__currency_code
44
+
45
+ @currency_code.setter
46
+ def currency_code(self, value: Optional[str]) -> None:
47
+ self.__currency_code = value
48
+
49
+ @property
50
+ def locale(self) -> Optional[str]:
51
+ """
52
+ | Locale used in the GUI towards the consumer.
53
+
54
+ Type: str
55
+ """
56
+ return self.__locale
57
+
58
+ @locale.setter
59
+ def locale(self, value: Optional[str]) -> None:
60
+ self.__locale = value
61
+
62
+ @property
63
+ def amount(self) -> Optional[int]:
64
+ """
65
+ | Whole amount in cents (not containing any decimals)
66
+
67
+ Type: int
68
+ """
69
+ return self.__amount
70
+
71
+ @amount.setter
72
+ def amount(self, value: Optional[int]) -> None:
73
+ self.__amount = value
74
+
75
+ @property
76
+ def is_recurring(self) -> Optional[bool]:
77
+ """
78
+ | This allows you to filter payment products based on their support for recurring payments.
79
+
80
+ * true - return only payment products that support recurring payments,
81
+ * false - return all payment products that support one-time transactions. Payment products that support recurring products are usually also part of this list.
82
+
83
+ Type: bool
84
+ """
85
+ return self.__is_recurring
86
+
87
+ @is_recurring.setter
88
+ def is_recurring(self, value: Optional[bool]) -> None:
89
+ self.__is_recurring = value
90
+
91
+ @property
92
+ def hide(self) -> Optional[List[str]]:
93
+ """
94
+ | Allows you to hide elements from the response, reducing the amount of data that needs to be returned to your client. Possible options are:
95
+
96
+ * fields - Do not return any data on fields of the payment product
97
+ * accountsOnFile - Do not return any accounts on file data
98
+ * translations - Do not return any label texts associated with the payment products
99
+ * productsWithoutFields - Do not return products that require any additional data to be captured
100
+ * productsWithoutInstructions - Do not return products that show instructions
101
+ * productsWithRedirects - Do not return products that require a redirect to a third party. Note that products that involve potential redirects related to 3D Secure authentication are not hidden
102
+
103
+ Type: list[str]
104
+ """
105
+ return self.__hide
106
+
107
+ @hide.setter
108
+ def hide(self, value: Optional[List[str]]) -> None:
109
+ self.__hide = value
110
+
111
+ def add_hide(self, value: str) -> None:
112
+ """
113
+ :param value: str
114
+ """
115
+ if self.hide is None:
116
+ self.hide = []
117
+ self.hide.append(value)
118
+
119
+ def to_request_parameters(self) -> List[RequestParam]:
120
+ """
121
+ :return: list[RequestParam]
122
+ """
123
+ result = []
124
+ if self.country_code is not None:
125
+ result.append(RequestParam("countryCode", self.country_code))
126
+ if self.currency_code is not None:
127
+ result.append(RequestParam("currencyCode", self.currency_code))
128
+ if self.locale is not None:
129
+ result.append(RequestParam("locale", self.locale))
130
+ if self.amount is not None:
131
+ result.append(RequestParam("amount", str(self.amount)))
132
+ if self.is_recurring is not None:
133
+ result.append(RequestParam("isRecurring", str(self.is_recurring)))
134
+ if self.hide is not None:
135
+ for hide_element in self.hide:
136
+ if hide_element is not None:
137
+ result.append(RequestParam("hide", hide_element))
138
+ return result
@@ -0,0 +1,54 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # This file was automatically generated.
4
+ #
5
+ from typing import List, Optional
6
+
7
+ from onlinepayments.sdk.communication.param_request import ParamRequest
8
+ from onlinepayments.sdk.communication.request_param import RequestParam
9
+
10
+
11
+ class GetProductDirectoryParams(ParamRequest):
12
+ """
13
+ Query parameters for Get payment product directory
14
+ """
15
+
16
+ __country_code: Optional[str] = None
17
+ __currency_code: Optional[str] = None
18
+
19
+ @property
20
+ def country_code(self) -> Optional[str]:
21
+ """
22
+ | ISO 3166-1 alpha-2 country code
23
+
24
+ Type: str
25
+ """
26
+ return self.__country_code
27
+
28
+ @country_code.setter
29
+ def country_code(self, value: Optional[str]) -> None:
30
+ self.__country_code = value
31
+
32
+ @property
33
+ def currency_code(self) -> Optional[str]:
34
+ """
35
+ | Three-letter ISO currency code representing the currency of the transaction
36
+
37
+ Type: str
38
+ """
39
+ return self.__currency_code
40
+
41
+ @currency_code.setter
42
+ def currency_code(self, value: Optional[str]) -> None:
43
+ self.__currency_code = value
44
+
45
+ def to_request_parameters(self) -> List[RequestParam]:
46
+ """
47
+ :return: list[RequestParam]
48
+ """
49
+ result = []
50
+ if self.country_code is not None:
51
+ result.append(RequestParam("countryCode", self.country_code))
52
+ if self.currency_code is not None:
53
+ result.append(RequestParam("currencyCode", self.currency_code))
54
+ return result
@@ -0,0 +1,102 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # This file was automatically generated.
4
+ #
5
+ from abc import ABC, abstractmethod
6
+ from typing import Optional
7
+
8
+ from .get_payment_product_networks_params import GetPaymentProductNetworksParams
9
+ from .get_payment_product_params import GetPaymentProductParams
10
+ from .get_payment_products_params import GetPaymentProductsParams
11
+ from .get_product_directory_params import GetProductDirectoryParams
12
+
13
+ from onlinepayments.sdk.call_context import CallContext
14
+ from onlinepayments.sdk.domain.get_payment_products_response import GetPaymentProductsResponse
15
+ from onlinepayments.sdk.domain.payment_product import PaymentProduct
16
+ from onlinepayments.sdk.domain.payment_product_networks_response import PaymentProductNetworksResponse
17
+ from onlinepayments.sdk.domain.product_directory import ProductDirectory
18
+
19
+
20
+ class IProductsClient(ABC):
21
+ """
22
+ Products client interface. Thread-safe.
23
+ """
24
+
25
+ @abstractmethod
26
+ def get_payment_products(self, query: GetPaymentProductsParams, context: Optional[CallContext] = None) -> GetPaymentProductsResponse:
27
+ """
28
+ Resource /v2/{merchantId}/products - Get payment products
29
+
30
+ :param query: :class:`onlinepayments.sdk.merchant.products.get_payment_products_params.GetPaymentProductsParams`
31
+ :param context: :class:`onlinepayments.sdk.call_context.CallContext`
32
+ :return: :class:`onlinepayments.sdk.domain.get_payment_products_response.GetPaymentProductsResponse`
33
+ :raise IdempotenceException: if an idempotent request caused a conflict (HTTP status code 409)
34
+ :raise ValidationException: if the request was not correct and couldn't be processed (HTTP status code 400)
35
+ :raise AuthorizationException: if the request was not allowed (HTTP status code 403)
36
+ :raise ReferenceException: if an object was attempted to be referenced that doesn't exist or has been removed,
37
+ or there was a conflict (HTTP status code 404, 409 or 410)
38
+ :raise PlatformException: if something went wrong at the payment platform,
39
+ the payment platform was unable to process a message from a downstream partner/acquirer,
40
+ or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
41
+ :raise ApiException: if the payment platform returned any other error
42
+ """
43
+
44
+ @abstractmethod
45
+ def get_payment_product(self, payment_product_id: int, query: GetPaymentProductParams, context: Optional[CallContext] = None) -> PaymentProduct:
46
+ """
47
+ Resource /v2/{merchantId}/products/{paymentProductId} - Get payment product
48
+
49
+ :param payment_product_id: int
50
+ :param query: :class:`onlinepayments.sdk.merchant.products.get_payment_product_params.GetPaymentProductParams`
51
+ :param context: :class:`onlinepayments.sdk.call_context.CallContext`
52
+ :return: :class:`onlinepayments.sdk.domain.payment_product.PaymentProduct`
53
+ :raise IdempotenceException: if an idempotent request caused a conflict (HTTP status code 409)
54
+ :raise ValidationException: if the request was not correct and couldn't be processed (HTTP status code 400)
55
+ :raise AuthorizationException: if the request was not allowed (HTTP status code 403)
56
+ :raise ReferenceException: if an object was attempted to be referenced that doesn't exist or has been removed,
57
+ or there was a conflict (HTTP status code 404, 409 or 410)
58
+ :raise PlatformException: if something went wrong at the payment platform,
59
+ the payment platform was unable to process a message from a downstream partner/acquirer,
60
+ or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
61
+ :raise ApiException: if the payment platform returned any other error
62
+ """
63
+
64
+ @abstractmethod
65
+ def get_payment_product_networks(self, payment_product_id: int, query: GetPaymentProductNetworksParams, context: Optional[CallContext] = None) -> PaymentProductNetworksResponse:
66
+ """
67
+ Resource /v2/{merchantId}/products/{paymentProductId}/networks - Get payment product networks
68
+
69
+ :param payment_product_id: int
70
+ :param query: :class:`onlinepayments.sdk.merchant.products.get_payment_product_networks_params.GetPaymentProductNetworksParams`
71
+ :param context: :class:`onlinepayments.sdk.call_context.CallContext`
72
+ :return: :class:`onlinepayments.sdk.domain.payment_product_networks_response.PaymentProductNetworksResponse`
73
+ :raise IdempotenceException: if an idempotent request caused a conflict (HTTP status code 409)
74
+ :raise ValidationException: if the request was not correct and couldn't be processed (HTTP status code 400)
75
+ :raise AuthorizationException: if the request was not allowed (HTTP status code 403)
76
+ :raise ReferenceException: if an object was attempted to be referenced that doesn't exist or has been removed,
77
+ or there was a conflict (HTTP status code 404, 409 or 410)
78
+ :raise PlatformException: if something went wrong at the payment platform,
79
+ the payment platform was unable to process a message from a downstream partner/acquirer,
80
+ or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
81
+ :raise ApiException: if the payment platform returned any other error
82
+ """
83
+
84
+ @abstractmethod
85
+ def get_product_directory(self, payment_product_id: int, query: GetProductDirectoryParams, context: Optional[CallContext] = None) -> ProductDirectory:
86
+ """
87
+ Resource /v2/{merchantId}/products/{paymentProductId}/directory - Get payment product directory
88
+
89
+ :param payment_product_id: int
90
+ :param query: :class:`onlinepayments.sdk.merchant.products.get_product_directory_params.GetProductDirectoryParams`
91
+ :param context: :class:`onlinepayments.sdk.call_context.CallContext`
92
+ :return: :class:`onlinepayments.sdk.domain.product_directory.ProductDirectory`
93
+ :raise IdempotenceException: if an idempotent request caused a conflict (HTTP status code 409)
94
+ :raise ValidationException: if the request was not correct and couldn't be processed (HTTP status code 400)
95
+ :raise AuthorizationException: if the request was not allowed (HTTP status code 403)
96
+ :raise ReferenceException: if an object was attempted to be referenced that doesn't exist or has been removed,
97
+ or there was a conflict (HTTP status code 404, 409 or 410)
98
+ :raise PlatformException: if something went wrong at the payment platform,
99
+ the payment platform was unable to process a message from a downstream partner/acquirer,
100
+ or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
101
+ :raise ApiException: if the payment platform returned any other error
102
+ """