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,85 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # This file was automatically generated.
4
+ #
5
+ from typing import Optional
6
+
7
+ from .data_object import DataObject
8
+ from .merchant_action import MerchantAction
9
+ from .payment_creation_output import PaymentCreationOutput
10
+ from .payment_response import PaymentResponse
11
+
12
+
13
+ class CreatePaymentResponse(DataObject):
14
+
15
+ __creation_output: Optional[PaymentCreationOutput] = None
16
+ __merchant_action: Optional[MerchantAction] = None
17
+ __payment: Optional[PaymentResponse] = None
18
+
19
+ @property
20
+ def creation_output(self) -> Optional[PaymentCreationOutput]:
21
+ """
22
+ | This object contains the details of the created payment.
23
+
24
+ Type: :class:`onlinepayments.sdk.domain.payment_creation_output.PaymentCreationOutput`
25
+ """
26
+ return self.__creation_output
27
+
28
+ @creation_output.setter
29
+ def creation_output(self, value: Optional[PaymentCreationOutput]) -> None:
30
+ self.__creation_output = value
31
+
32
+ @property
33
+ def merchant_action(self) -> Optional[MerchantAction]:
34
+ """
35
+ | This object contains the action, including the needed data, that you should perform next. This could involve showing instructions, displaying the transaction results, or redirecting to a third party to complete the payment.
36
+
37
+ Type: :class:`onlinepayments.sdk.domain.merchant_action.MerchantAction`
38
+ """
39
+ return self.__merchant_action
40
+
41
+ @merchant_action.setter
42
+ def merchant_action(self, value: Optional[MerchantAction]) -> None:
43
+ self.__merchant_action = value
44
+
45
+ @property
46
+ def payment(self) -> Optional[PaymentResponse]:
47
+ """
48
+ | This object holds the properties related to the payment.
49
+
50
+ Type: :class:`onlinepayments.sdk.domain.payment_response.PaymentResponse`
51
+ """
52
+ return self.__payment
53
+
54
+ @payment.setter
55
+ def payment(self, value: Optional[PaymentResponse]) -> None:
56
+ self.__payment = value
57
+
58
+ def to_dictionary(self) -> dict:
59
+ dictionary = super(CreatePaymentResponse, self).to_dictionary()
60
+ if self.creation_output is not None:
61
+ dictionary['creationOutput'] = self.creation_output.to_dictionary()
62
+ if self.merchant_action is not None:
63
+ dictionary['merchantAction'] = self.merchant_action.to_dictionary()
64
+ if self.payment is not None:
65
+ dictionary['payment'] = self.payment.to_dictionary()
66
+ return dictionary
67
+
68
+ def from_dictionary(self, dictionary: dict) -> 'CreatePaymentResponse':
69
+ super(CreatePaymentResponse, self).from_dictionary(dictionary)
70
+ if 'creationOutput' in dictionary:
71
+ if not isinstance(dictionary['creationOutput'], dict):
72
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['creationOutput']))
73
+ value = PaymentCreationOutput()
74
+ self.creation_output = value.from_dictionary(dictionary['creationOutput'])
75
+ if 'merchantAction' in dictionary:
76
+ if not isinstance(dictionary['merchantAction'], dict):
77
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['merchantAction']))
78
+ value = MerchantAction()
79
+ self.merchant_action = value.from_dictionary(dictionary['merchantAction'])
80
+ if 'payment' in dictionary:
81
+ if not isinstance(dictionary['payment'], dict):
82
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['payment']))
83
+ value = PaymentResponse()
84
+ self.payment = value.from_dictionary(dictionary['payment'])
85
+ return self
@@ -0,0 +1,176 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # This file was automatically generated.
4
+ #
5
+ from typing import Optional
6
+
7
+ from .amount_of_money import AmountOfMoney
8
+ from .card_payout_method_specific_input import CardPayoutMethodSpecificInput
9
+ from .data_object import DataObject
10
+ from .feedbacks import Feedbacks
11
+ from .omnichannel_payout_specific_input import OmnichannelPayoutSpecificInput
12
+ from .payment_references import PaymentReferences
13
+
14
+
15
+ class CreatePayoutRequest(DataObject):
16
+
17
+ __amount_of_money: Optional[AmountOfMoney] = None
18
+ __card_payout_method_specific_input: Optional[CardPayoutMethodSpecificInput] = None
19
+ __descriptor: Optional[str] = None
20
+ __feedbacks: Optional[Feedbacks] = None
21
+ __omnichannel_payout_specific_input: Optional[OmnichannelPayoutSpecificInput] = None
22
+ __references: Optional[PaymentReferences] = None
23
+
24
+ @property
25
+ def amount_of_money(self) -> Optional[AmountOfMoney]:
26
+ """
27
+ | Object containing amount and ISO currency code attributes
28
+
29
+ Type: :class:`onlinepayments.sdk.domain.amount_of_money.AmountOfMoney`
30
+ """
31
+ return self.__amount_of_money
32
+
33
+ @amount_of_money.setter
34
+ def amount_of_money(self, value: Optional[AmountOfMoney]) -> None:
35
+ self.__amount_of_money = value
36
+
37
+ @property
38
+ def card_payout_method_specific_input(self) -> Optional[CardPayoutMethodSpecificInput]:
39
+ """
40
+ | Object containing the payout details for a card
41
+
42
+ Type: :class:`onlinepayments.sdk.domain.card_payout_method_specific_input.CardPayoutMethodSpecificInput`
43
+ """
44
+ return self.__card_payout_method_specific_input
45
+
46
+ @card_payout_method_specific_input.setter
47
+ def card_payout_method_specific_input(self, value: Optional[CardPayoutMethodSpecificInput]) -> None:
48
+ self.__card_payout_method_specific_input = value
49
+
50
+ @property
51
+ def descriptor(self) -> Optional[str]:
52
+ """
53
+ | Descriptive text that is used towards to customer, either during an online checkout at a third party and/or on the statement of the customer. For card transactions this is usually referred to as a Soft Descriptor. The maximum allowed length varies per card acquirer:
54
+
55
+ * AIB - 22 characters
56
+ * American Express - 25 characters
57
+ * Atos Origin BNP - 15 characters
58
+ * Barclays - 25 characters
59
+ * Catella - 22 characters
60
+ * CBA - 20 characters
61
+ * Elavon - 25 characters
62
+ * First Data - 25 characters
63
+ * INICIS (INIPAY) - 22-30 characters
64
+ * JCB - 25 characters
65
+ * Merchant Solutions - 22-25 characters
66
+ * Payvision (EU & HK) - 25 characters
67
+ * SEB Euroline - 22 characters
68
+ * Sub1 Argentina - 15 characters
69
+ * Wells Fargo - 25 characters Note that we advise you to use 22 characters as the max length as beyond this our experience is that issuers will start to truncate. We currently also only allow per API call overrides for AIB and Barclays For alternative payment products the maximum allowed length varies per payment product:
70
+ * 402 e-Przelewy - 30 characters
71
+ * 404 INICIS - 80 characters
72
+ * 802 Nordea ePayment Finland - 234 characters
73
+ * 809 iDeal - 32 characters
74
+ * 836 SOFORT - 42 characters
75
+ * 840 PayPal - 127 characters
76
+ * 841 WebMoney - 175 characters
77
+ * 849 Yandex - 64 characters
78
+ * 861 Alipay - 256 characters
79
+ * 863 WeChat Pay - 32 characters
80
+ * 880 BOKU - 20 characters
81
+ * 8580 Qiwi - 255 characters
82
+ * 1504 Konbini - 80 characters All other payment products do not support a descriptor.
83
+
84
+ Type: str
85
+ """
86
+ return self.__descriptor
87
+
88
+ @descriptor.setter
89
+ def descriptor(self, value: Optional[str]) -> None:
90
+ self.__descriptor = value
91
+
92
+ @property
93
+ def feedbacks(self) -> Optional[Feedbacks]:
94
+ """
95
+ | This section will contain feedback Urls to provide feedback on the payment.
96
+
97
+ Type: :class:`onlinepayments.sdk.domain.feedbacks.Feedbacks`
98
+ """
99
+ return self.__feedbacks
100
+
101
+ @feedbacks.setter
102
+ def feedbacks(self, value: Optional[Feedbacks]) -> None:
103
+ self.__feedbacks = value
104
+
105
+ @property
106
+ def omnichannel_payout_specific_input(self) -> Optional[OmnichannelPayoutSpecificInput]:
107
+ """
108
+ | Object containing the additional payout details for an Omnichannel merchant
109
+
110
+ Type: :class:`onlinepayments.sdk.domain.omnichannel_payout_specific_input.OmnichannelPayoutSpecificInput`
111
+ """
112
+ return self.__omnichannel_payout_specific_input
113
+
114
+ @omnichannel_payout_specific_input.setter
115
+ def omnichannel_payout_specific_input(self, value: Optional[OmnichannelPayoutSpecificInput]) -> None:
116
+ self.__omnichannel_payout_specific_input = value
117
+
118
+ @property
119
+ def references(self) -> Optional[PaymentReferences]:
120
+ """
121
+ | Object that holds all reference properties that are linked to this transaction. **Deprecated for capture/refund**: Use operationReferences instead.
122
+
123
+ Type: :class:`onlinepayments.sdk.domain.payment_references.PaymentReferences`
124
+ """
125
+ return self.__references
126
+
127
+ @references.setter
128
+ def references(self, value: Optional[PaymentReferences]) -> None:
129
+ self.__references = value
130
+
131
+ def to_dictionary(self) -> dict:
132
+ dictionary = super(CreatePayoutRequest, self).to_dictionary()
133
+ if self.amount_of_money is not None:
134
+ dictionary['amountOfMoney'] = self.amount_of_money.to_dictionary()
135
+ if self.card_payout_method_specific_input is not None:
136
+ dictionary['cardPayoutMethodSpecificInput'] = self.card_payout_method_specific_input.to_dictionary()
137
+ if self.descriptor is not None:
138
+ dictionary['descriptor'] = self.descriptor
139
+ if self.feedbacks is not None:
140
+ dictionary['feedbacks'] = self.feedbacks.to_dictionary()
141
+ if self.omnichannel_payout_specific_input is not None:
142
+ dictionary['omnichannelPayoutSpecificInput'] = self.omnichannel_payout_specific_input.to_dictionary()
143
+ if self.references is not None:
144
+ dictionary['references'] = self.references.to_dictionary()
145
+ return dictionary
146
+
147
+ def from_dictionary(self, dictionary: dict) -> 'CreatePayoutRequest':
148
+ super(CreatePayoutRequest, self).from_dictionary(dictionary)
149
+ if 'amountOfMoney' in dictionary:
150
+ if not isinstance(dictionary['amountOfMoney'], dict):
151
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['amountOfMoney']))
152
+ value = AmountOfMoney()
153
+ self.amount_of_money = value.from_dictionary(dictionary['amountOfMoney'])
154
+ if 'cardPayoutMethodSpecificInput' in dictionary:
155
+ if not isinstance(dictionary['cardPayoutMethodSpecificInput'], dict):
156
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['cardPayoutMethodSpecificInput']))
157
+ value = CardPayoutMethodSpecificInput()
158
+ self.card_payout_method_specific_input = value.from_dictionary(dictionary['cardPayoutMethodSpecificInput'])
159
+ if 'descriptor' in dictionary:
160
+ self.descriptor = dictionary['descriptor']
161
+ if 'feedbacks' in dictionary:
162
+ if not isinstance(dictionary['feedbacks'], dict):
163
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['feedbacks']))
164
+ value = Feedbacks()
165
+ self.feedbacks = value.from_dictionary(dictionary['feedbacks'])
166
+ if 'omnichannelPayoutSpecificInput' in dictionary:
167
+ if not isinstance(dictionary['omnichannelPayoutSpecificInput'], dict):
168
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['omnichannelPayoutSpecificInput']))
169
+ value = OmnichannelPayoutSpecificInput()
170
+ self.omnichannel_payout_specific_input = value.from_dictionary(dictionary['omnichannelPayoutSpecificInput'])
171
+ if 'references' in dictionary:
172
+ if not isinstance(dictionary['references'], dict):
173
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['references']))
174
+ value = PaymentReferences()
175
+ self.references = value.from_dictionary(dictionary['references'])
176
+ return self
@@ -0,0 +1,77 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # This file was automatically generated.
4
+ #
5
+ from typing import Optional
6
+
7
+ from .data_object import DataObject
8
+ from .token_card_specific_input import TokenCardSpecificInput
9
+
10
+
11
+ class CreateTokenRequest(DataObject):
12
+
13
+ __card: Optional[TokenCardSpecificInput] = None
14
+ __encrypted_customer_input: Optional[str] = None
15
+ __payment_product_id: Optional[int] = None
16
+
17
+ @property
18
+ def card(self) -> Optional[TokenCardSpecificInput]:
19
+ """
20
+ | Object containing the token details for a card
21
+
22
+ Type: :class:`onlinepayments.sdk.domain.token_card_specific_input.TokenCardSpecificInput`
23
+ """
24
+ return self.__card
25
+
26
+ @card.setter
27
+ def card(self, value: Optional[TokenCardSpecificInput]) -> None:
28
+ self.__card = value
29
+
30
+ @property
31
+ def encrypted_customer_input(self) -> Optional[str]:
32
+ """
33
+ | 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.
34
+
35
+ Type: str
36
+ """
37
+ return self.__encrypted_customer_input
38
+
39
+ @encrypted_customer_input.setter
40
+ def encrypted_customer_input(self, value: Optional[str]) -> None:
41
+ self.__encrypted_customer_input = value
42
+
43
+ @property
44
+ def payment_product_id(self) -> Optional[int]:
45
+ """
46
+ | Payment product identifier - Please see Products documentation for a full overview of possible values.
47
+
48
+ Type: int
49
+ """
50
+ return self.__payment_product_id
51
+
52
+ @payment_product_id.setter
53
+ def payment_product_id(self, value: Optional[int]) -> None:
54
+ self.__payment_product_id = value
55
+
56
+ def to_dictionary(self) -> dict:
57
+ dictionary = super(CreateTokenRequest, self).to_dictionary()
58
+ if self.card is not None:
59
+ dictionary['card'] = self.card.to_dictionary()
60
+ if self.encrypted_customer_input is not None:
61
+ dictionary['encryptedCustomerInput'] = self.encrypted_customer_input
62
+ if self.payment_product_id is not None:
63
+ dictionary['paymentProductId'] = self.payment_product_id
64
+ return dictionary
65
+
66
+ def from_dictionary(self, dictionary: dict) -> 'CreateTokenRequest':
67
+ super(CreateTokenRequest, self).from_dictionary(dictionary)
68
+ if 'card' in dictionary:
69
+ if not isinstance(dictionary['card'], dict):
70
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['card']))
71
+ value = TokenCardSpecificInput()
72
+ self.card = value.from_dictionary(dictionary['card'])
73
+ if 'encryptedCustomerInput' in dictionary:
74
+ self.encrypted_customer_input = dictionary['encryptedCustomerInput']
75
+ if 'paymentProductId' in dictionary:
76
+ self.payment_product_id = dictionary['paymentProductId']
77
+ return self
@@ -0,0 +1,57 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # This file was automatically generated.
4
+ #
5
+ from typing import Optional
6
+
7
+ from .data_object import DataObject
8
+ from .payment_response import PaymentResponse
9
+
10
+
11
+ class CreatedPaymentOutput(DataObject):
12
+
13
+ __payment: Optional[PaymentResponse] = None
14
+ __payment_status_category: Optional[str] = None
15
+
16
+ @property
17
+ def payment(self) -> Optional[PaymentResponse]:
18
+ """
19
+ | This object holds the properties related to the payment.
20
+
21
+ Type: :class:`onlinepayments.sdk.domain.payment_response.PaymentResponse`
22
+ """
23
+ return self.__payment
24
+
25
+ @payment.setter
26
+ def payment(self, value: Optional[PaymentResponse]) -> None:
27
+ self.__payment = value
28
+
29
+ @property
30
+ def payment_status_category(self) -> Optional[str]:
31
+ """
32
+ Type: str
33
+ """
34
+ return self.__payment_status_category
35
+
36
+ @payment_status_category.setter
37
+ def payment_status_category(self, value: Optional[str]) -> None:
38
+ self.__payment_status_category = value
39
+
40
+ def to_dictionary(self) -> dict:
41
+ dictionary = super(CreatedPaymentOutput, self).to_dictionary()
42
+ if self.payment is not None:
43
+ dictionary['payment'] = self.payment.to_dictionary()
44
+ if self.payment_status_category is not None:
45
+ dictionary['paymentStatusCategory'] = self.payment_status_category
46
+ return dictionary
47
+
48
+ def from_dictionary(self, dictionary: dict) -> 'CreatedPaymentOutput':
49
+ super(CreatedPaymentOutput, self).from_dictionary(dictionary)
50
+ if 'payment' in dictionary:
51
+ if not isinstance(dictionary['payment'], dict):
52
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['payment']))
53
+ value = PaymentResponse()
54
+ self.payment = value.from_dictionary(dictionary['payment'])
55
+ if 'paymentStatusCategory' in dictionary:
56
+ self.payment_status_category = dictionary['paymentStatusCategory']
57
+ return self
@@ -0,0 +1,142 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # This file was automatically generated.
4
+ #
5
+ from typing import Optional
6
+
7
+ from .card_without_cvv import CardWithoutCvv
8
+ from .crm_token import CrmToken
9
+ from .data_object import DataObject
10
+ from .external_token_linked import ExternalTokenLinked
11
+
12
+
13
+ class CreatedTokenResponse(DataObject):
14
+
15
+ __card: Optional[CardWithoutCvv] = None
16
+ __crm_token: Optional[CrmToken] = None
17
+ __external_token_linked: Optional[ExternalTokenLinked] = None
18
+ __is_new_token: Optional[bool] = None
19
+ __token: Optional[str] = None
20
+ __token_status: Optional[str] = None
21
+
22
+ @property
23
+ def card(self) -> Optional[CardWithoutCvv]:
24
+ """
25
+ Type: :class:`onlinepayments.sdk.domain.card_without_cvv.CardWithoutCvv`
26
+ """
27
+ return self.__card
28
+
29
+ @card.setter
30
+ def card(self, value: Optional[CardWithoutCvv]) -> None:
31
+ self.__card = value
32
+
33
+ @property
34
+ def crm_token(self) -> Optional[CrmToken]:
35
+ """
36
+ | The CRM (Customer Relationship Management) token group. CRM tokens are available to enhance knowledge of a merchant's customers by attempting to identify the customer.
37
+
38
+ Type: :class:`onlinepayments.sdk.domain.crm_token.CrmToken`
39
+ """
40
+ return self.__crm_token
41
+
42
+ @crm_token.setter
43
+ def crm_token(self, value: Optional[CrmToken]) -> None:
44
+ self.__crm_token = value
45
+
46
+ @property
47
+ def external_token_linked(self) -> Optional[ExternalTokenLinked]:
48
+ """
49
+ Type: :class:`onlinepayments.sdk.domain.external_token_linked.ExternalTokenLinked`
50
+ """
51
+ return self.__external_token_linked
52
+
53
+ @external_token_linked.setter
54
+ def external_token_linked(self, value: Optional[ExternalTokenLinked]) -> None:
55
+ self.__external_token_linked = value
56
+
57
+ @property
58
+ def is_new_token(self) -> Optional[bool]:
59
+ """
60
+ | Indicates if a new token was created
61
+
62
+ * true - A new token was created
63
+ * false - A token with the same card number already exists and is returned. Please note that the existing token has not been updated. When you want to update other data then the card number, you need to update data stored in the token explicitly, as data is never updated during the creation of a token.
64
+
65
+ Type: bool
66
+ """
67
+ return self.__is_new_token
68
+
69
+ @is_new_token.setter
70
+ def is_new_token(self, value: Optional[bool]) -> None:
71
+ self.__is_new_token = value
72
+
73
+ @property
74
+ def token(self) -> Optional[str]:
75
+ """
76
+ | ID of the token
77
+
78
+ Type: str
79
+ """
80
+ return self.__token
81
+
82
+ @token.setter
83
+ def token(self, value: Optional[str]) -> None:
84
+ self.__token = value
85
+
86
+ @property
87
+ def token_status(self) -> Optional[str]:
88
+ """
89
+ | This is the status of the token in the hosted tokenization session. Possible values are:
90
+
91
+ * UNCHANGED - The token has not changed
92
+ * CREATED - The token has been created
93
+ * UPDATED - The token has been updated
94
+
95
+ Type: str
96
+ """
97
+ return self.__token_status
98
+
99
+ @token_status.setter
100
+ def token_status(self, value: Optional[str]) -> None:
101
+ self.__token_status = value
102
+
103
+ def to_dictionary(self) -> dict:
104
+ dictionary = super(CreatedTokenResponse, self).to_dictionary()
105
+ if self.card is not None:
106
+ dictionary['card'] = self.card.to_dictionary()
107
+ if self.crm_token is not None:
108
+ dictionary['crmToken'] = self.crm_token.to_dictionary()
109
+ if self.external_token_linked is not None:
110
+ dictionary['externalTokenLinked'] = self.external_token_linked.to_dictionary()
111
+ if self.is_new_token is not None:
112
+ dictionary['isNewToken'] = self.is_new_token
113
+ if self.token is not None:
114
+ dictionary['token'] = self.token
115
+ if self.token_status is not None:
116
+ dictionary['tokenStatus'] = self.token_status
117
+ return dictionary
118
+
119
+ def from_dictionary(self, dictionary: dict) -> 'CreatedTokenResponse':
120
+ super(CreatedTokenResponse, self).from_dictionary(dictionary)
121
+ if 'card' in dictionary:
122
+ if not isinstance(dictionary['card'], dict):
123
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['card']))
124
+ value = CardWithoutCvv()
125
+ self.card = value.from_dictionary(dictionary['card'])
126
+ if 'crmToken' in dictionary:
127
+ if not isinstance(dictionary['crmToken'], dict):
128
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['crmToken']))
129
+ value = CrmToken()
130
+ self.crm_token = value.from_dictionary(dictionary['crmToken'])
131
+ if 'externalTokenLinked' in dictionary:
132
+ if not isinstance(dictionary['externalTokenLinked'], dict):
133
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['externalTokenLinked']))
134
+ value = ExternalTokenLinked()
135
+ self.external_token_linked = value.from_dictionary(dictionary['externalTokenLinked'])
136
+ if 'isNewToken' in dictionary:
137
+ self.is_new_token = dictionary['isNewToken']
138
+ if 'token' in dictionary:
139
+ self.token = dictionary['token']
140
+ if 'tokenStatus' in dictionary:
141
+ self.token_status = dictionary['tokenStatus']
142
+ return self
@@ -0,0 +1,66 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # This file was automatically generated.
4
+ #
5
+ from typing import List, Optional
6
+
7
+ from .credit_card_validation_rules import CreditCardValidationRules
8
+ from .data_object import DataObject
9
+
10
+
11
+ class CreditCardSpecificInputHostedTokenization(DataObject):
12
+
13
+ __validation_rules: Optional[CreditCardValidationRules] = None
14
+ __payment_product_preferred_order: Optional[List[int]] = None
15
+
16
+ @property
17
+ def validation_rules(self) -> Optional[CreditCardValidationRules]:
18
+ """
19
+ | Object containing specific validation rules for creditCard.
20
+
21
+ Type: :class:`onlinepayments.sdk.domain.credit_card_validation_rules.CreditCardValidationRules`
22
+ """
23
+ return self.__validation_rules
24
+
25
+ @validation_rules.setter
26
+ def validation_rules(self, value: Optional[CreditCardValidationRules]) -> None:
27
+ self.__validation_rules = value
28
+
29
+ @property
30
+ def payment_product_preferred_order(self) -> Optional[List[int]]:
31
+ """
32
+ | This array contains the payment product identifiers representing the brands. For co-badged cards, this displays their available brands in the order defined by this array.
33
+
34
+ Type: list[int]
35
+ """
36
+ return self.__payment_product_preferred_order
37
+
38
+ @payment_product_preferred_order.setter
39
+ def payment_product_preferred_order(self, value: Optional[List[int]]) -> None:
40
+ self.__payment_product_preferred_order = value
41
+
42
+ def to_dictionary(self) -> dict:
43
+ dictionary = super(CreditCardSpecificInputHostedTokenization, self).to_dictionary()
44
+ if self.validation_rules is not None:
45
+ dictionary['ValidationRules'] = self.validation_rules.to_dictionary()
46
+ if self.payment_product_preferred_order is not None:
47
+ dictionary['paymentProductPreferredOrder'] = []
48
+ for element in self.payment_product_preferred_order:
49
+ if element is not None:
50
+ dictionary['paymentProductPreferredOrder'].append(element)
51
+ return dictionary
52
+
53
+ def from_dictionary(self, dictionary: dict) -> 'CreditCardSpecificInputHostedTokenization':
54
+ super(CreditCardSpecificInputHostedTokenization, self).from_dictionary(dictionary)
55
+ if 'ValidationRules' in dictionary:
56
+ if not isinstance(dictionary['ValidationRules'], dict):
57
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['ValidationRules']))
58
+ value = CreditCardValidationRules()
59
+ self.validation_rules = value.from_dictionary(dictionary['ValidationRules'])
60
+ if 'paymentProductPreferredOrder' in dictionary:
61
+ if not isinstance(dictionary['paymentProductPreferredOrder'], list):
62
+ raise TypeError('value \'{}\' is not a list'.format(dictionary['paymentProductPreferredOrder']))
63
+ self.payment_product_preferred_order = []
64
+ for element in dictionary['paymentProductPreferredOrder']:
65
+ self.payment_product_preferred_order.append(element)
66
+ return self
@@ -0,0 +1,55 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # This file was automatically generated.
4
+ #
5
+ from typing import Optional
6
+
7
+ from .data_object import DataObject
8
+
9
+
10
+ class CreditCardValidationRules(DataObject):
11
+
12
+ __cvv_mandatory_for_existing_token: Optional[bool] = None
13
+ __cvv_mandatory_for_new_token: Optional[bool] = None
14
+
15
+ @property
16
+ def cvv_mandatory_for_existing_token(self) -> Optional[bool]:
17
+ """
18
+ | Determines whether the Card Verification Value must be provided for existing tokens. This option overrides the payment method configuration for the session.
19
+
20
+ Type: bool
21
+ """
22
+ return self.__cvv_mandatory_for_existing_token
23
+
24
+ @cvv_mandatory_for_existing_token.setter
25
+ def cvv_mandatory_for_existing_token(self, value: Optional[bool]) -> None:
26
+ self.__cvv_mandatory_for_existing_token = value
27
+
28
+ @property
29
+ def cvv_mandatory_for_new_token(self) -> Optional[bool]:
30
+ """
31
+ | Determines whether the Card Verification Value must be provided for new tokens. This option overrides the payment method configuration for the session.
32
+
33
+ Type: bool
34
+ """
35
+ return self.__cvv_mandatory_for_new_token
36
+
37
+ @cvv_mandatory_for_new_token.setter
38
+ def cvv_mandatory_for_new_token(self, value: Optional[bool]) -> None:
39
+ self.__cvv_mandatory_for_new_token = value
40
+
41
+ def to_dictionary(self) -> dict:
42
+ dictionary = super(CreditCardValidationRules, self).to_dictionary()
43
+ if self.cvv_mandatory_for_existing_token is not None:
44
+ dictionary['cvvMandatoryForExistingToken'] = self.cvv_mandatory_for_existing_token
45
+ if self.cvv_mandatory_for_new_token is not None:
46
+ dictionary['cvvMandatoryForNewToken'] = self.cvv_mandatory_for_new_token
47
+ return dictionary
48
+
49
+ def from_dictionary(self, dictionary: dict) -> 'CreditCardValidationRules':
50
+ super(CreditCardValidationRules, self).from_dictionary(dictionary)
51
+ if 'cvvMandatoryForExistingToken' in dictionary:
52
+ self.cvv_mandatory_for_existing_token = dictionary['cvvMandatoryForExistingToken']
53
+ if 'cvvMandatoryForNewToken' in dictionary:
54
+ self.cvv_mandatory_for_new_token = dictionary['cvvMandatoryForNewToken']
55
+ return self