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,40 @@
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 SurchargeForPaymentLink(DataObject):
11
+
12
+ __surcharge_mode: Optional[str] = None
13
+
14
+ @property
15
+ def surcharge_mode(self) -> Optional[str]:
16
+ """
17
+ | The surcharge mode which defines how a merchant will apply surcharging.
18
+
19
+ * pass-through - Merchant to define and apply surcharge amount for a transaction for processing. This mode is not supported on Create Hosted Checkout Session.
20
+ * on-behalf-of - Merchant to instruct the payment platform to calculate and apply a surcharge amount to a transaction, based on the merchant’s surcharge configuration, net amount, and payment product type.
21
+
22
+ Type: str
23
+ """
24
+ return self.__surcharge_mode
25
+
26
+ @surcharge_mode.setter
27
+ def surcharge_mode(self, value: Optional[str]) -> None:
28
+ self.__surcharge_mode = value
29
+
30
+ def to_dictionary(self) -> dict:
31
+ dictionary = super(SurchargeForPaymentLink, self).to_dictionary()
32
+ if self.surcharge_mode is not None:
33
+ dictionary['surchargeMode'] = self.surcharge_mode
34
+ return dictionary
35
+
36
+ def from_dictionary(self, dictionary: dict) -> 'SurchargeForPaymentLink':
37
+ super(SurchargeForPaymentLink, self).from_dictionary(dictionary)
38
+ if 'surchargeMode' in dictionary:
39
+ self.surcharge_mode = dictionary['surchargeMode']
40
+ return self
@@ -0,0 +1,91 @@
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 SurchargeRate(DataObject):
11
+
12
+ __ad_valorem_rate: Optional[float] = None
13
+ __specific_rate: Optional[int] = None
14
+ __surcharge_product_type_id: Optional[str] = None
15
+ __surcharge_product_type_version: Optional[str] = None
16
+
17
+ @property
18
+ def ad_valorem_rate(self) -> Optional[float]:
19
+ """
20
+ | A percentage rate defined on a merchant's configuration used in the calculation of a surcharge amount.
21
+
22
+ Type: float
23
+ """
24
+ return self.__ad_valorem_rate
25
+
26
+ @ad_valorem_rate.setter
27
+ def ad_valorem_rate(self, value: Optional[float]) -> None:
28
+ self.__ad_valorem_rate = value
29
+
30
+ @property
31
+ def specific_rate(self) -> Optional[int]:
32
+ """
33
+ | A specific, fixed rate in cents defined on a merchant's configuration that is used in the calculation of a surcharge amount.
34
+
35
+ Type: int
36
+ """
37
+ return self.__specific_rate
38
+
39
+ @specific_rate.setter
40
+ def specific_rate(self, value: Optional[int]) -> None:
41
+ self.__specific_rate = value
42
+
43
+ @property
44
+ def surcharge_product_type_id(self) -> Optional[str]:
45
+ """
46
+ | The name of the applicable surcharge rates for the relevant payment product
47
+
48
+ Type: str
49
+ """
50
+ return self.__surcharge_product_type_id
51
+
52
+ @surcharge_product_type_id.setter
53
+ def surcharge_product_type_id(self, value: Optional[str]) -> None:
54
+ self.__surcharge_product_type_id = value
55
+
56
+ @property
57
+ def surcharge_product_type_version(self) -> Optional[str]:
58
+ """
59
+ | A specific version identifier of the surcharge rates as applied for this request
60
+
61
+ Type: str
62
+ """
63
+ return self.__surcharge_product_type_version
64
+
65
+ @surcharge_product_type_version.setter
66
+ def surcharge_product_type_version(self, value: Optional[str]) -> None:
67
+ self.__surcharge_product_type_version = value
68
+
69
+ def to_dictionary(self) -> dict:
70
+ dictionary = super(SurchargeRate, self).to_dictionary()
71
+ if self.ad_valorem_rate is not None:
72
+ dictionary['adValoremRate'] = self.ad_valorem_rate
73
+ if self.specific_rate is not None:
74
+ dictionary['specificRate'] = self.specific_rate
75
+ if self.surcharge_product_type_id is not None:
76
+ dictionary['surchargeProductTypeId'] = self.surcharge_product_type_id
77
+ if self.surcharge_product_type_version is not None:
78
+ dictionary['surchargeProductTypeVersion'] = self.surcharge_product_type_version
79
+ return dictionary
80
+
81
+ def from_dictionary(self, dictionary: dict) -> 'SurchargeRate':
82
+ super(SurchargeRate, self).from_dictionary(dictionary)
83
+ if 'adValoremRate' in dictionary:
84
+ self.ad_valorem_rate = dictionary['adValoremRate']
85
+ if 'specificRate' in dictionary:
86
+ self.specific_rate = dictionary['specificRate']
87
+ if 'surchargeProductTypeId' in dictionary:
88
+ self.surcharge_product_type_id = dictionary['surchargeProductTypeId']
89
+ if 'surchargeProductTypeVersion' in dictionary:
90
+ self.surcharge_product_type_version = dictionary['surchargeProductTypeVersion']
91
+ return self
@@ -0,0 +1,62 @@
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 SurchargeSpecificInput(DataObject):
12
+
13
+ __mode: Optional[str] = None
14
+ __surcharge_amount: Optional[AmountOfMoney] = None
15
+
16
+ @property
17
+ def mode(self) -> Optional[str]:
18
+ """
19
+ | The surcharge mode which defines how a merchant will apply surcharging.
20
+
21
+ * pass-through - Merchant to define and apply surcharge amount for a transaction for processing. This mode is not supported on Create Hosted Checkout Session.
22
+ * on-behalf-of - Merchant to instruct the payment platform to calculate and apply a surcharge amount to a transaction, based on the merchant’s surcharge configuration, net amount, and payment product type.
23
+
24
+ Type: str
25
+ """
26
+ return self.__mode
27
+
28
+ @mode.setter
29
+ def mode(self, value: Optional[str]) -> None:
30
+ self.__mode = value
31
+
32
+ @property
33
+ def surcharge_amount(self) -> Optional[AmountOfMoney]:
34
+ """
35
+ | Object containing amount and ISO currency code attributes
36
+
37
+ Type: :class:`onlinepayments.sdk.domain.amount_of_money.AmountOfMoney`
38
+ """
39
+ return self.__surcharge_amount
40
+
41
+ @surcharge_amount.setter
42
+ def surcharge_amount(self, value: Optional[AmountOfMoney]) -> None:
43
+ self.__surcharge_amount = value
44
+
45
+ def to_dictionary(self) -> dict:
46
+ dictionary = super(SurchargeSpecificInput, self).to_dictionary()
47
+ if self.mode is not None:
48
+ dictionary['mode'] = self.mode
49
+ if self.surcharge_amount is not None:
50
+ dictionary['surchargeAmount'] = self.surcharge_amount.to_dictionary()
51
+ return dictionary
52
+
53
+ def from_dictionary(self, dictionary: dict) -> 'SurchargeSpecificInput':
54
+ super(SurchargeSpecificInput, self).from_dictionary(dictionary)
55
+ if 'mode' in dictionary:
56
+ self.mode = dictionary['mode']
57
+ if 'surchargeAmount' in dictionary:
58
+ if not isinstance(dictionary['surchargeAmount'], dict):
59
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['surchargeAmount']))
60
+ value = AmountOfMoney()
61
+ self.surcharge_amount = value.from_dictionary(dictionary['surchargeAmount'])
62
+ return self
@@ -0,0 +1,84 @@
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
+ from .surcharge_rate import SurchargeRate
10
+
11
+
12
+ class SurchargeSpecificOutput(DataObject):
13
+
14
+ __mode: Optional[str] = None
15
+ __surcharge_amount: Optional[AmountOfMoney] = None
16
+ __surcharge_rate: Optional[SurchargeRate] = None
17
+
18
+ @property
19
+ def mode(self) -> Optional[str]:
20
+ """
21
+ | The surcharge mode which defines how a merchant will apply surcharging.
22
+
23
+ * pass-through - Merchant to define and apply surcharge amount for a transaction for processing. This mode is not supported on Create Hosted Checkout Session.
24
+ * on-behalf-of - Merchant to instruct the payment platform to calculate and apply a surcharge amount to a transaction, based on the merchant’s surcharge configuration, net amount, and payment product type.
25
+
26
+ Type: str
27
+ """
28
+ return self.__mode
29
+
30
+ @mode.setter
31
+ def mode(self, value: Optional[str]) -> None:
32
+ self.__mode = value
33
+
34
+ @property
35
+ def surcharge_amount(self) -> Optional[AmountOfMoney]:
36
+ """
37
+ | Object containing amount and ISO currency code attributes
38
+
39
+ Type: :class:`onlinepayments.sdk.domain.amount_of_money.AmountOfMoney`
40
+ """
41
+ return self.__surcharge_amount
42
+
43
+ @surcharge_amount.setter
44
+ def surcharge_amount(self, value: Optional[AmountOfMoney]) -> None:
45
+ self.__surcharge_amount = value
46
+
47
+ @property
48
+ def surcharge_rate(self) -> Optional[SurchargeRate]:
49
+ """
50
+ | A summary of surcharge details used in the calculation of the surcharge amount. null if result = NO_SURCHARGE
51
+
52
+ Type: :class:`onlinepayments.sdk.domain.surcharge_rate.SurchargeRate`
53
+ """
54
+ return self.__surcharge_rate
55
+
56
+ @surcharge_rate.setter
57
+ def surcharge_rate(self, value: Optional[SurchargeRate]) -> None:
58
+ self.__surcharge_rate = value
59
+
60
+ def to_dictionary(self) -> dict:
61
+ dictionary = super(SurchargeSpecificOutput, self).to_dictionary()
62
+ if self.mode is not None:
63
+ dictionary['mode'] = self.mode
64
+ if self.surcharge_amount is not None:
65
+ dictionary['surchargeAmount'] = self.surcharge_amount.to_dictionary()
66
+ if self.surcharge_rate is not None:
67
+ dictionary['surchargeRate'] = self.surcharge_rate.to_dictionary()
68
+ return dictionary
69
+
70
+ def from_dictionary(self, dictionary: dict) -> 'SurchargeSpecificOutput':
71
+ super(SurchargeSpecificOutput, self).from_dictionary(dictionary)
72
+ if 'mode' in dictionary:
73
+ self.mode = dictionary['mode']
74
+ if 'surchargeAmount' in dictionary:
75
+ if not isinstance(dictionary['surchargeAmount'], dict):
76
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['surchargeAmount']))
77
+ value = AmountOfMoney()
78
+ self.surcharge_amount = value.from_dictionary(dictionary['surchargeAmount'])
79
+ if 'surchargeRate' in dictionary:
80
+ if not isinstance(dictionary['surchargeRate'], dict):
81
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['surchargeRate']))
82
+ value = SurchargeRate()
83
+ self.surcharge_rate = value.from_dictionary(dictionary['surchargeRate'])
84
+ return self
@@ -0,0 +1,35 @@
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 TestConnection(DataObject):
11
+
12
+ __result: Optional[str] = None
13
+
14
+ @property
15
+ def result(self) -> Optional[str]:
16
+ """
17
+ Type: str
18
+ """
19
+ return self.__result
20
+
21
+ @result.setter
22
+ def result(self, value: Optional[str]) -> None:
23
+ self.__result = value
24
+
25
+ def to_dictionary(self) -> dict:
26
+ dictionary = super(TestConnection, self).to_dictionary()
27
+ if self.result is not None:
28
+ dictionary['result'] = self.result
29
+ return dictionary
30
+
31
+ def from_dictionary(self, dictionary: dict) -> 'TestConnection':
32
+ super(TestConnection, self).from_dictionary(dictionary)
33
+ if 'result' in dictionary:
34
+ self.result = dictionary['result']
35
+ return self
@@ -0,0 +1,281 @@
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 .external_cardholder_authentication_data import ExternalCardholderAuthenticationData
9
+ from .redirection_data import RedirectionData
10
+ from .three_d_secure_data import ThreeDSecureData
11
+
12
+
13
+ class ThreeDSecure(DataObject):
14
+
15
+ __authentication_amount: Optional[int] = None
16
+ __challenge_canvas_size: Optional[str] = None
17
+ __challenge_indicator: Optional[str] = None
18
+ __device_channel: Optional[str] = None
19
+ __exemption_request: Optional[str] = None
20
+ __external_cardholder_authentication_data: Optional[ExternalCardholderAuthenticationData] = None
21
+ __merchant_fraud_rate: Optional[int] = None
22
+ __prior_three_d_secure_data: Optional[ThreeDSecureData] = None
23
+ __redirection_data: Optional[RedirectionData] = None
24
+ __secure_corporate_payment: Optional[bool] = None
25
+ __skip_authentication: Optional[bool] = None
26
+ __skip_soft_decline: Optional[bool] = None
27
+
28
+ @property
29
+ def authentication_amount(self) -> Optional[int]:
30
+ """
31
+ | The amount to be authenticated. This field should be populated if the amount to be authenticated differs from the amount to be authorized (by default they are considered equal). Amount in cents and always having 2 decimals.
32
+
33
+ Type: int
34
+ """
35
+ return self.__authentication_amount
36
+
37
+ @authentication_amount.setter
38
+ def authentication_amount(self, value: Optional[int]) -> None:
39
+ self.__authentication_amount = value
40
+
41
+ @property
42
+ def challenge_canvas_size(self) -> Optional[str]:
43
+ """
44
+ | Dimensions of the challenge window that potentially will be displayed to the customer. The challenge content is formatted to appropriately render in this window to provide the best possible user experience. Preconfigured sizes are width x height in pixels of the window displayed in the customer browser window. Possible values are
45
+
46
+ * 250x400 (default)
47
+ * 390x400
48
+ * 500x600
49
+ * 600x400
50
+ * full-screen
51
+
52
+ Type: str
53
+ """
54
+ return self.__challenge_canvas_size
55
+
56
+ @challenge_canvas_size.setter
57
+ def challenge_canvas_size(self, value: Optional[str]) -> None:
58
+ self.__challenge_canvas_size = value
59
+
60
+ @property
61
+ def challenge_indicator(self) -> Optional[str]:
62
+ """
63
+ | Allows you to indicate if you want the customer to be challenged for extra security on this transaction. Possible values:
64
+
65
+ * no-preference - You have no preference whether or not to challenge the customer (default)
66
+ * no-challenge-requested - you prefer the cardholder not to be challenged
67
+ * challenge-requested - you prefer the customer to be challenged
68
+ * challenge-required - you require the customer to be challenged
69
+ * no-challenge-requested-risk-analysis-performed – letting the issuer know that you have already assessed the transaction with fraud prevention tool
70
+ * no-challenge-requested-data-share-only – sharing data only with the DS
71
+ * no-challenge-requested-consumer-authentication-performed – authentication already happened at your side – when login in to your website
72
+ * no-challenge-requested-use-whitelist-exemption – cardholder has whitelisted you at with the issuer
73
+ * challenge-requested-whitelist-prompt-requested – cardholder is trying to whitelist you
74
+ * request-scoring-without-connecting-to-acs – sending information to CB DS for a fraud scoring
75
+
76
+ Type: str
77
+ """
78
+ return self.__challenge_indicator
79
+
80
+ @challenge_indicator.setter
81
+ def challenge_indicator(self, value: Optional[str]) -> None:
82
+ self.__challenge_indicator = value
83
+
84
+ @property
85
+ def device_channel(self) -> Optional[str]:
86
+ """
87
+ | Determines whether the call is coming from an application or from a browser * AppBased - Call is coming from an application. * Browser - Call is coming from a browser
88
+
89
+ Type: str
90
+ """
91
+ return self.__device_channel
92
+
93
+ @device_channel.setter
94
+ def device_channel(self, value: Optional[str]) -> None:
95
+ self.__device_channel = value
96
+
97
+ @property
98
+ def exemption_request(self) -> Optional[str]:
99
+ """
100
+ | In PSD2, the ExemptionRequest field is used by merchants requesting an exemption when not using authentication on a transaction, in order to keep the conversion up.
101
+
102
+ * none = No exemption requested
103
+ * transaction-risk-analysis = Fraud analysis has been done already by your own fraud module and transaction scored as low risk
104
+ * low-value = Bellow 30 euros
105
+ * whitelist = The cardholder has whitelisted you with their issuer
106
+
107
+ Type: str
108
+ """
109
+ return self.__exemption_request
110
+
111
+ @exemption_request.setter
112
+ def exemption_request(self, value: Optional[str]) -> None:
113
+ self.__exemption_request = value
114
+
115
+ @property
116
+ def external_cardholder_authentication_data(self) -> Optional[ExternalCardholderAuthenticationData]:
117
+ """
118
+ | Object containing 3D secure details.
119
+
120
+ Type: :class:`onlinepayments.sdk.domain.external_cardholder_authentication_data.ExternalCardholderAuthenticationData`
121
+ """
122
+ return self.__external_cardholder_authentication_data
123
+
124
+ @external_cardholder_authentication_data.setter
125
+ def external_cardholder_authentication_data(self, value: Optional[ExternalCardholderAuthenticationData]) -> None:
126
+ self.__external_cardholder_authentication_data = value
127
+
128
+ @property
129
+ def merchant_fraud_rate(self) -> Optional[int]:
130
+ """
131
+ | The merchant fraud rate in the EEA is calculated as the total EEA card fraud divided by all EEA card volumes, as per PSD2 RTS. Mastercard will not calculate or validate the merchant fraud score. Accepted values are:
132
+
133
+ * 1 - represents a fraud rate less than or equal to 1 basis point (bp), which is 0.01%.
134
+ * 2 - represents a fraud rate between 1 bp and 6 bps.
135
+ * 3 - represents a fraud rate between 6 bps and 13 bps.
136
+ * 4 - represents a fraud rate between 13 bps and 25 bps.
137
+ * 5 - represents a fraud rate greater than 25 bps.
138
+
139
+ Type: int
140
+ """
141
+ return self.__merchant_fraud_rate
142
+
143
+ @merchant_fraud_rate.setter
144
+ def merchant_fraud_rate(self, value: Optional[int]) -> None:
145
+ self.__merchant_fraud_rate = value
146
+
147
+ @property
148
+ def prior_three_d_secure_data(self) -> Optional[ThreeDSecureData]:
149
+ """
150
+ | Object containing data regarding the customer authentication that occurred prior to the current transaction
151
+
152
+ Type: :class:`onlinepayments.sdk.domain.three_d_secure_data.ThreeDSecureData`
153
+ """
154
+ return self.__prior_three_d_secure_data
155
+
156
+ @prior_three_d_secure_data.setter
157
+ def prior_three_d_secure_data(self, value: Optional[ThreeDSecureData]) -> None:
158
+ self.__prior_three_d_secure_data = value
159
+
160
+ @property
161
+ def redirection_data(self) -> Optional[RedirectionData]:
162
+ """
163
+ | Object containing browser specific redirection related data
164
+
165
+ Type: :class:`onlinepayments.sdk.domain.redirection_data.RedirectionData`
166
+ """
167
+ return self.__redirection_data
168
+
169
+ @redirection_data.setter
170
+ def redirection_data(self, value: Optional[RedirectionData]) -> None:
171
+ self.__redirection_data = value
172
+
173
+ @property
174
+ def secure_corporate_payment(self) -> Optional[bool]:
175
+ """
176
+ | Indicates that dedicated payment processes and procedures were used. A potential secure corporate payment exemption applies. Logically, this field should only be set to 'yes' if the acquirer exemption field is blank. A merchant cannot claim both acquirer exemption and secure payment. However, the DS will not validate the conditions in the extension; DS will pass data as presented.
177
+
178
+ Type: bool
179
+ """
180
+ return self.__secure_corporate_payment
181
+
182
+ @secure_corporate_payment.setter
183
+ def secure_corporate_payment(self, value: Optional[bool]) -> None:
184
+ self.__secure_corporate_payment = value
185
+
186
+ @property
187
+ def skip_authentication(self) -> Optional[bool]:
188
+ """
189
+ * true = 3D Secure authentication will be skipped for this transaction. This setting should be used when isRecurring is set to true and recurringPaymentSequenceIndicator is set to "recurring"
190
+ * false = 3D Secure authentication will not be skipped for this transaction
191
+
192
+ | Note: This is only possible if your account in our system is setup for 3D Secure authentication and if your configuration in our system allows you to override it per transaction
193
+
194
+ Type: bool
195
+ """
196
+ return self.__skip_authentication
197
+
198
+ @skip_authentication.setter
199
+ def skip_authentication(self, value: Optional[bool]) -> None:
200
+ self.__skip_authentication = value
201
+
202
+ @property
203
+ def skip_soft_decline(self) -> Optional[bool]:
204
+ """
205
+ * true = Soft Decline retry mechanism will be skipped for this transaction. The transaction will result in "Authorization Declined" status. This setting should be used when skipAuthentication is set to true and the merchant does not want to use Soft Decline retry mechanism.
206
+ * false = Soft Decline retry mechanism will not be skipped for this transaction.
207
+
208
+ | Note: skipSoftDecline defaults to false if empty. This is only possible if your account in our system is setup for 3D Secure authentication and if your configuration in our system allows you to override it per transaction.
209
+
210
+ Type: bool
211
+ """
212
+ return self.__skip_soft_decline
213
+
214
+ @skip_soft_decline.setter
215
+ def skip_soft_decline(self, value: Optional[bool]) -> None:
216
+ self.__skip_soft_decline = value
217
+
218
+ def to_dictionary(self) -> dict:
219
+ dictionary = super(ThreeDSecure, self).to_dictionary()
220
+ if self.authentication_amount is not None:
221
+ dictionary['authenticationAmount'] = self.authentication_amount
222
+ if self.challenge_canvas_size is not None:
223
+ dictionary['challengeCanvasSize'] = self.challenge_canvas_size
224
+ if self.challenge_indicator is not None:
225
+ dictionary['challengeIndicator'] = self.challenge_indicator
226
+ if self.device_channel is not None:
227
+ dictionary['deviceChannel'] = self.device_channel
228
+ if self.exemption_request is not None:
229
+ dictionary['exemptionRequest'] = self.exemption_request
230
+ if self.external_cardholder_authentication_data is not None:
231
+ dictionary['externalCardholderAuthenticationData'] = self.external_cardholder_authentication_data.to_dictionary()
232
+ if self.merchant_fraud_rate is not None:
233
+ dictionary['merchantFraudRate'] = self.merchant_fraud_rate
234
+ if self.prior_three_d_secure_data is not None:
235
+ dictionary['priorThreeDSecureData'] = self.prior_three_d_secure_data.to_dictionary()
236
+ if self.redirection_data is not None:
237
+ dictionary['redirectionData'] = self.redirection_data.to_dictionary()
238
+ if self.secure_corporate_payment is not None:
239
+ dictionary['secureCorporatePayment'] = self.secure_corporate_payment
240
+ if self.skip_authentication is not None:
241
+ dictionary['skipAuthentication'] = self.skip_authentication
242
+ if self.skip_soft_decline is not None:
243
+ dictionary['skipSoftDecline'] = self.skip_soft_decline
244
+ return dictionary
245
+
246
+ def from_dictionary(self, dictionary: dict) -> 'ThreeDSecure':
247
+ super(ThreeDSecure, self).from_dictionary(dictionary)
248
+ if 'authenticationAmount' in dictionary:
249
+ self.authentication_amount = dictionary['authenticationAmount']
250
+ if 'challengeCanvasSize' in dictionary:
251
+ self.challenge_canvas_size = dictionary['challengeCanvasSize']
252
+ if 'challengeIndicator' in dictionary:
253
+ self.challenge_indicator = dictionary['challengeIndicator']
254
+ if 'deviceChannel' in dictionary:
255
+ self.device_channel = dictionary['deviceChannel']
256
+ if 'exemptionRequest' in dictionary:
257
+ self.exemption_request = dictionary['exemptionRequest']
258
+ if 'externalCardholderAuthenticationData' in dictionary:
259
+ if not isinstance(dictionary['externalCardholderAuthenticationData'], dict):
260
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['externalCardholderAuthenticationData']))
261
+ value = ExternalCardholderAuthenticationData()
262
+ self.external_cardholder_authentication_data = value.from_dictionary(dictionary['externalCardholderAuthenticationData'])
263
+ if 'merchantFraudRate' in dictionary:
264
+ self.merchant_fraud_rate = dictionary['merchantFraudRate']
265
+ if 'priorThreeDSecureData' in dictionary:
266
+ if not isinstance(dictionary['priorThreeDSecureData'], dict):
267
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['priorThreeDSecureData']))
268
+ value = ThreeDSecureData()
269
+ self.prior_three_d_secure_data = value.from_dictionary(dictionary['priorThreeDSecureData'])
270
+ if 'redirectionData' in dictionary:
271
+ if not isinstance(dictionary['redirectionData'], dict):
272
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['redirectionData']))
273
+ value = RedirectionData()
274
+ self.redirection_data = value.from_dictionary(dictionary['redirectionData'])
275
+ if 'secureCorporatePayment' in dictionary:
276
+ self.secure_corporate_payment = dictionary['secureCorporatePayment']
277
+ if 'skipAuthentication' in dictionary:
278
+ self.skip_authentication = dictionary['skipAuthentication']
279
+ if 'skipSoftDecline' in dictionary:
280
+ self.skip_soft_decline = dictionary['skipSoftDecline']
281
+ return self