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,344 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # This file was automatically generated.
4
+ #
5
+ from datetime import datetime
6
+ from typing import Optional
7
+
8
+ from .card_payment_method_specific_input_base import CardPaymentMethodSpecificInputBase
9
+ from .data_object import DataObject
10
+ from .feedbacks import Feedbacks
11
+ from .fraud_fields import FraudFields
12
+ from .hosted_checkout_specific_input import HostedCheckoutSpecificInput
13
+ from .mobile_payment_method_hosted_checkout_specific_input import MobilePaymentMethodHostedCheckoutSpecificInput
14
+ from .order import Order
15
+ from .payment_link_order_input import PaymentLinkOrderInput
16
+ from .payment_link_specific_input import PaymentLinkSpecificInput
17
+ from .redirect_payment_method_specific_input import RedirectPaymentMethodSpecificInput
18
+ from .sepa_direct_debit_payment_method_specific_input_base import SepaDirectDebitPaymentMethodSpecificInputBase
19
+
20
+
21
+ class CreatePaymentLinkRequest(DataObject):
22
+
23
+ __card_payment_method_specific_input: Optional[CardPaymentMethodSpecificInputBase] = None
24
+ __description: Optional[str] = None
25
+ __display_qr_code: Optional[bool] = None
26
+ __expiration_date: Optional[datetime] = None
27
+ __feedbacks: Optional[Feedbacks] = None
28
+ __fraud_fields: Optional[FraudFields] = None
29
+ __hosted_checkout_specific_input: Optional[HostedCheckoutSpecificInput] = None
30
+ __is_reusable_link: Optional[bool] = None
31
+ __mobile_payment_method_specific_input: Optional[MobilePaymentMethodHostedCheckoutSpecificInput] = None
32
+ __order: Optional[Order] = None
33
+ __payment_link_order: Optional[PaymentLinkOrderInput] = None
34
+ __payment_link_specific_input: Optional[PaymentLinkSpecificInput] = None
35
+ __recipient_name: Optional[str] = None
36
+ __redirect_payment_method_specific_input: Optional[RedirectPaymentMethodSpecificInput] = None
37
+ __sepa_direct_debit_payment_method_specific_input: Optional[SepaDirectDebitPaymentMethodSpecificInputBase] = None
38
+
39
+ @property
40
+ def card_payment_method_specific_input(self) -> Optional[CardPaymentMethodSpecificInputBase]:
41
+ """
42
+ | Object containing the specific input details for card payments
43
+
44
+ Type: :class:`onlinepayments.sdk.domain.card_payment_method_specific_input_base.CardPaymentMethodSpecificInputBase`
45
+ """
46
+ return self.__card_payment_method_specific_input
47
+
48
+ @card_payment_method_specific_input.setter
49
+ def card_payment_method_specific_input(self, value: Optional[CardPaymentMethodSpecificInputBase]) -> None:
50
+ self.__card_payment_method_specific_input = value
51
+
52
+ @property
53
+ def description(self) -> Optional[str]:
54
+ """
55
+ | A note related to the created payment link.
56
+ |
57
+ | Deprecated: Use ``paymentLinkSpecificInput/description`` instead.
58
+
59
+ Type: str
60
+
61
+ Deprecated; A note related to the created payment link. Use paymentLinkSpecificInput/description instead.
62
+ """
63
+ return self.__description
64
+
65
+ @description.setter
66
+ def description(self, value: Optional[str]) -> None:
67
+ self.__description = value
68
+
69
+ @property
70
+ def display_qr_code(self) -> Optional[bool]:
71
+ """
72
+ | Indicates whether to include a QR code in the response. When set to true, the response will contain a Base64 encoded QR code image containing the payment link URL.
73
+
74
+ Type: bool
75
+ """
76
+ return self.__display_qr_code
77
+
78
+ @display_qr_code.setter
79
+ def display_qr_code(self, value: Optional[bool]) -> None:
80
+ self.__display_qr_code = value
81
+
82
+ @property
83
+ def expiration_date(self) -> Optional[datetime]:
84
+ """
85
+ | The date after which the payment link will not be usable to complete the payment. The date sent cannot be more than 6 months in the future or a past date. It must also contain the UTC offset.
86
+ |
87
+ | Deprecated: Use ``paymentLinkSpecificInput/expirationDate`` instead.
88
+
89
+ Type: datetime
90
+
91
+ Deprecated; The date after which the payment link will not be usable to complete the payment. The date sent cannot be more than 6 months in the future or a past date. It must also contain the UTC offset. Use paymentLinkSpecificInput/expirationDate instead.
92
+ """
93
+ return self.__expiration_date
94
+
95
+ @expiration_date.setter
96
+ def expiration_date(self, value: Optional[datetime]) -> None:
97
+ self.__expiration_date = value
98
+
99
+ @property
100
+ def feedbacks(self) -> Optional[Feedbacks]:
101
+ """
102
+ | This section will contain feedback Urls to provide feedback on the payment.
103
+
104
+ Type: :class:`onlinepayments.sdk.domain.feedbacks.Feedbacks`
105
+ """
106
+ return self.__feedbacks
107
+
108
+ @feedbacks.setter
109
+ def feedbacks(self, value: Optional[Feedbacks]) -> None:
110
+ self.__feedbacks = value
111
+
112
+ @property
113
+ def fraud_fields(self) -> Optional[FraudFields]:
114
+ """
115
+ | Object containing additional data that will be used to assess the risk of fraud
116
+
117
+ Type: :class:`onlinepayments.sdk.domain.fraud_fields.FraudFields`
118
+ """
119
+ return self.__fraud_fields
120
+
121
+ @fraud_fields.setter
122
+ def fraud_fields(self, value: Optional[FraudFields]) -> None:
123
+ self.__fraud_fields = value
124
+
125
+ @property
126
+ def hosted_checkout_specific_input(self) -> Optional[HostedCheckoutSpecificInput]:
127
+ """
128
+ | Object containing hosted checkout specific data
129
+
130
+ Type: :class:`onlinepayments.sdk.domain.hosted_checkout_specific_input.HostedCheckoutSpecificInput`
131
+ """
132
+ return self.__hosted_checkout_specific_input
133
+
134
+ @hosted_checkout_specific_input.setter
135
+ def hosted_checkout_specific_input(self, value: Optional[HostedCheckoutSpecificInput]) -> None:
136
+ self.__hosted_checkout_specific_input = value
137
+
138
+ @property
139
+ def is_reusable_link(self) -> Optional[bool]:
140
+ """
141
+ | Indicates if the payment link can be used multiple times. The default value for this property is false
142
+
143
+ Type: bool
144
+ """
145
+ return self.__is_reusable_link
146
+
147
+ @is_reusable_link.setter
148
+ def is_reusable_link(self, value: Optional[bool]) -> None:
149
+ self.__is_reusable_link = value
150
+
151
+ @property
152
+ def mobile_payment_method_specific_input(self) -> Optional[MobilePaymentMethodHostedCheckoutSpecificInput]:
153
+ """
154
+ | Object containing the specific input details for mobile payments
155
+
156
+ Type: :class:`onlinepayments.sdk.domain.mobile_payment_method_hosted_checkout_specific_input.MobilePaymentMethodHostedCheckoutSpecificInput`
157
+ """
158
+ return self.__mobile_payment_method_specific_input
159
+
160
+ @mobile_payment_method_specific_input.setter
161
+ def mobile_payment_method_specific_input(self, value: Optional[MobilePaymentMethodHostedCheckoutSpecificInput]) -> None:
162
+ self.__mobile_payment_method_specific_input = value
163
+
164
+ @property
165
+ def order(self) -> Optional[Order]:
166
+ """
167
+ | The order object contains order-related data; Please note that this object is required to submit the amount.
168
+
169
+ Type: :class:`onlinepayments.sdk.domain.order.Order`
170
+ """
171
+ return self.__order
172
+
173
+ @order.setter
174
+ def order(self, value: Optional[Order]) -> None:
175
+ self.__order = value
176
+
177
+ @property
178
+ def payment_link_order(self) -> Optional[PaymentLinkOrderInput]:
179
+ """
180
+ | An object containing the details of the related payment input.
181
+ |
182
+ | Deprecated: All properties in ``paymentLinkOrder`` are deprecated. Use corresponding values as noted below: | Property | Replacement | | - | - | | merchantReference | ``references/merchantReference`` | | amount | ``order/amountOfMoney`` | | surchargeSpecificInput | ``order/surchargeSpecificInput`` |
183
+
184
+ Type: :class:`onlinepayments.sdk.domain.payment_link_order_input.PaymentLinkOrderInput`
185
+ """
186
+ return self.__payment_link_order
187
+
188
+ @payment_link_order.setter
189
+ def payment_link_order(self, value: Optional[PaymentLinkOrderInput]) -> None:
190
+ self.__payment_link_order = value
191
+
192
+ @property
193
+ def payment_link_specific_input(self) -> Optional[PaymentLinkSpecificInput]:
194
+ """
195
+ | An object containing details specific to payment link creation
196
+
197
+ Type: :class:`onlinepayments.sdk.domain.payment_link_specific_input.PaymentLinkSpecificInput`
198
+ """
199
+ return self.__payment_link_specific_input
200
+
201
+ @payment_link_specific_input.setter
202
+ def payment_link_specific_input(self, value: Optional[PaymentLinkSpecificInput]) -> None:
203
+ self.__payment_link_specific_input = value
204
+
205
+ @property
206
+ def recipient_name(self) -> Optional[str]:
207
+ """
208
+ | The payment link recipient name.
209
+ |
210
+ | Deprecated: Use ``paymentLinkSpecificInput/recipientName`` instead.
211
+
212
+ Type: str
213
+
214
+ Deprecated; The payment link recipient name. Use paymentLinkSpecificInput/recipientName instead.
215
+ """
216
+ return self.__recipient_name
217
+
218
+ @recipient_name.setter
219
+ def recipient_name(self, value: Optional[str]) -> None:
220
+ self.__recipient_name = value
221
+
222
+ @property
223
+ def redirect_payment_method_specific_input(self) -> Optional[RedirectPaymentMethodSpecificInput]:
224
+ """
225
+ | Object containing the specific input details for payments that involve redirects to 3rd parties to complete, like iDeal and PayPal
226
+
227
+ Type: :class:`onlinepayments.sdk.domain.redirect_payment_method_specific_input.RedirectPaymentMethodSpecificInput`
228
+ """
229
+ return self.__redirect_payment_method_specific_input
230
+
231
+ @redirect_payment_method_specific_input.setter
232
+ def redirect_payment_method_specific_input(self, value: Optional[RedirectPaymentMethodSpecificInput]) -> None:
233
+ self.__redirect_payment_method_specific_input = value
234
+
235
+ @property
236
+ def sepa_direct_debit_payment_method_specific_input(self) -> Optional[SepaDirectDebitPaymentMethodSpecificInputBase]:
237
+ """
238
+ | Object containing the specific input details for SEPA direct debit payments
239
+
240
+ Type: :class:`onlinepayments.sdk.domain.sepa_direct_debit_payment_method_specific_input_base.SepaDirectDebitPaymentMethodSpecificInputBase`
241
+ """
242
+ return self.__sepa_direct_debit_payment_method_specific_input
243
+
244
+ @sepa_direct_debit_payment_method_specific_input.setter
245
+ def sepa_direct_debit_payment_method_specific_input(self, value: Optional[SepaDirectDebitPaymentMethodSpecificInputBase]) -> None:
246
+ self.__sepa_direct_debit_payment_method_specific_input = value
247
+
248
+ def to_dictionary(self) -> dict:
249
+ dictionary = super(CreatePaymentLinkRequest, self).to_dictionary()
250
+ if self.card_payment_method_specific_input is not None:
251
+ dictionary['cardPaymentMethodSpecificInput'] = self.card_payment_method_specific_input.to_dictionary()
252
+ if self.description is not None:
253
+ dictionary['description'] = self.description
254
+ if self.display_qr_code is not None:
255
+ dictionary['displayQRCode'] = self.display_qr_code
256
+ if self.expiration_date is not None:
257
+ dictionary['expirationDate'] = DataObject.format_datetime(self.expiration_date)
258
+ if self.feedbacks is not None:
259
+ dictionary['feedbacks'] = self.feedbacks.to_dictionary()
260
+ if self.fraud_fields is not None:
261
+ dictionary['fraudFields'] = self.fraud_fields.to_dictionary()
262
+ if self.hosted_checkout_specific_input is not None:
263
+ dictionary['hostedCheckoutSpecificInput'] = self.hosted_checkout_specific_input.to_dictionary()
264
+ if self.is_reusable_link is not None:
265
+ dictionary['isReusableLink'] = self.is_reusable_link
266
+ if self.mobile_payment_method_specific_input is not None:
267
+ dictionary['mobilePaymentMethodSpecificInput'] = self.mobile_payment_method_specific_input.to_dictionary()
268
+ if self.order is not None:
269
+ dictionary['order'] = self.order.to_dictionary()
270
+ if self.payment_link_order is not None:
271
+ dictionary['paymentLinkOrder'] = self.payment_link_order.to_dictionary()
272
+ if self.payment_link_specific_input is not None:
273
+ dictionary['paymentLinkSpecificInput'] = self.payment_link_specific_input.to_dictionary()
274
+ if self.recipient_name is not None:
275
+ dictionary['recipientName'] = self.recipient_name
276
+ if self.redirect_payment_method_specific_input is not None:
277
+ dictionary['redirectPaymentMethodSpecificInput'] = self.redirect_payment_method_specific_input.to_dictionary()
278
+ if self.sepa_direct_debit_payment_method_specific_input is not None:
279
+ dictionary['sepaDirectDebitPaymentMethodSpecificInput'] = self.sepa_direct_debit_payment_method_specific_input.to_dictionary()
280
+ return dictionary
281
+
282
+ def from_dictionary(self, dictionary: dict) -> 'CreatePaymentLinkRequest':
283
+ super(CreatePaymentLinkRequest, self).from_dictionary(dictionary)
284
+ if 'cardPaymentMethodSpecificInput' in dictionary:
285
+ if not isinstance(dictionary['cardPaymentMethodSpecificInput'], dict):
286
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['cardPaymentMethodSpecificInput']))
287
+ value = CardPaymentMethodSpecificInputBase()
288
+ self.card_payment_method_specific_input = value.from_dictionary(dictionary['cardPaymentMethodSpecificInput'])
289
+ if 'description' in dictionary:
290
+ self.description = dictionary['description']
291
+ if 'displayQRCode' in dictionary:
292
+ self.display_qr_code = dictionary['displayQRCode']
293
+ if 'expirationDate' in dictionary:
294
+ self.expiration_date = DataObject.parse_datetime(dictionary['expirationDate'])
295
+ if 'feedbacks' in dictionary:
296
+ if not isinstance(dictionary['feedbacks'], dict):
297
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['feedbacks']))
298
+ value = Feedbacks()
299
+ self.feedbacks = value.from_dictionary(dictionary['feedbacks'])
300
+ if 'fraudFields' in dictionary:
301
+ if not isinstance(dictionary['fraudFields'], dict):
302
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['fraudFields']))
303
+ value = FraudFields()
304
+ self.fraud_fields = value.from_dictionary(dictionary['fraudFields'])
305
+ if 'hostedCheckoutSpecificInput' in dictionary:
306
+ if not isinstance(dictionary['hostedCheckoutSpecificInput'], dict):
307
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['hostedCheckoutSpecificInput']))
308
+ value = HostedCheckoutSpecificInput()
309
+ self.hosted_checkout_specific_input = value.from_dictionary(dictionary['hostedCheckoutSpecificInput'])
310
+ if 'isReusableLink' in dictionary:
311
+ self.is_reusable_link = dictionary['isReusableLink']
312
+ if 'mobilePaymentMethodSpecificInput' in dictionary:
313
+ if not isinstance(dictionary['mobilePaymentMethodSpecificInput'], dict):
314
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['mobilePaymentMethodSpecificInput']))
315
+ value = MobilePaymentMethodHostedCheckoutSpecificInput()
316
+ self.mobile_payment_method_specific_input = value.from_dictionary(dictionary['mobilePaymentMethodSpecificInput'])
317
+ if 'order' in dictionary:
318
+ if not isinstance(dictionary['order'], dict):
319
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['order']))
320
+ value = Order()
321
+ self.order = value.from_dictionary(dictionary['order'])
322
+ if 'paymentLinkOrder' in dictionary:
323
+ if not isinstance(dictionary['paymentLinkOrder'], dict):
324
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['paymentLinkOrder']))
325
+ value = PaymentLinkOrderInput()
326
+ self.payment_link_order = value.from_dictionary(dictionary['paymentLinkOrder'])
327
+ if 'paymentLinkSpecificInput' in dictionary:
328
+ if not isinstance(dictionary['paymentLinkSpecificInput'], dict):
329
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['paymentLinkSpecificInput']))
330
+ value = PaymentLinkSpecificInput()
331
+ self.payment_link_specific_input = value.from_dictionary(dictionary['paymentLinkSpecificInput'])
332
+ if 'recipientName' in dictionary:
333
+ self.recipient_name = dictionary['recipientName']
334
+ if 'redirectPaymentMethodSpecificInput' in dictionary:
335
+ if not isinstance(dictionary['redirectPaymentMethodSpecificInput'], dict):
336
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['redirectPaymentMethodSpecificInput']))
337
+ value = RedirectPaymentMethodSpecificInput()
338
+ self.redirect_payment_method_specific_input = value.from_dictionary(dictionary['redirectPaymentMethodSpecificInput'])
339
+ if 'sepaDirectDebitPaymentMethodSpecificInput' in dictionary:
340
+ if not isinstance(dictionary['sepaDirectDebitPaymentMethodSpecificInput'], dict):
341
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['sepaDirectDebitPaymentMethodSpecificInput']))
342
+ value = SepaDirectDebitPaymentMethodSpecificInputBase()
343
+ self.sepa_direct_debit_payment_method_specific_input = value.from_dictionary(dictionary['sepaDirectDebitPaymentMethodSpecificInput'])
344
+ return self
@@ -0,0 +1,249 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # This file was automatically generated.
4
+ #
5
+ from typing import Optional
6
+
7
+ from .card_payment_method_specific_input import CardPaymentMethodSpecificInput
8
+ from .data_object import DataObject
9
+ from .feedbacks import Feedbacks
10
+ from .fraud_fields import FraudFields
11
+ from .mobile_payment_method_specific_input import MobilePaymentMethodSpecificInput
12
+ from .omnichannel_payment_specific_input import OmnichannelPaymentSpecificInput
13
+ from .order import Order
14
+ from .redirect_payment_method_specific_input import RedirectPaymentMethodSpecificInput
15
+ from .sepa_direct_debit_payment_method_specific_input import SepaDirectDebitPaymentMethodSpecificInput
16
+
17
+
18
+ class CreatePaymentRequest(DataObject):
19
+
20
+ __card_payment_method_specific_input: Optional[CardPaymentMethodSpecificInput] = None
21
+ __encrypted_customer_input: Optional[str] = None
22
+ __feedbacks: Optional[Feedbacks] = None
23
+ __fraud_fields: Optional[FraudFields] = None
24
+ __hosted_fields_session_id: Optional[str] = None
25
+ __hosted_tokenization_id: Optional[str] = None
26
+ __mobile_payment_method_specific_input: Optional[MobilePaymentMethodSpecificInput] = None
27
+ __omnichannel_payment_specific_input: Optional[OmnichannelPaymentSpecificInput] = None
28
+ __order: Optional[Order] = None
29
+ __redirect_payment_method_specific_input: Optional[RedirectPaymentMethodSpecificInput] = None
30
+ __sepa_direct_debit_payment_method_specific_input: Optional[SepaDirectDebitPaymentMethodSpecificInput] = None
31
+
32
+ @property
33
+ def card_payment_method_specific_input(self) -> Optional[CardPaymentMethodSpecificInput]:
34
+ """
35
+ | Object containing the specific input details for card payments
36
+
37
+ Type: :class:`onlinepayments.sdk.domain.card_payment_method_specific_input.CardPaymentMethodSpecificInput`
38
+ """
39
+ return self.__card_payment_method_specific_input
40
+
41
+ @card_payment_method_specific_input.setter
42
+ def card_payment_method_specific_input(self, value: Optional[CardPaymentMethodSpecificInput]) -> None:
43
+ self.__card_payment_method_specific_input = value
44
+
45
+ @property
46
+ def encrypted_customer_input(self) -> Optional[str]:
47
+ """
48
+ | Data that was encrypted client side containing all customer entered data elements like card data. Note: Because this data can only be submitted once to our system and contains encrypted card data you should not store it. As the data was captured within the context of a client session you also need to submit it to us before the session has expired.
49
+
50
+ Type: str
51
+ """
52
+ return self.__encrypted_customer_input
53
+
54
+ @encrypted_customer_input.setter
55
+ def encrypted_customer_input(self, value: Optional[str]) -> None:
56
+ self.__encrypted_customer_input = value
57
+
58
+ @property
59
+ def feedbacks(self) -> Optional[Feedbacks]:
60
+ """
61
+ | This section will contain feedback Urls to provide feedback on the payment.
62
+
63
+ Type: :class:`onlinepayments.sdk.domain.feedbacks.Feedbacks`
64
+ """
65
+ return self.__feedbacks
66
+
67
+ @feedbacks.setter
68
+ def feedbacks(self, value: Optional[Feedbacks]) -> None:
69
+ self.__feedbacks = value
70
+
71
+ @property
72
+ def fraud_fields(self) -> Optional[FraudFields]:
73
+ """
74
+ | Object containing additional data that will be used to assess the risk of fraud
75
+
76
+ Type: :class:`onlinepayments.sdk.domain.fraud_fields.FraudFields`
77
+ """
78
+ return self.__fraud_fields
79
+
80
+ @fraud_fields.setter
81
+ def fraud_fields(self, value: Optional[FraudFields]) -> None:
82
+ self.__fraud_fields = value
83
+
84
+ @property
85
+ def hosted_fields_session_id(self) -> Optional[str]:
86
+ """
87
+ | A unique identifier that references a previously created hosted fields session. Use this field to create a payment with the payment method details securely captured in the referenced hosted fields session.
88
+
89
+ Type: str
90
+ """
91
+ return self.__hosted_fields_session_id
92
+
93
+ @hosted_fields_session_id.setter
94
+ def hosted_fields_session_id(self, value: Optional[str]) -> None:
95
+ self.__hosted_fields_session_id = value
96
+
97
+ @property
98
+ def hosted_tokenization_id(self) -> Optional[str]:
99
+ """
100
+ | Use this field after a successful Hosted Tokenization session to create a payment with the tokenized payment method details.
101
+
102
+ Type: str
103
+ """
104
+ return self.__hosted_tokenization_id
105
+
106
+ @hosted_tokenization_id.setter
107
+ def hosted_tokenization_id(self, value: Optional[str]) -> None:
108
+ self.__hosted_tokenization_id = value
109
+
110
+ @property
111
+ def mobile_payment_method_specific_input(self) -> Optional[MobilePaymentMethodSpecificInput]:
112
+ """
113
+ | Object containing the specific input details for mobile payments
114
+
115
+ Type: :class:`onlinepayments.sdk.domain.mobile_payment_method_specific_input.MobilePaymentMethodSpecificInput`
116
+ """
117
+ return self.__mobile_payment_method_specific_input
118
+
119
+ @mobile_payment_method_specific_input.setter
120
+ def mobile_payment_method_specific_input(self, value: Optional[MobilePaymentMethodSpecificInput]) -> None:
121
+ self.__mobile_payment_method_specific_input = value
122
+
123
+ @property
124
+ def omnichannel_payment_specific_input(self) -> Optional[OmnichannelPaymentSpecificInput]:
125
+ """
126
+ | This object contains additional payment details for omnichannel merchants.
127
+
128
+ Type: :class:`onlinepayments.sdk.domain.omnichannel_payment_specific_input.OmnichannelPaymentSpecificInput`
129
+ """
130
+ return self.__omnichannel_payment_specific_input
131
+
132
+ @omnichannel_payment_specific_input.setter
133
+ def omnichannel_payment_specific_input(self, value: Optional[OmnichannelPaymentSpecificInput]) -> None:
134
+ self.__omnichannel_payment_specific_input = value
135
+
136
+ @property
137
+ def order(self) -> Optional[Order]:
138
+ """
139
+ | The order object contains order-related data; Please note that this object is required to submit the amount.
140
+
141
+ Type: :class:`onlinepayments.sdk.domain.order.Order`
142
+ """
143
+ return self.__order
144
+
145
+ @order.setter
146
+ def order(self, value: Optional[Order]) -> None:
147
+ self.__order = value
148
+
149
+ @property
150
+ def redirect_payment_method_specific_input(self) -> Optional[RedirectPaymentMethodSpecificInput]:
151
+ """
152
+ | Object containing the specific input details for payments that involve redirects to 3rd parties to complete, like iDeal and PayPal
153
+
154
+ Type: :class:`onlinepayments.sdk.domain.redirect_payment_method_specific_input.RedirectPaymentMethodSpecificInput`
155
+ """
156
+ return self.__redirect_payment_method_specific_input
157
+
158
+ @redirect_payment_method_specific_input.setter
159
+ def redirect_payment_method_specific_input(self, value: Optional[RedirectPaymentMethodSpecificInput]) -> None:
160
+ self.__redirect_payment_method_specific_input = value
161
+
162
+ @property
163
+ def sepa_direct_debit_payment_method_specific_input(self) -> Optional[SepaDirectDebitPaymentMethodSpecificInput]:
164
+ """
165
+ | Object containing the specific input details for SEPA direct debit payments
166
+
167
+ Type: :class:`onlinepayments.sdk.domain.sepa_direct_debit_payment_method_specific_input.SepaDirectDebitPaymentMethodSpecificInput`
168
+ """
169
+ return self.__sepa_direct_debit_payment_method_specific_input
170
+
171
+ @sepa_direct_debit_payment_method_specific_input.setter
172
+ def sepa_direct_debit_payment_method_specific_input(self, value: Optional[SepaDirectDebitPaymentMethodSpecificInput]) -> None:
173
+ self.__sepa_direct_debit_payment_method_specific_input = value
174
+
175
+ def to_dictionary(self) -> dict:
176
+ dictionary = super(CreatePaymentRequest, self).to_dictionary()
177
+ if self.card_payment_method_specific_input is not None:
178
+ dictionary['cardPaymentMethodSpecificInput'] = self.card_payment_method_specific_input.to_dictionary()
179
+ if self.encrypted_customer_input is not None:
180
+ dictionary['encryptedCustomerInput'] = self.encrypted_customer_input
181
+ if self.feedbacks is not None:
182
+ dictionary['feedbacks'] = self.feedbacks.to_dictionary()
183
+ if self.fraud_fields is not None:
184
+ dictionary['fraudFields'] = self.fraud_fields.to_dictionary()
185
+ if self.hosted_fields_session_id is not None:
186
+ dictionary['hostedFieldsSessionId'] = self.hosted_fields_session_id
187
+ if self.hosted_tokenization_id is not None:
188
+ dictionary['hostedTokenizationId'] = self.hosted_tokenization_id
189
+ if self.mobile_payment_method_specific_input is not None:
190
+ dictionary['mobilePaymentMethodSpecificInput'] = self.mobile_payment_method_specific_input.to_dictionary()
191
+ if self.omnichannel_payment_specific_input is not None:
192
+ dictionary['omnichannelPaymentSpecificInput'] = self.omnichannel_payment_specific_input.to_dictionary()
193
+ if self.order is not None:
194
+ dictionary['order'] = self.order.to_dictionary()
195
+ if self.redirect_payment_method_specific_input is not None:
196
+ dictionary['redirectPaymentMethodSpecificInput'] = self.redirect_payment_method_specific_input.to_dictionary()
197
+ if self.sepa_direct_debit_payment_method_specific_input is not None:
198
+ dictionary['sepaDirectDebitPaymentMethodSpecificInput'] = self.sepa_direct_debit_payment_method_specific_input.to_dictionary()
199
+ return dictionary
200
+
201
+ def from_dictionary(self, dictionary: dict) -> 'CreatePaymentRequest':
202
+ super(CreatePaymentRequest, self).from_dictionary(dictionary)
203
+ if 'cardPaymentMethodSpecificInput' in dictionary:
204
+ if not isinstance(dictionary['cardPaymentMethodSpecificInput'], dict):
205
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['cardPaymentMethodSpecificInput']))
206
+ value = CardPaymentMethodSpecificInput()
207
+ self.card_payment_method_specific_input = value.from_dictionary(dictionary['cardPaymentMethodSpecificInput'])
208
+ if 'encryptedCustomerInput' in dictionary:
209
+ self.encrypted_customer_input = dictionary['encryptedCustomerInput']
210
+ if 'feedbacks' in dictionary:
211
+ if not isinstance(dictionary['feedbacks'], dict):
212
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['feedbacks']))
213
+ value = Feedbacks()
214
+ self.feedbacks = value.from_dictionary(dictionary['feedbacks'])
215
+ if 'fraudFields' in dictionary:
216
+ if not isinstance(dictionary['fraudFields'], dict):
217
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['fraudFields']))
218
+ value = FraudFields()
219
+ self.fraud_fields = value.from_dictionary(dictionary['fraudFields'])
220
+ if 'hostedFieldsSessionId' in dictionary:
221
+ self.hosted_fields_session_id = dictionary['hostedFieldsSessionId']
222
+ if 'hostedTokenizationId' in dictionary:
223
+ self.hosted_tokenization_id = dictionary['hostedTokenizationId']
224
+ if 'mobilePaymentMethodSpecificInput' in dictionary:
225
+ if not isinstance(dictionary['mobilePaymentMethodSpecificInput'], dict):
226
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['mobilePaymentMethodSpecificInput']))
227
+ value = MobilePaymentMethodSpecificInput()
228
+ self.mobile_payment_method_specific_input = value.from_dictionary(dictionary['mobilePaymentMethodSpecificInput'])
229
+ if 'omnichannelPaymentSpecificInput' in dictionary:
230
+ if not isinstance(dictionary['omnichannelPaymentSpecificInput'], dict):
231
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['omnichannelPaymentSpecificInput']))
232
+ value = OmnichannelPaymentSpecificInput()
233
+ self.omnichannel_payment_specific_input = value.from_dictionary(dictionary['omnichannelPaymentSpecificInput'])
234
+ if 'order' in dictionary:
235
+ if not isinstance(dictionary['order'], dict):
236
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['order']))
237
+ value = Order()
238
+ self.order = value.from_dictionary(dictionary['order'])
239
+ if 'redirectPaymentMethodSpecificInput' in dictionary:
240
+ if not isinstance(dictionary['redirectPaymentMethodSpecificInput'], dict):
241
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['redirectPaymentMethodSpecificInput']))
242
+ value = RedirectPaymentMethodSpecificInput()
243
+ self.redirect_payment_method_specific_input = value.from_dictionary(dictionary['redirectPaymentMethodSpecificInput'])
244
+ if 'sepaDirectDebitPaymentMethodSpecificInput' in dictionary:
245
+ if not isinstance(dictionary['sepaDirectDebitPaymentMethodSpecificInput'], dict):
246
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['sepaDirectDebitPaymentMethodSpecificInput']))
247
+ value = SepaDirectDebitPaymentMethodSpecificInput()
248
+ self.sepa_direct_debit_payment_method_specific_input = value.from_dictionary(dictionary['sepaDirectDebitPaymentMethodSpecificInput'])
249
+ return self