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,608 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # This file was automatically generated.
4
+ #
5
+ from typing import Optional
6
+
7
+ from .card import Card
8
+ from .card_recurrence_details import CardRecurrenceDetails
9
+ from .currency_conversion_input import CurrencyConversionInput
10
+ from .data_object import DataObject
11
+ from .market_place import MarketPlace
12
+ from .multiple_payment_information import MultiplePaymentInformation
13
+ from .network_token_data import NetworkTokenData
14
+ from .payment_product130_specific_input import PaymentProduct130SpecificInput
15
+ from .payment_product3012_specific_input import PaymentProduct3012SpecificInput
16
+ from .payment_product3013_specific_input import PaymentProduct3013SpecificInput
17
+ from .payment_product3208_specific_input import PaymentProduct3208SpecificInput
18
+ from .payment_product3209_specific_input import PaymentProduct3209SpecificInput
19
+ from .three_d_secure import ThreeDSecure
20
+
21
+
22
+ class CardPaymentMethodSpecificInput(DataObject):
23
+
24
+ __allow_dynamic_linking: Optional[bool] = None
25
+ __authorization_mode: Optional[str] = None
26
+ __card: Optional[Card] = None
27
+ __card_on_file_recurring_expiration: Optional[str] = None
28
+ __card_on_file_recurring_frequency: Optional[str] = None
29
+ __cobrand_selection_indicator: Optional[str] = None
30
+ __currency_conversion: Optional[CurrencyConversionInput] = None
31
+ __initial_scheme_transaction_id: Optional[str] = None
32
+ __is_recurring: Optional[bool] = None
33
+ __market_place: Optional[MarketPlace] = None
34
+ __multiple_payment_information: Optional[MultiplePaymentInformation] = None
35
+ __network_token_data: Optional[NetworkTokenData] = None
36
+ __payment_product130_specific_input: Optional[PaymentProduct130SpecificInput] = None
37
+ __payment_product3012_specific_input: Optional[PaymentProduct3012SpecificInput] = None
38
+ __payment_product3013_specific_input: Optional[PaymentProduct3013SpecificInput] = None
39
+ __payment_product3208_specific_input: Optional[PaymentProduct3208SpecificInput] = None
40
+ __payment_product3209_specific_input: Optional[PaymentProduct3209SpecificInput] = None
41
+ __payment_product_id: Optional[int] = None
42
+ __recurring: Optional[CardRecurrenceDetails] = None
43
+ __return_url: Optional[str] = None
44
+ __scheme_reference_data: Optional[str] = None
45
+ __skip_authentication: Optional[bool] = None
46
+ __three_d_secure: Optional[ThreeDSecure] = None
47
+ __token: Optional[str] = None
48
+ __tokenize: Optional[bool] = None
49
+ __transaction_channel: Optional[str] = None
50
+ __unscheduled_card_on_file_requestor: Optional[str] = None
51
+ __unscheduled_card_on_file_sequence_indicator: Optional[str] = None
52
+
53
+ @property
54
+ def allow_dynamic_linking(self) -> Optional[bool]:
55
+ """
56
+ * true - Default - Allows subsequent payments to use PSD2 dynamic linking from this payment (including Card On File).
57
+ * false - Indicates that the dynamic linking (including Card On File data) will be ignored.
58
+
59
+ Type: bool
60
+ """
61
+ return self.__allow_dynamic_linking
62
+
63
+ @allow_dynamic_linking.setter
64
+ def allow_dynamic_linking(self, value: Optional[bool]) -> None:
65
+ self.__allow_dynamic_linking = value
66
+
67
+ @property
68
+ def authorization_mode(self) -> Optional[str]:
69
+ """
70
+ | Determines the type of the authorization that will be used. Allowed values:
71
+
72
+ * FINAL_AUTHORIZATION - The payment creation results in an authorization that is ready for capture. Final authorizations can't be reversed and need to be captured for the full amount within 7 days.
73
+ * PRE_AUTHORIZATION - The payment creation results in a pre-authorization that is ready for capture. Pre-authortizations can be reversed and can be captured within 30 days. The capture amount can be lower than the authorized amount.
74
+ * SALE - The payment creation results in an authorization that is already captured at the moment of approval.
75
+
76
+ | Only used with some acquirers, ignored for acquirers that do not support this. In case the acquirer does not allow this to be specified the authorizationMode is 'unspecified', which behaves similar to a final authorization.
77
+
78
+ Type: str
79
+ """
80
+ return self.__authorization_mode
81
+
82
+ @authorization_mode.setter
83
+ def authorization_mode(self, value: Optional[str]) -> None:
84
+ self.__authorization_mode = value
85
+
86
+ @property
87
+ def card(self) -> Optional[Card]:
88
+ """
89
+ | Object containing card details
90
+
91
+ Type: :class:`onlinepayments.sdk.domain.card.Card`
92
+ """
93
+ return self.__card
94
+
95
+ @card.setter
96
+ def card(self, value: Optional[Card]) -> None:
97
+ self.__card = value
98
+
99
+ @property
100
+ def card_on_file_recurring_expiration(self) -> Optional[str]:
101
+ """
102
+ | The end date of the last scheduled payment in a series of transactions. Format YYYYMMDD
103
+
104
+ Type: str
105
+ """
106
+ return self.__card_on_file_recurring_expiration
107
+
108
+ @card_on_file_recurring_expiration.setter
109
+ def card_on_file_recurring_expiration(self, value: Optional[str]) -> None:
110
+ self.__card_on_file_recurring_expiration = value
111
+
112
+ @property
113
+ def card_on_file_recurring_frequency(self) -> Optional[str]:
114
+ """
115
+ | Period of payment occurrence for recurring and installment payments. Allowed values:
116
+
117
+ * Yearly
118
+ * Quarterly
119
+ * Monthly
120
+ * Weekly
121
+ * Daily
122
+
123
+ Type: str
124
+ """
125
+ return self.__card_on_file_recurring_frequency
126
+
127
+ @card_on_file_recurring_frequency.setter
128
+ def card_on_file_recurring_frequency(self, value: Optional[str]) -> None:
129
+ self.__card_on_file_recurring_frequency = value
130
+
131
+ @property
132
+ def cobrand_selection_indicator(self) -> Optional[str]:
133
+ """
134
+ | For cobranded cards, this field indicates the brand selection method:
135
+
136
+ * default - The holder implicitly accepted the default brand.
137
+ * alternative - The holder explicitly selected an alternative brand.
138
+ * notApplicable - The card is not cobranded.
139
+
140
+ Type: str
141
+ """
142
+ return self.__cobrand_selection_indicator
143
+
144
+ @cobrand_selection_indicator.setter
145
+ def cobrand_selection_indicator(self, value: Optional[str]) -> None:
146
+ self.__cobrand_selection_indicator = value
147
+
148
+ @property
149
+ def currency_conversion(self) -> Optional[CurrencyConversionInput]:
150
+ """
151
+ Type: :class:`onlinepayments.sdk.domain.currency_conversion_input.CurrencyConversionInput`
152
+ """
153
+ return self.__currency_conversion
154
+
155
+ @currency_conversion.setter
156
+ def currency_conversion(self, value: Optional[CurrencyConversionInput]) -> None:
157
+ self.__currency_conversion = value
158
+
159
+ @property
160
+ def initial_scheme_transaction_id(self) -> Optional[str]:
161
+ """
162
+ | The unique scheme transactionId of the initial transaction that was performed with SCA. In case this is unknown a scheme transactionId of an earlier transaction part of the same sequence can be used as a fall-back. Strongly advised to be submitted for any MerchantInitiated or recurring transaction (a subsequent one).
163
+
164
+ Type: str
165
+ """
166
+ return self.__initial_scheme_transaction_id
167
+
168
+ @initial_scheme_transaction_id.setter
169
+ def initial_scheme_transaction_id(self, value: Optional[str]) -> None:
170
+ self.__initial_scheme_transaction_id = value
171
+
172
+ @property
173
+ def is_recurring(self) -> Optional[bool]:
174
+ """
175
+ * true - Indicates that the transaction is part of a scheduled recurring sequence. In addition, recurringPaymentSequenceIndicator indicates if the transaction is the first or subsequent in a recurring sequence.
176
+ * false - Indicates that the transaction is not part of a scheduled recurring sequence. The default value for this property is false.
177
+
178
+ Type: bool
179
+ """
180
+ return self.__is_recurring
181
+
182
+ @is_recurring.setter
183
+ def is_recurring(self, value: Optional[bool]) -> None:
184
+ self.__is_recurring = value
185
+
186
+ @property
187
+ def market_place(self) -> Optional[MarketPlace]:
188
+ """
189
+ | Object containing marketplace-related data for additional information on sub-merchants (retailers) transacting via the marketplace’s platform. This object is required for platforms onboarding multiple sellers to ensure accurate identification and attribution of each transaction. The platform must collect and submit the retailer’s country and regional information in accordance with card scheme requirements. In some cases, Visa may treat specific regions—such as EU member states—as a single country entity for regulatory and reporting purposes.
190
+
191
+ Type: :class:`onlinepayments.sdk.domain.market_place.MarketPlace`
192
+ """
193
+ return self.__market_place
194
+
195
+ @market_place.setter
196
+ def market_place(self, value: Optional[MarketPlace]) -> None:
197
+ self.__market_place = value
198
+
199
+ @property
200
+ def multiple_payment_information(self) -> Optional[MultiplePaymentInformation]:
201
+ """
202
+ | Container announcing forecoming subsequent payments. Holds modalities of these subsequent payments.
203
+
204
+ Type: :class:`onlinepayments.sdk.domain.multiple_payment_information.MultiplePaymentInformation`
205
+ """
206
+ return self.__multiple_payment_information
207
+
208
+ @multiple_payment_information.setter
209
+ def multiple_payment_information(self, value: Optional[MultiplePaymentInformation]) -> None:
210
+ self.__multiple_payment_information = value
211
+
212
+ @property
213
+ def network_token_data(self) -> Optional[NetworkTokenData]:
214
+ """
215
+ | Object containing Network Token details
216
+
217
+ Type: :class:`onlinepayments.sdk.domain.network_token_data.NetworkTokenData`
218
+ """
219
+ return self.__network_token_data
220
+
221
+ @network_token_data.setter
222
+ def network_token_data(self, value: Optional[NetworkTokenData]) -> None:
223
+ self.__network_token_data = value
224
+
225
+ @property
226
+ def payment_product130_specific_input(self) -> Optional[PaymentProduct130SpecificInput]:
227
+ """
228
+ | Object containing specific input required for CB payments
229
+
230
+ Type: :class:`onlinepayments.sdk.domain.payment_product130_specific_input.PaymentProduct130SpecificInput`
231
+ """
232
+ return self.__payment_product130_specific_input
233
+
234
+ @payment_product130_specific_input.setter
235
+ def payment_product130_specific_input(self, value: Optional[PaymentProduct130SpecificInput]) -> None:
236
+ self.__payment_product130_specific_input = value
237
+
238
+ @property
239
+ def payment_product3012_specific_input(self) -> Optional[PaymentProduct3012SpecificInput]:
240
+ """
241
+ | Object containing specific input required for bancontact.
242
+
243
+ Type: :class:`onlinepayments.sdk.domain.payment_product3012_specific_input.PaymentProduct3012SpecificInput`
244
+ """
245
+ return self.__payment_product3012_specific_input
246
+
247
+ @payment_product3012_specific_input.setter
248
+ def payment_product3012_specific_input(self, value: Optional[PaymentProduct3012SpecificInput]) -> None:
249
+ self.__payment_product3012_specific_input = value
250
+
251
+ @property
252
+ def payment_product3013_specific_input(self) -> Optional[PaymentProduct3013SpecificInput]:
253
+ """
254
+ | An object containing specific input required for VISA purchasing authorization.
255
+
256
+ Type: :class:`onlinepayments.sdk.domain.payment_product3013_specific_input.PaymentProduct3013SpecificInput`
257
+ """
258
+ return self.__payment_product3013_specific_input
259
+
260
+ @payment_product3013_specific_input.setter
261
+ def payment_product3013_specific_input(self, value: Optional[PaymentProduct3013SpecificInput]) -> None:
262
+ self.__payment_product3013_specific_input = value
263
+
264
+ @property
265
+ def payment_product3208_specific_input(self) -> Optional[PaymentProduct3208SpecificInput]:
266
+ """
267
+ | Object containing specific input required for OneyDuplo Leroy Merlin payments.
268
+
269
+ Type: :class:`onlinepayments.sdk.domain.payment_product3208_specific_input.PaymentProduct3208SpecificInput`
270
+ """
271
+ return self.__payment_product3208_specific_input
272
+
273
+ @payment_product3208_specific_input.setter
274
+ def payment_product3208_specific_input(self, value: Optional[PaymentProduct3208SpecificInput]) -> None:
275
+ self.__payment_product3208_specific_input = value
276
+
277
+ @property
278
+ def payment_product3209_specific_input(self) -> Optional[PaymentProduct3209SpecificInput]:
279
+ """
280
+ | Object containing specific input required for OneyDuplo Alcampo payments.
281
+
282
+ Type: :class:`onlinepayments.sdk.domain.payment_product3209_specific_input.PaymentProduct3209SpecificInput`
283
+ """
284
+ return self.__payment_product3209_specific_input
285
+
286
+ @payment_product3209_specific_input.setter
287
+ def payment_product3209_specific_input(self, value: Optional[PaymentProduct3209SpecificInput]) -> None:
288
+ self.__payment_product3209_specific_input = value
289
+
290
+ @property
291
+ def payment_product_id(self) -> Optional[int]:
292
+ """
293
+ | Payment product identifier - Please see Products documentation for a full overview of possible values.
294
+
295
+ Type: int
296
+ """
297
+ return self.__payment_product_id
298
+
299
+ @payment_product_id.setter
300
+ def payment_product_id(self, value: Optional[int]) -> None:
301
+ self.__payment_product_id = value
302
+
303
+ @property
304
+ def recurring(self) -> Optional[CardRecurrenceDetails]:
305
+ """
306
+ | Object containing data related to recurring
307
+
308
+ Type: :class:`onlinepayments.sdk.domain.card_recurrence_details.CardRecurrenceDetails`
309
+ """
310
+ return self.__recurring
311
+
312
+ @recurring.setter
313
+ def recurring(self, value: Optional[CardRecurrenceDetails]) -> None:
314
+ self.__recurring = value
315
+
316
+ @property
317
+ def return_url(self) -> Optional[str]:
318
+ """
319
+ | The URL that the customer is redirect to after the payment flow has finished. You can add any number of key value pairs in the query string that, for instance help you to identify the customer when they return to your site. Please note that we will also append some additional key value pairs that will also help you with this identification process. Note: The provided URL should be absolute and contain the protocol to use, e.g. http:// or https://. For use on mobile devices a custom protocol can be used in the form of protocol://. This protocol must be registered on the device first. URLs without a protocol will be rejected.
320
+
321
+ Type: str
322
+ """
323
+ return self.__return_url
324
+
325
+ @return_url.setter
326
+ def return_url(self, value: Optional[str]) -> None:
327
+ self.__return_url = value
328
+
329
+ @property
330
+ def scheme_reference_data(self) -> Optional[str]:
331
+ """
332
+ | This is the unique Scheme Reference Data from the initial transaction that was performed with a Strong Customer Authentication. In case this value is unknown, a Scheme Reference of an earlier transaction that was part of the same sequence can be used as a fall-back. Still, it is strongly advised to submit this value for any Merchant Initiated Transaction or any recurring transaction (hereby defined as "Subsequent").
333
+
334
+ Type: str
335
+ """
336
+ return self.__scheme_reference_data
337
+
338
+ @scheme_reference_data.setter
339
+ def scheme_reference_data(self, value: Optional[str]) -> None:
340
+ self.__scheme_reference_data = value
341
+
342
+ @property
343
+ def skip_authentication(self) -> Optional[bool]:
344
+ """
345
+ | Deprecated: Use threeDSecure.skipAuthentication instead.
346
+
347
+ * true = 3D Secure authentication will be skipped for this transaction. This setting should be used when isRecurring is set to true and recurringPaymentSequenceIndicator is set to recurring.
348
+ * false = 3D Secure authentication will not be skipped for this transaction.
349
+
350
+ | Note: This is only possible if your account in our system is setup for 3D Secure authentication and if your configuration in our system allows you to override it per transaction.
351
+
352
+ Type: bool
353
+
354
+ Deprecated; Use threeDSecure.skipAuthentication instead. * true = 3D Secure authentication will be skipped for this transaction. This setting should be used when isRecurring is set to true and recurringPaymentSequenceIndicator is set to recurring. * false = 3D Secure authentication will not be skipped for this transaction. Note: This is only possible if your account in our system is setup for 3D Secure authentication and if your configuration in our system allows you to override it per transaction.
355
+ """
356
+ return self.__skip_authentication
357
+
358
+ @skip_authentication.setter
359
+ def skip_authentication(self, value: Optional[bool]) -> None:
360
+ self.__skip_authentication = value
361
+
362
+ @property
363
+ def three_d_secure(self) -> Optional[ThreeDSecure]:
364
+ """
365
+ | Object containing specific data regarding 3-D Secure
366
+
367
+ Type: :class:`onlinepayments.sdk.domain.three_d_secure.ThreeDSecure`
368
+ """
369
+ return self.__three_d_secure
370
+
371
+ @three_d_secure.setter
372
+ def three_d_secure(self, value: Optional[ThreeDSecure]) -> None:
373
+ self.__three_d_secure = value
374
+
375
+ @property
376
+ def token(self) -> Optional[str]:
377
+ """
378
+ | ID of the token to use to create the payment.
379
+
380
+ Type: str
381
+ """
382
+ return self.__token
383
+
384
+ @token.setter
385
+ def token(self, value: Optional[str]) -> None:
386
+ self.__token = value
387
+
388
+ @property
389
+ def tokenize(self) -> Optional[bool]:
390
+ """
391
+ | Indicates if this transaction should be tokenized
392
+
393
+ * true - Tokenize the transaction. Note that a payment on the payment platform that results in a status REDIRECTED cannot be tokenized in this way.
394
+ * false - Do not tokenize the transaction, unless it would be tokenized by other means such as auto-tokenization of recurring payments.
395
+
396
+ Type: bool
397
+ """
398
+ return self.__tokenize
399
+
400
+ @tokenize.setter
401
+ def tokenize(self, value: Optional[bool]) -> None:
402
+ self.__tokenize = value
403
+
404
+ @property
405
+ def transaction_channel(self) -> Optional[str]:
406
+ """
407
+ | Indicates the channel via which the payment is created. Allowed values:
408
+
409
+ * ECOMMERCE - The transaction is a regular E-Commerce transaction.
410
+ * MOTO - The transaction is a Mail Order/Telephone Order.
411
+
412
+ | Defaults to ECOMMERCE.
413
+
414
+ Type: str
415
+ """
416
+ return self.__transaction_channel
417
+
418
+ @transaction_channel.setter
419
+ def transaction_channel(self, value: Optional[str]) -> None:
420
+ self.__transaction_channel = value
421
+
422
+ @property
423
+ def unscheduled_card_on_file_requestor(self) -> Optional[str]:
424
+ """
425
+ | Indicates which party initiated the unscheduled recurring transaction. Allowed values:
426
+
427
+ * merchantInitiated - Merchant Initiated Transaction.
428
+ * cardholderInitiated - Cardholder Initiated Transaction. Note:
429
+ * This property is not allowed if isRecurring is true.
430
+ * When a customer has chosen to use a token on a hosted checkout this property is set to "cardholderInitiated".
431
+
432
+ Type: str
433
+ """
434
+ return self.__unscheduled_card_on_file_requestor
435
+
436
+ @unscheduled_card_on_file_requestor.setter
437
+ def unscheduled_card_on_file_requestor(self, value: Optional[str]) -> None:
438
+ self.__unscheduled_card_on_file_requestor = value
439
+
440
+ @property
441
+ def unscheduled_card_on_file_sequence_indicator(self) -> Optional[str]:
442
+ """
443
+ * first = This transaction is the first of a series of unscheduled recurring transactions
444
+ * subsequent = This transaction is a subsequent transaction in a series of unscheduled recurring transactions Note: this property is not allowed if isRecurring is true.
445
+
446
+ Type: str
447
+ """
448
+ return self.__unscheduled_card_on_file_sequence_indicator
449
+
450
+ @unscheduled_card_on_file_sequence_indicator.setter
451
+ def unscheduled_card_on_file_sequence_indicator(self, value: Optional[str]) -> None:
452
+ self.__unscheduled_card_on_file_sequence_indicator = value
453
+
454
+ def to_dictionary(self) -> dict:
455
+ dictionary = super(CardPaymentMethodSpecificInput, self).to_dictionary()
456
+ if self.allow_dynamic_linking is not None:
457
+ dictionary['allowDynamicLinking'] = self.allow_dynamic_linking
458
+ if self.authorization_mode is not None:
459
+ dictionary['authorizationMode'] = self.authorization_mode
460
+ if self.card is not None:
461
+ dictionary['card'] = self.card.to_dictionary()
462
+ if self.card_on_file_recurring_expiration is not None:
463
+ dictionary['cardOnFileRecurringExpiration'] = self.card_on_file_recurring_expiration
464
+ if self.card_on_file_recurring_frequency is not None:
465
+ dictionary['cardOnFileRecurringFrequency'] = self.card_on_file_recurring_frequency
466
+ if self.cobrand_selection_indicator is not None:
467
+ dictionary['cobrandSelectionIndicator'] = self.cobrand_selection_indicator
468
+ if self.currency_conversion is not None:
469
+ dictionary['currencyConversion'] = self.currency_conversion.to_dictionary()
470
+ if self.initial_scheme_transaction_id is not None:
471
+ dictionary['initialSchemeTransactionId'] = self.initial_scheme_transaction_id
472
+ if self.is_recurring is not None:
473
+ dictionary['isRecurring'] = self.is_recurring
474
+ if self.market_place is not None:
475
+ dictionary['marketPlace'] = self.market_place.to_dictionary()
476
+ if self.multiple_payment_information is not None:
477
+ dictionary['multiplePaymentInformation'] = self.multiple_payment_information.to_dictionary()
478
+ if self.network_token_data is not None:
479
+ dictionary['networkTokenData'] = self.network_token_data.to_dictionary()
480
+ if self.payment_product130_specific_input is not None:
481
+ dictionary['paymentProduct130SpecificInput'] = self.payment_product130_specific_input.to_dictionary()
482
+ if self.payment_product3012_specific_input is not None:
483
+ dictionary['paymentProduct3012SpecificInput'] = self.payment_product3012_specific_input.to_dictionary()
484
+ if self.payment_product3013_specific_input is not None:
485
+ dictionary['paymentProduct3013SpecificInput'] = self.payment_product3013_specific_input.to_dictionary()
486
+ if self.payment_product3208_specific_input is not None:
487
+ dictionary['paymentProduct3208SpecificInput'] = self.payment_product3208_specific_input.to_dictionary()
488
+ if self.payment_product3209_specific_input is not None:
489
+ dictionary['paymentProduct3209SpecificInput'] = self.payment_product3209_specific_input.to_dictionary()
490
+ if self.payment_product_id is not None:
491
+ dictionary['paymentProductId'] = self.payment_product_id
492
+ if self.recurring is not None:
493
+ dictionary['recurring'] = self.recurring.to_dictionary()
494
+ if self.return_url is not None:
495
+ dictionary['returnUrl'] = self.return_url
496
+ if self.scheme_reference_data is not None:
497
+ dictionary['schemeReferenceData'] = self.scheme_reference_data
498
+ if self.skip_authentication is not None:
499
+ dictionary['skipAuthentication'] = self.skip_authentication
500
+ if self.three_d_secure is not None:
501
+ dictionary['threeDSecure'] = self.three_d_secure.to_dictionary()
502
+ if self.token is not None:
503
+ dictionary['token'] = self.token
504
+ if self.tokenize is not None:
505
+ dictionary['tokenize'] = self.tokenize
506
+ if self.transaction_channel is not None:
507
+ dictionary['transactionChannel'] = self.transaction_channel
508
+ if self.unscheduled_card_on_file_requestor is not None:
509
+ dictionary['unscheduledCardOnFileRequestor'] = self.unscheduled_card_on_file_requestor
510
+ if self.unscheduled_card_on_file_sequence_indicator is not None:
511
+ dictionary['unscheduledCardOnFileSequenceIndicator'] = self.unscheduled_card_on_file_sequence_indicator
512
+ return dictionary
513
+
514
+ def from_dictionary(self, dictionary: dict) -> 'CardPaymentMethodSpecificInput':
515
+ super(CardPaymentMethodSpecificInput, self).from_dictionary(dictionary)
516
+ if 'allowDynamicLinking' in dictionary:
517
+ self.allow_dynamic_linking = dictionary['allowDynamicLinking']
518
+ if 'authorizationMode' in dictionary:
519
+ self.authorization_mode = dictionary['authorizationMode']
520
+ if 'card' in dictionary:
521
+ if not isinstance(dictionary['card'], dict):
522
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['card']))
523
+ value = Card()
524
+ self.card = value.from_dictionary(dictionary['card'])
525
+ if 'cardOnFileRecurringExpiration' in dictionary:
526
+ self.card_on_file_recurring_expiration = dictionary['cardOnFileRecurringExpiration']
527
+ if 'cardOnFileRecurringFrequency' in dictionary:
528
+ self.card_on_file_recurring_frequency = dictionary['cardOnFileRecurringFrequency']
529
+ if 'cobrandSelectionIndicator' in dictionary:
530
+ self.cobrand_selection_indicator = dictionary['cobrandSelectionIndicator']
531
+ if 'currencyConversion' in dictionary:
532
+ if not isinstance(dictionary['currencyConversion'], dict):
533
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['currencyConversion']))
534
+ value = CurrencyConversionInput()
535
+ self.currency_conversion = value.from_dictionary(dictionary['currencyConversion'])
536
+ if 'initialSchemeTransactionId' in dictionary:
537
+ self.initial_scheme_transaction_id = dictionary['initialSchemeTransactionId']
538
+ if 'isRecurring' in dictionary:
539
+ self.is_recurring = dictionary['isRecurring']
540
+ if 'marketPlace' in dictionary:
541
+ if not isinstance(dictionary['marketPlace'], dict):
542
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['marketPlace']))
543
+ value = MarketPlace()
544
+ self.market_place = value.from_dictionary(dictionary['marketPlace'])
545
+ if 'multiplePaymentInformation' in dictionary:
546
+ if not isinstance(dictionary['multiplePaymentInformation'], dict):
547
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['multiplePaymentInformation']))
548
+ value = MultiplePaymentInformation()
549
+ self.multiple_payment_information = value.from_dictionary(dictionary['multiplePaymentInformation'])
550
+ if 'networkTokenData' in dictionary:
551
+ if not isinstance(dictionary['networkTokenData'], dict):
552
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['networkTokenData']))
553
+ value = NetworkTokenData()
554
+ self.network_token_data = value.from_dictionary(dictionary['networkTokenData'])
555
+ if 'paymentProduct130SpecificInput' in dictionary:
556
+ if not isinstance(dictionary['paymentProduct130SpecificInput'], dict):
557
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['paymentProduct130SpecificInput']))
558
+ value = PaymentProduct130SpecificInput()
559
+ self.payment_product130_specific_input = value.from_dictionary(dictionary['paymentProduct130SpecificInput'])
560
+ if 'paymentProduct3012SpecificInput' in dictionary:
561
+ if not isinstance(dictionary['paymentProduct3012SpecificInput'], dict):
562
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['paymentProduct3012SpecificInput']))
563
+ value = PaymentProduct3012SpecificInput()
564
+ self.payment_product3012_specific_input = value.from_dictionary(dictionary['paymentProduct3012SpecificInput'])
565
+ if 'paymentProduct3013SpecificInput' in dictionary:
566
+ if not isinstance(dictionary['paymentProduct3013SpecificInput'], dict):
567
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['paymentProduct3013SpecificInput']))
568
+ value = PaymentProduct3013SpecificInput()
569
+ self.payment_product3013_specific_input = value.from_dictionary(dictionary['paymentProduct3013SpecificInput'])
570
+ if 'paymentProduct3208SpecificInput' in dictionary:
571
+ if not isinstance(dictionary['paymentProduct3208SpecificInput'], dict):
572
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['paymentProduct3208SpecificInput']))
573
+ value = PaymentProduct3208SpecificInput()
574
+ self.payment_product3208_specific_input = value.from_dictionary(dictionary['paymentProduct3208SpecificInput'])
575
+ if 'paymentProduct3209SpecificInput' in dictionary:
576
+ if not isinstance(dictionary['paymentProduct3209SpecificInput'], dict):
577
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['paymentProduct3209SpecificInput']))
578
+ value = PaymentProduct3209SpecificInput()
579
+ self.payment_product3209_specific_input = value.from_dictionary(dictionary['paymentProduct3209SpecificInput'])
580
+ if 'paymentProductId' in dictionary:
581
+ self.payment_product_id = dictionary['paymentProductId']
582
+ if 'recurring' in dictionary:
583
+ if not isinstance(dictionary['recurring'], dict):
584
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['recurring']))
585
+ value = CardRecurrenceDetails()
586
+ self.recurring = value.from_dictionary(dictionary['recurring'])
587
+ if 'returnUrl' in dictionary:
588
+ self.return_url = dictionary['returnUrl']
589
+ if 'schemeReferenceData' in dictionary:
590
+ self.scheme_reference_data = dictionary['schemeReferenceData']
591
+ if 'skipAuthentication' in dictionary:
592
+ self.skip_authentication = dictionary['skipAuthentication']
593
+ if 'threeDSecure' in dictionary:
594
+ if not isinstance(dictionary['threeDSecure'], dict):
595
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['threeDSecure']))
596
+ value = ThreeDSecure()
597
+ self.three_d_secure = value.from_dictionary(dictionary['threeDSecure'])
598
+ if 'token' in dictionary:
599
+ self.token = dictionary['token']
600
+ if 'tokenize' in dictionary:
601
+ self.tokenize = dictionary['tokenize']
602
+ if 'transactionChannel' in dictionary:
603
+ self.transaction_channel = dictionary['transactionChannel']
604
+ if 'unscheduledCardOnFileRequestor' in dictionary:
605
+ self.unscheduled_card_on_file_requestor = dictionary['unscheduledCardOnFileRequestor']
606
+ if 'unscheduledCardOnFileSequenceIndicator' in dictionary:
607
+ self.unscheduled_card_on_file_sequence_indicator = dictionary['unscheduledCardOnFileSequenceIndicator']
608
+ return self