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,83 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # This file was automatically generated.
4
+ #
5
+ from typing import Optional
6
+
7
+ from .card_bin_details import CardBinDetails
8
+ from .card_without_cvv import CardWithoutCvv
9
+ from .data_object import DataObject
10
+
11
+
12
+ class TokenCardData(DataObject):
13
+
14
+ __card_bin_details: Optional[CardBinDetails] = None
15
+ __card_without_cvv: Optional[CardWithoutCvv] = None
16
+ __cobrand_selection_indicator: Optional[str] = None
17
+
18
+ @property
19
+ def card_bin_details(self) -> Optional[CardBinDetails]:
20
+ """
21
+ | Card BIN details
22
+
23
+ Type: :class:`onlinepayments.sdk.domain.card_bin_details.CardBinDetails`
24
+ """
25
+ return self.__card_bin_details
26
+
27
+ @card_bin_details.setter
28
+ def card_bin_details(self, value: Optional[CardBinDetails]) -> None:
29
+ self.__card_bin_details = value
30
+
31
+ @property
32
+ def card_without_cvv(self) -> Optional[CardWithoutCvv]:
33
+ """
34
+ Type: :class:`onlinepayments.sdk.domain.card_without_cvv.CardWithoutCvv`
35
+ """
36
+ return self.__card_without_cvv
37
+
38
+ @card_without_cvv.setter
39
+ def card_without_cvv(self, value: Optional[CardWithoutCvv]) -> None:
40
+ self.__card_without_cvv = value
41
+
42
+ @property
43
+ def cobrand_selection_indicator(self) -> Optional[str]:
44
+ """
45
+ | For cobranded cards, this field indicates the brand selection method:
46
+
47
+ * default - The holder implicitly accepted the default brand.
48
+ * alternative - The holder explicitly selected an alternative brand.
49
+ * notApplicable - The card is not cobranded.
50
+
51
+ Type: str
52
+ """
53
+ return self.__cobrand_selection_indicator
54
+
55
+ @cobrand_selection_indicator.setter
56
+ def cobrand_selection_indicator(self, value: Optional[str]) -> None:
57
+ self.__cobrand_selection_indicator = value
58
+
59
+ def to_dictionary(self) -> dict:
60
+ dictionary = super(TokenCardData, self).to_dictionary()
61
+ if self.card_bin_details is not None:
62
+ dictionary['cardBinDetails'] = self.card_bin_details.to_dictionary()
63
+ if self.card_without_cvv is not None:
64
+ dictionary['cardWithoutCvv'] = self.card_without_cvv.to_dictionary()
65
+ if self.cobrand_selection_indicator is not None:
66
+ dictionary['cobrandSelectionIndicator'] = self.cobrand_selection_indicator
67
+ return dictionary
68
+
69
+ def from_dictionary(self, dictionary: dict) -> 'TokenCardData':
70
+ super(TokenCardData, self).from_dictionary(dictionary)
71
+ if 'cardBinDetails' in dictionary:
72
+ if not isinstance(dictionary['cardBinDetails'], dict):
73
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['cardBinDetails']))
74
+ value = CardBinDetails()
75
+ self.card_bin_details = value.from_dictionary(dictionary['cardBinDetails'])
76
+ if 'cardWithoutCvv' in dictionary:
77
+ if not isinstance(dictionary['cardWithoutCvv'], dict):
78
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['cardWithoutCvv']))
79
+ value = CardWithoutCvv()
80
+ self.card_without_cvv = value.from_dictionary(dictionary['cardWithoutCvv'])
81
+ if 'cobrandSelectionIndicator' in dictionary:
82
+ self.cobrand_selection_indicator = dictionary['cobrandSelectionIndicator']
83
+ return self
@@ -0,0 +1,41 @@
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_data import TokenData
9
+
10
+
11
+ class TokenCardSpecificInput(DataObject):
12
+
13
+ __data: Optional[TokenData] = None
14
+
15
+ @property
16
+ def data(self) -> Optional[TokenData]:
17
+ """
18
+ | Object containing the token details for a card
19
+
20
+ Type: :class:`onlinepayments.sdk.domain.token_data.TokenData`
21
+ """
22
+ return self.__data
23
+
24
+ @data.setter
25
+ def data(self, value: Optional[TokenData]) -> None:
26
+ self.__data = value
27
+
28
+ def to_dictionary(self) -> dict:
29
+ dictionary = super(TokenCardSpecificInput, self).to_dictionary()
30
+ if self.data is not None:
31
+ dictionary['data'] = self.data.to_dictionary()
32
+ return dictionary
33
+
34
+ def from_dictionary(self, dictionary: dict) -> 'TokenCardSpecificInput':
35
+ super(TokenCardSpecificInput, self).from_dictionary(dictionary)
36
+ if 'data' in dictionary:
37
+ if not isinstance(dictionary['data'], dict):
38
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['data']))
39
+ value = TokenData()
40
+ self.data = value.from_dictionary(dictionary['data'])
41
+ return self
@@ -0,0 +1,63 @@
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 .data_object import DataObject
9
+
10
+
11
+ class TokenData(DataObject):
12
+
13
+ __card: Optional[Card] = None
14
+ __cobrand_selection_indicator: Optional[str] = None
15
+
16
+ @property
17
+ def card(self) -> Optional[Card]:
18
+ """
19
+ | Object containing card details
20
+
21
+ Type: :class:`onlinepayments.sdk.domain.card.Card`
22
+ """
23
+ return self.__card
24
+
25
+ @card.setter
26
+ def card(self, value: Optional[Card]) -> None:
27
+ self.__card = value
28
+
29
+ @property
30
+ def cobrand_selection_indicator(self) -> Optional[str]:
31
+ """
32
+ | For cobranded cards, this field indicates the brand selection method:
33
+
34
+ * default - The holder implicitly accepted the default brand.
35
+ * alternative - The holder explicitly selected an alternative brand.
36
+ * notApplicable - The card is not cobranded.
37
+
38
+ Type: str
39
+ """
40
+ return self.__cobrand_selection_indicator
41
+
42
+ @cobrand_selection_indicator.setter
43
+ def cobrand_selection_indicator(self, value: Optional[str]) -> None:
44
+ self.__cobrand_selection_indicator = value
45
+
46
+ def to_dictionary(self) -> dict:
47
+ dictionary = super(TokenData, self).to_dictionary()
48
+ if self.card is not None:
49
+ dictionary['card'] = self.card.to_dictionary()
50
+ if self.cobrand_selection_indicator is not None:
51
+ dictionary['cobrandSelectionIndicator'] = self.cobrand_selection_indicator
52
+ return dictionary
53
+
54
+ def from_dictionary(self, dictionary: dict) -> 'TokenData':
55
+ super(TokenData, self).from_dictionary(dictionary)
56
+ if 'card' in dictionary:
57
+ if not isinstance(dictionary['card'], dict):
58
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['card']))
59
+ value = Card()
60
+ self.card = value.from_dictionary(dictionary['card'])
61
+ if 'cobrandSelectionIndicator' in dictionary:
62
+ self.cobrand_selection_indicator = dictionary['cobrandSelectionIndicator']
63
+ return self
@@ -0,0 +1,59 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # This file was automatically generated.
4
+ #
5
+ from typing import Optional
6
+
7
+ from .customer_token import CustomerToken
8
+ from .data_object import DataObject
9
+
10
+
11
+ class TokenEWallet(DataObject):
12
+
13
+ __alias: Optional[str] = None
14
+ __customer: Optional[CustomerToken] = None
15
+
16
+ @property
17
+ def alias(self) -> Optional[str]:
18
+ """
19
+ | Deprecated: This field is not used by any payment product An alias for the token. This can be used to visually represent the token.
20
+
21
+ Type: str
22
+
23
+ Deprecated; This field is not used by any payment product An alias for the token. This can be used to visually represent the token.
24
+ """
25
+ return self.__alias
26
+
27
+ @alias.setter
28
+ def alias(self, value: Optional[str]) -> None:
29
+ self.__alias = value
30
+
31
+ @property
32
+ def customer(self) -> Optional[CustomerToken]:
33
+ """
34
+ Type: :class:`onlinepayments.sdk.domain.customer_token.CustomerToken`
35
+ """
36
+ return self.__customer
37
+
38
+ @customer.setter
39
+ def customer(self, value: Optional[CustomerToken]) -> None:
40
+ self.__customer = value
41
+
42
+ def to_dictionary(self) -> dict:
43
+ dictionary = super(TokenEWallet, self).to_dictionary()
44
+ if self.alias is not None:
45
+ dictionary['alias'] = self.alias
46
+ if self.customer is not None:
47
+ dictionary['customer'] = self.customer.to_dictionary()
48
+ return dictionary
49
+
50
+ def from_dictionary(self, dictionary: dict) -> 'TokenEWallet':
51
+ super(TokenEWallet, self).from_dictionary(dictionary)
52
+ if 'alias' in dictionary:
53
+ self.alias = dictionary['alias']
54
+ if 'customer' in dictionary:
55
+ if not isinstance(dictionary['customer'], dict):
56
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['customer']))
57
+ value = CustomerToken()
58
+ self.customer = value.from_dictionary(dictionary['customer'])
59
+ return self
@@ -0,0 +1,181 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # This file was automatically generated.
4
+ #
5
+ from typing import Optional
6
+
7
+ from .crm_token import CrmToken
8
+ from .data_object import DataObject
9
+ from .external_token_linked import ExternalTokenLinked
10
+ from .network_token_linked import NetworkTokenLinked
11
+ from .token_card import TokenCard
12
+ from .token_e_wallet import TokenEWallet
13
+
14
+
15
+ class TokenResponse(DataObject):
16
+
17
+ __card: Optional[TokenCard] = None
18
+ __crm_token: Optional[CrmToken] = None
19
+ __e_wallet: Optional[TokenEWallet] = None
20
+ __external_token_linked: Optional[ExternalTokenLinked] = None
21
+ __id: Optional[str] = None
22
+ __is_temporary: Optional[bool] = None
23
+ __network_token_linked: Optional[NetworkTokenLinked] = None
24
+ __payment_product_id: Optional[int] = None
25
+
26
+ @property
27
+ def card(self) -> Optional[TokenCard]:
28
+ """
29
+ | Object containing card details
30
+
31
+ Type: :class:`onlinepayments.sdk.domain.token_card.TokenCard`
32
+ """
33
+ return self.__card
34
+
35
+ @card.setter
36
+ def card(self, value: Optional[TokenCard]) -> None:
37
+ self.__card = value
38
+
39
+ @property
40
+ def crm_token(self) -> Optional[CrmToken]:
41
+ """
42
+ | 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.
43
+
44
+ Type: :class:`onlinepayments.sdk.domain.crm_token.CrmToken`
45
+ """
46
+ return self.__crm_token
47
+
48
+ @crm_token.setter
49
+ def crm_token(self, value: Optional[CrmToken]) -> None:
50
+ self.__crm_token = value
51
+
52
+ @property
53
+ def e_wallet(self) -> Optional[TokenEWallet]:
54
+ """
55
+ | Object containing eWallet details
56
+
57
+ Type: :class:`onlinepayments.sdk.domain.token_e_wallet.TokenEWallet`
58
+ """
59
+ return self.__e_wallet
60
+
61
+ @e_wallet.setter
62
+ def e_wallet(self, value: Optional[TokenEWallet]) -> None:
63
+ self.__e_wallet = value
64
+
65
+ @property
66
+ def external_token_linked(self) -> Optional[ExternalTokenLinked]:
67
+ """
68
+ Type: :class:`onlinepayments.sdk.domain.external_token_linked.ExternalTokenLinked`
69
+ """
70
+ return self.__external_token_linked
71
+
72
+ @external_token_linked.setter
73
+ def external_token_linked(self, value: Optional[ExternalTokenLinked]) -> None:
74
+ self.__external_token_linked = value
75
+
76
+ @property
77
+ def id(self) -> Optional[str]:
78
+ """
79
+ | ID of the token
80
+
81
+ Type: str
82
+ """
83
+ return self.__id
84
+
85
+ @id.setter
86
+ def id(self, value: Optional[str]) -> None:
87
+ self.__id = value
88
+
89
+ @property
90
+ def is_temporary(self) -> Optional[bool]:
91
+ """
92
+ | Temporary tokens have a lifespan of two hours and can only be used once.
93
+
94
+ Type: bool
95
+ """
96
+ return self.__is_temporary
97
+
98
+ @is_temporary.setter
99
+ def is_temporary(self, value: Optional[bool]) -> None:
100
+ self.__is_temporary = value
101
+
102
+ @property
103
+ def network_token_linked(self) -> Optional[NetworkTokenLinked]:
104
+ """
105
+ | Object containing Network Token details, when the Network Token was created on behalf of the merchant and is activated.
106
+
107
+ Type: :class:`onlinepayments.sdk.domain.network_token_linked.NetworkTokenLinked`
108
+ """
109
+ return self.__network_token_linked
110
+
111
+ @network_token_linked.setter
112
+ def network_token_linked(self, value: Optional[NetworkTokenLinked]) -> None:
113
+ self.__network_token_linked = value
114
+
115
+ @property
116
+ def payment_product_id(self) -> Optional[int]:
117
+ """
118
+ | Payment product identifier - Please see Products documentation for a full overview of possible values.
119
+
120
+ Type: int
121
+ """
122
+ return self.__payment_product_id
123
+
124
+ @payment_product_id.setter
125
+ def payment_product_id(self, value: Optional[int]) -> None:
126
+ self.__payment_product_id = value
127
+
128
+ def to_dictionary(self) -> dict:
129
+ dictionary = super(TokenResponse, self).to_dictionary()
130
+ if self.card is not None:
131
+ dictionary['card'] = self.card.to_dictionary()
132
+ if self.crm_token is not None:
133
+ dictionary['crmToken'] = self.crm_token.to_dictionary()
134
+ if self.e_wallet is not None:
135
+ dictionary['eWallet'] = self.e_wallet.to_dictionary()
136
+ if self.external_token_linked is not None:
137
+ dictionary['externalTokenLinked'] = self.external_token_linked.to_dictionary()
138
+ if self.id is not None:
139
+ dictionary['id'] = self.id
140
+ if self.is_temporary is not None:
141
+ dictionary['isTemporary'] = self.is_temporary
142
+ if self.network_token_linked is not None:
143
+ dictionary['networkTokenLinked'] = self.network_token_linked.to_dictionary()
144
+ if self.payment_product_id is not None:
145
+ dictionary['paymentProductId'] = self.payment_product_id
146
+ return dictionary
147
+
148
+ def from_dictionary(self, dictionary: dict) -> 'TokenResponse':
149
+ super(TokenResponse, self).from_dictionary(dictionary)
150
+ if 'card' in dictionary:
151
+ if not isinstance(dictionary['card'], dict):
152
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['card']))
153
+ value = TokenCard()
154
+ self.card = value.from_dictionary(dictionary['card'])
155
+ if 'crmToken' in dictionary:
156
+ if not isinstance(dictionary['crmToken'], dict):
157
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['crmToken']))
158
+ value = CrmToken()
159
+ self.crm_token = value.from_dictionary(dictionary['crmToken'])
160
+ if 'eWallet' in dictionary:
161
+ if not isinstance(dictionary['eWallet'], dict):
162
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['eWallet']))
163
+ value = TokenEWallet()
164
+ self.e_wallet = value.from_dictionary(dictionary['eWallet'])
165
+ if 'externalTokenLinked' in dictionary:
166
+ if not isinstance(dictionary['externalTokenLinked'], dict):
167
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['externalTokenLinked']))
168
+ value = ExternalTokenLinked()
169
+ self.external_token_linked = value.from_dictionary(dictionary['externalTokenLinked'])
170
+ if 'id' in dictionary:
171
+ self.id = dictionary['id']
172
+ if 'isTemporary' in dictionary:
173
+ self.is_temporary = dictionary['isTemporary']
174
+ if 'networkTokenLinked' in dictionary:
175
+ if not isinstance(dictionary['networkTokenLinked'], dict):
176
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['networkTokenLinked']))
177
+ value = NetworkTokenLinked()
178
+ self.network_token_linked = value.from_dictionary(dictionary['networkTokenLinked'])
179
+ if 'paymentProductId' in dictionary:
180
+ self.payment_product_id = dictionary['paymentProductId']
181
+ return self
@@ -0,0 +1,41 @@
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 .data_object import DataObject
9
+
10
+
11
+ class Transaction(DataObject):
12
+
13
+ __amount: Optional[AmountOfMoney] = None
14
+
15
+ @property
16
+ def amount(self) -> Optional[AmountOfMoney]:
17
+ """
18
+ | Object containing amount and ISO currency code attributes
19
+
20
+ Type: :class:`onlinepayments.sdk.domain.amount_of_money.AmountOfMoney`
21
+ """
22
+ return self.__amount
23
+
24
+ @amount.setter
25
+ def amount(self, value: Optional[AmountOfMoney]) -> None:
26
+ self.__amount = value
27
+
28
+ def to_dictionary(self) -> dict:
29
+ dictionary = super(Transaction, self).to_dictionary()
30
+ if self.amount is not None:
31
+ dictionary['amount'] = self.amount.to_dictionary()
32
+ return dictionary
33
+
34
+ def from_dictionary(self, dictionary: dict) -> 'Transaction':
35
+ super(Transaction, self).from_dictionary(dictionary)
36
+ if 'amount' in dictionary:
37
+ if not isinstance(dictionary['amount'], dict):
38
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['amount']))
39
+ value = AmountOfMoney()
40
+ self.amount = value.from_dictionary(dictionary['amount'])
41
+ return self
@@ -0,0 +1,51 @@
1
+ from typing import Any
2
+
3
+
4
+ class UploadableFile(object):
5
+ """
6
+ A file that can be uploaded.
7
+
8
+ The allowed forms of content are defined by the Connection implementation.
9
+ The default implementation supports strings, file descriptors and io.BytesIO objects.
10
+ """
11
+
12
+ def __init__(self, file_name: str, content: Any, content_type: str, content_length: int = -1):
13
+ if file_name is None or not file_name.strip():
14
+ raise ValueError("file_name is required")
15
+ if content is None:
16
+ raise ValueError("content is required")
17
+ if content_type is None or not content_type.strip():
18
+ raise ValueError("file_name is required")
19
+
20
+ self.__file_name = file_name
21
+ self.__content = content
22
+ self.__content_type = content_type
23
+ self.__content_length = max(content_length, -1)
24
+
25
+ @property
26
+ def file_name(self) -> str:
27
+ """
28
+ :return: The name of the file.
29
+ """
30
+ return self.__file_name
31
+
32
+ @property
33
+ def content(self) -> Any:
34
+ """
35
+ :return: The file's content.
36
+ """
37
+ return self.__content
38
+
39
+ @property
40
+ def content_type(self) -> str:
41
+ """
42
+ :return: The file's content type.
43
+ """
44
+ return self.__content_type
45
+
46
+ @property
47
+ def content_length(self) -> int:
48
+ """
49
+ :return: The file's content length, or -1 if not known.
50
+ """
51
+ return self.__content_length
@@ -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 ValidateCredentialsRequest(DataObject):
11
+
12
+ __key: Optional[str] = None
13
+ __secret: Optional[str] = None
14
+
15
+ @property
16
+ def key(self) -> Optional[str]:
17
+ """
18
+ | The webhook key and without any change applied to it.
19
+
20
+ Type: str
21
+ """
22
+ return self.__key
23
+
24
+ @key.setter
25
+ def key(self, value: Optional[str]) -> None:
26
+ self.__key = value
27
+
28
+ @property
29
+ def secret(self) -> Optional[str]:
30
+ """
31
+ | Send here the hashed webhooks key secret in the same way as the check is done in your system. The only difference is instead of providing the current body of the message, use an empty string as body while hashing it.
32
+
33
+ Type: str
34
+ """
35
+ return self.__secret
36
+
37
+ @secret.setter
38
+ def secret(self, value: Optional[str]) -> None:
39
+ self.__secret = value
40
+
41
+ def to_dictionary(self) -> dict:
42
+ dictionary = super(ValidateCredentialsRequest, self).to_dictionary()
43
+ if self.key is not None:
44
+ dictionary['key'] = self.key
45
+ if self.secret is not None:
46
+ dictionary['secret'] = self.secret
47
+ return dictionary
48
+
49
+ def from_dictionary(self, dictionary: dict) -> 'ValidateCredentialsRequest':
50
+ super(ValidateCredentialsRequest, self).from_dictionary(dictionary)
51
+ if 'key' in dictionary:
52
+ self.key = dictionary['key']
53
+ if 'secret' in dictionary:
54
+ self.secret = dictionary['secret']
55
+ return self
@@ -0,0 +1,37 @@
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 ValidateCredentialsResponse(DataObject):
11
+
12
+ __result: Optional[str] = None
13
+
14
+ @property
15
+ def result(self) -> Optional[str]:
16
+ """
17
+ | The webhooks validation was OK (Valid) or not OK (Invalid).
18
+
19
+ Type: str
20
+ """
21
+ return self.__result
22
+
23
+ @result.setter
24
+ def result(self, value: Optional[str]) -> None:
25
+ self.__result = value
26
+
27
+ def to_dictionary(self) -> dict:
28
+ dictionary = super(ValidateCredentialsResponse, self).to_dictionary()
29
+ if self.result is not None:
30
+ dictionary['result'] = self.result
31
+ return dictionary
32
+
33
+ def from_dictionary(self, dictionary: dict) -> 'ValidateCredentialsResponse':
34
+ super(ValidateCredentialsResponse, self).from_dictionary(dictionary)
35
+ if 'result' in dictionary:
36
+ self.result = dictionary['result']
37
+ return self
@@ -0,0 +1,62 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # This file was automatically generated.
4
+ #
5
+ from typing import List, Optional
6
+
7
+ from .data_object import DataObject
8
+ from .payment_product_field_display_element import PaymentProductFieldDisplayElement
9
+
10
+
11
+ class ValueMappingElement(DataObject):
12
+
13
+ __display_elements: Optional[List[PaymentProductFieldDisplayElement]] = None
14
+ __value: Optional[str] = None
15
+
16
+ @property
17
+ def display_elements(self) -> Optional[List[PaymentProductFieldDisplayElement]]:
18
+ """
19
+ Type: list[:class:`onlinepayments.sdk.domain.payment_product_field_display_element.PaymentProductFieldDisplayElement`]
20
+ """
21
+ return self.__display_elements
22
+
23
+ @display_elements.setter
24
+ def display_elements(self, value: Optional[List[PaymentProductFieldDisplayElement]]) -> None:
25
+ self.__display_elements = value
26
+
27
+ @property
28
+ def value(self) -> Optional[str]:
29
+ """
30
+ | Value corresponding to the key
31
+
32
+ Type: str
33
+ """
34
+ return self.__value
35
+
36
+ @value.setter
37
+ def value(self, value: Optional[str]) -> None:
38
+ self.__value = value
39
+
40
+ def to_dictionary(self) -> dict:
41
+ dictionary = super(ValueMappingElement, self).to_dictionary()
42
+ if self.display_elements is not None:
43
+ dictionary['displayElements'] = []
44
+ for element in self.display_elements:
45
+ if element is not None:
46
+ dictionary['displayElements'].append(element.to_dictionary())
47
+ if self.value is not None:
48
+ dictionary['value'] = self.value
49
+ return dictionary
50
+
51
+ def from_dictionary(self, dictionary: dict) -> 'ValueMappingElement':
52
+ super(ValueMappingElement, self).from_dictionary(dictionary)
53
+ if 'displayElements' in dictionary:
54
+ if not isinstance(dictionary['displayElements'], list):
55
+ raise TypeError('value \'{}\' is not a list'.format(dictionary['displayElements']))
56
+ self.display_elements = []
57
+ for element in dictionary['displayElements']:
58
+ value = PaymentProductFieldDisplayElement()
59
+ self.display_elements.append(value.from_dictionary(element))
60
+ if 'value' in dictionary:
61
+ self.value = dictionary['value']
62
+ return self