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,219 @@
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 .three_d_secure_data import ThreeDSecureData
9
+
10
+
11
+ class ThreeDSecureBase(DataObject):
12
+
13
+ __authentication_amount: Optional[int] = None
14
+ __challenge_canvas_size: Optional[str] = None
15
+ __challenge_indicator: Optional[str] = None
16
+ __exemption_request: Optional[str] = None
17
+ __merchant_fraud_rate: Optional[int] = None
18
+ __prior_three_d_secure_data: Optional[ThreeDSecureData] = None
19
+ __secure_corporate_payment: Optional[bool] = None
20
+ __skip_authentication: Optional[bool] = None
21
+ __skip_soft_decline: Optional[bool] = None
22
+
23
+ @property
24
+ def authentication_amount(self) -> Optional[int]:
25
+ """
26
+ | 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.
27
+
28
+ Type: int
29
+ """
30
+ return self.__authentication_amount
31
+
32
+ @authentication_amount.setter
33
+ def authentication_amount(self, value: Optional[int]) -> None:
34
+ self.__authentication_amount = value
35
+
36
+ @property
37
+ def challenge_canvas_size(self) -> Optional[str]:
38
+ """
39
+ | 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
40
+
41
+ * 250x400 (default)
42
+ * 390x400
43
+ * 500x600
44
+ * 600x400
45
+ * full-screen
46
+
47
+ Type: str
48
+ """
49
+ return self.__challenge_canvas_size
50
+
51
+ @challenge_canvas_size.setter
52
+ def challenge_canvas_size(self, value: Optional[str]) -> None:
53
+ self.__challenge_canvas_size = value
54
+
55
+ @property
56
+ def challenge_indicator(self) -> Optional[str]:
57
+ """
58
+ | Allows you to indicate if you want the customer to be challenged for extra security on this transaction. Possible values:
59
+
60
+ * no-preference - You have no preference whether or not to challenge the customer (default)
61
+ * no-challenge-requested - you prefer the cardholder not to be challenged
62
+ * challenge-requested - you prefer the customer to be challenged
63
+ * challenge-required - you require the customer to be challenged
64
+ * no-challenge-requested-risk-analysis-performed – letting the issuer know that you have already assessed the transaction with fraud prevention tool
65
+ * no-challenge-requested-data-share-only – sharing data only with the DS
66
+ * no-challenge-requested-consumer-authentication-performed – authentication already happened at your side – when login in to your website
67
+ * no-challenge-requested-use-whitelist-exemption – cardholder has whitelisted you at with the issuer
68
+ * challenge-requested-whitelist-prompt-requested – cardholder is trying to whitelist you
69
+ * request-scoring-without-connecting-to-acs – sending information to CB DS for a fraud scoring
70
+
71
+ Type: str
72
+ """
73
+ return self.__challenge_indicator
74
+
75
+ @challenge_indicator.setter
76
+ def challenge_indicator(self, value: Optional[str]) -> None:
77
+ self.__challenge_indicator = value
78
+
79
+ @property
80
+ def exemption_request(self) -> Optional[str]:
81
+ """
82
+ | 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.
83
+
84
+ * none = No exemption requested
85
+ * transaction-risk-analysis = Fraud analysis has been done already by your own fraud module and transaction scored as low risk
86
+ * low-value = Bellow 30 euros
87
+ * whitelist = The cardholder has whitelisted you with their issuer
88
+
89
+ Type: str
90
+ """
91
+ return self.__exemption_request
92
+
93
+ @exemption_request.setter
94
+ def exemption_request(self, value: Optional[str]) -> None:
95
+ self.__exemption_request = value
96
+
97
+ @property
98
+ def merchant_fraud_rate(self) -> Optional[int]:
99
+ """
100
+ | 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:
101
+
102
+ * 1 - represents a fraud rate less than or equal to 1 basis point (bp), which is 0.01%.
103
+ * 2 - represents a fraud rate between 1 bp and 6 bps.
104
+ * 3 - represents a fraud rate between 6 bps and 13 bps.
105
+ * 4 - represents a fraud rate between 13 bps and 25 bps.
106
+ * 5 - represents a fraud rate greater than 25 bps.
107
+
108
+ Type: int
109
+ """
110
+ return self.__merchant_fraud_rate
111
+
112
+ @merchant_fraud_rate.setter
113
+ def merchant_fraud_rate(self, value: Optional[int]) -> None:
114
+ self.__merchant_fraud_rate = value
115
+
116
+ @property
117
+ def prior_three_d_secure_data(self) -> Optional[ThreeDSecureData]:
118
+ """
119
+ | Object containing data regarding the customer authentication that occurred prior to the current transaction
120
+
121
+ Type: :class:`onlinepayments.sdk.domain.three_d_secure_data.ThreeDSecureData`
122
+ """
123
+ return self.__prior_three_d_secure_data
124
+
125
+ @prior_three_d_secure_data.setter
126
+ def prior_three_d_secure_data(self, value: Optional[ThreeDSecureData]) -> None:
127
+ self.__prior_three_d_secure_data = value
128
+
129
+ @property
130
+ def secure_corporate_payment(self) -> Optional[bool]:
131
+ """
132
+ | 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.
133
+
134
+ Type: bool
135
+ """
136
+ return self.__secure_corporate_payment
137
+
138
+ @secure_corporate_payment.setter
139
+ def secure_corporate_payment(self, value: Optional[bool]) -> None:
140
+ self.__secure_corporate_payment = value
141
+
142
+ @property
143
+ def skip_authentication(self) -> Optional[bool]:
144
+ """
145
+ * 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"
146
+ * false = 3D Secure authentication will not be skipped for this transaction
147
+
148
+ | 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
149
+
150
+ Type: bool
151
+ """
152
+ return self.__skip_authentication
153
+
154
+ @skip_authentication.setter
155
+ def skip_authentication(self, value: Optional[bool]) -> None:
156
+ self.__skip_authentication = value
157
+
158
+ @property
159
+ def skip_soft_decline(self) -> Optional[bool]:
160
+ """
161
+ * 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.
162
+ * false = Soft Decline retry mechanism will not be skipped for this transaction.
163
+
164
+ | 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.
165
+
166
+ Type: bool
167
+ """
168
+ return self.__skip_soft_decline
169
+
170
+ @skip_soft_decline.setter
171
+ def skip_soft_decline(self, value: Optional[bool]) -> None:
172
+ self.__skip_soft_decline = value
173
+
174
+ def to_dictionary(self) -> dict:
175
+ dictionary = super(ThreeDSecureBase, self).to_dictionary()
176
+ if self.authentication_amount is not None:
177
+ dictionary['authenticationAmount'] = self.authentication_amount
178
+ if self.challenge_canvas_size is not None:
179
+ dictionary['challengeCanvasSize'] = self.challenge_canvas_size
180
+ if self.challenge_indicator is not None:
181
+ dictionary['challengeIndicator'] = self.challenge_indicator
182
+ if self.exemption_request is not None:
183
+ dictionary['exemptionRequest'] = self.exemption_request
184
+ if self.merchant_fraud_rate is not None:
185
+ dictionary['merchantFraudRate'] = self.merchant_fraud_rate
186
+ if self.prior_three_d_secure_data is not None:
187
+ dictionary['priorThreeDSecureData'] = self.prior_three_d_secure_data.to_dictionary()
188
+ if self.secure_corporate_payment is not None:
189
+ dictionary['secureCorporatePayment'] = self.secure_corporate_payment
190
+ if self.skip_authentication is not None:
191
+ dictionary['skipAuthentication'] = self.skip_authentication
192
+ if self.skip_soft_decline is not None:
193
+ dictionary['skipSoftDecline'] = self.skip_soft_decline
194
+ return dictionary
195
+
196
+ def from_dictionary(self, dictionary: dict) -> 'ThreeDSecureBase':
197
+ super(ThreeDSecureBase, self).from_dictionary(dictionary)
198
+ if 'authenticationAmount' in dictionary:
199
+ self.authentication_amount = dictionary['authenticationAmount']
200
+ if 'challengeCanvasSize' in dictionary:
201
+ self.challenge_canvas_size = dictionary['challengeCanvasSize']
202
+ if 'challengeIndicator' in dictionary:
203
+ self.challenge_indicator = dictionary['challengeIndicator']
204
+ if 'exemptionRequest' in dictionary:
205
+ self.exemption_request = dictionary['exemptionRequest']
206
+ if 'merchantFraudRate' in dictionary:
207
+ self.merchant_fraud_rate = dictionary['merchantFraudRate']
208
+ if 'priorThreeDSecureData' in dictionary:
209
+ if not isinstance(dictionary['priorThreeDSecureData'], dict):
210
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['priorThreeDSecureData']))
211
+ value = ThreeDSecureData()
212
+ self.prior_three_d_secure_data = value.from_dictionary(dictionary['priorThreeDSecureData'])
213
+ if 'secureCorporatePayment' in dictionary:
214
+ self.secure_corporate_payment = dictionary['secureCorporatePayment']
215
+ if 'skipAuthentication' in dictionary:
216
+ self.skip_authentication = dictionary['skipAuthentication']
217
+ if 'skipSoftDecline' in dictionary:
218
+ self.skip_soft_decline = dictionary['skipSoftDecline']
219
+ return self
@@ -0,0 +1,78 @@
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 ThreeDSecureData(DataObject):
11
+
12
+ __acs_transaction_id: Optional[str] = None
13
+ __method: Optional[str] = None
14
+ __utc_timestamp: Optional[str] = None
15
+
16
+ @property
17
+ def acs_transaction_id(self) -> Optional[str]:
18
+ """
19
+ | The ACS Transaction ID for a prior 3-D Secure authenticated transaction (for example, the first recurring transaction that was authenticated with the customer)
20
+
21
+ Type: str
22
+ """
23
+ return self.__acs_transaction_id
24
+
25
+ @acs_transaction_id.setter
26
+ def acs_transaction_id(self, value: Optional[str]) -> None:
27
+ self.__acs_transaction_id = value
28
+
29
+ @property
30
+ def method(self) -> Optional[str]:
31
+ """
32
+ | Method of authentication used for this transaction. Possible values:
33
+
34
+ * frictionless = The authentication went without a challenge
35
+ * challenged = Cardholder was challenged
36
+ * avs-verified = The authentication was verified by AVS
37
+ * other = Another issuer method was used to authenticate this transaction
38
+
39
+ Type: str
40
+ """
41
+ return self.__method
42
+
43
+ @method.setter
44
+ def method(self, value: Optional[str]) -> None:
45
+ self.__method = value
46
+
47
+ @property
48
+ def utc_timestamp(self) -> Optional[str]:
49
+ """
50
+ | Timestamp in UTC (YYYYMMDDHHmm) of the 3-D Secure authentication of this transaction
51
+
52
+ Type: str
53
+ """
54
+ return self.__utc_timestamp
55
+
56
+ @utc_timestamp.setter
57
+ def utc_timestamp(self, value: Optional[str]) -> None:
58
+ self.__utc_timestamp = value
59
+
60
+ def to_dictionary(self) -> dict:
61
+ dictionary = super(ThreeDSecureData, self).to_dictionary()
62
+ if self.acs_transaction_id is not None:
63
+ dictionary['acsTransactionId'] = self.acs_transaction_id
64
+ if self.method is not None:
65
+ dictionary['method'] = self.method
66
+ if self.utc_timestamp is not None:
67
+ dictionary['utcTimestamp'] = self.utc_timestamp
68
+ return dictionary
69
+
70
+ def from_dictionary(self, dictionary: dict) -> 'ThreeDSecureData':
71
+ super(ThreeDSecureData, self).from_dictionary(dictionary)
72
+ if 'acsTransactionId' in dictionary:
73
+ self.acs_transaction_id = dictionary['acsTransactionId']
74
+ if 'method' in dictionary:
75
+ self.method = dictionary['method']
76
+ if 'utcTimestamp' in dictionary:
77
+ self.utc_timestamp = dictionary['utcTimestamp']
78
+ return self
@@ -0,0 +1,266 @@
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 ThreeDSecureResults(DataObject):
11
+
12
+ __acs_transaction_id: Optional[str] = None
13
+ __applied_exemption: Optional[str] = None
14
+ __authentication_status: Optional[str] = None
15
+ __cavv: Optional[str] = None
16
+ __challenge_indicator: Optional[str] = None
17
+ __ds_transaction_id: Optional[str] = None
18
+ __eci: Optional[str] = None
19
+ __exemption_engine_flow: Optional[str] = None
20
+ __flow: Optional[str] = None
21
+ __liability: Optional[str] = None
22
+ __scheme_eci: Optional[str] = None
23
+ __version: Optional[str] = None
24
+ __xid: Optional[str] = None
25
+
26
+ @property
27
+ def acs_transaction_id(self) -> Optional[str]:
28
+ """
29
+ | Authenticated Transaction Identifier at the ACS/Issuer.
30
+
31
+ Type: str
32
+ """
33
+ return self.__acs_transaction_id
34
+
35
+ @acs_transaction_id.setter
36
+ def acs_transaction_id(self, value: Optional[str]) -> None:
37
+ self.__acs_transaction_id = value
38
+
39
+ @property
40
+ def applied_exemption(self) -> Optional[str]:
41
+ """
42
+ | Exemption requested and applied in the authorization
43
+
44
+ Type: str
45
+ """
46
+ return self.__applied_exemption
47
+
48
+ @applied_exemption.setter
49
+ def applied_exemption(self, value: Optional[str]) -> None:
50
+ self.__applied_exemption = value
51
+
52
+ @property
53
+ def authentication_status(self) -> Optional[str]:
54
+ """
55
+ | One-letter authentication status returned by DS. Possible values are:
56
+
57
+ * Y - Authentication succeeded
58
+ * A - Authentication attempted
59
+ * I - Information only, liability shifted to the merchant
60
+ * N - Authentication failed
61
+ * R - Authentication rejected
62
+ * U - Authentication unavailable
63
+ * C - Authentication required
64
+
65
+ Type: str
66
+ """
67
+ return self.__authentication_status
68
+
69
+ @authentication_status.setter
70
+ def authentication_status(self, value: Optional[str]) -> None:
71
+ self.__authentication_status = value
72
+
73
+ @property
74
+ def cavv(self) -> Optional[str]:
75
+ """
76
+ | Cardholder Authentication Verification Value. End-2-end reference generated by the Issuer to recognize that the authentication has taken place.
77
+
78
+ Type: str
79
+ """
80
+ return self.__cavv
81
+
82
+ @cavv.setter
83
+ def cavv(self, value: Optional[str]) -> None:
84
+ self.__cavv = value
85
+
86
+ @property
87
+ def challenge_indicator(self) -> Optional[str]:
88
+ """
89
+ | Challenge Indicator used for this transaction. This value might differ from the one sent by the merchant if the card is not supporting it (3DS version 2.1 vs 3DS version 2.2).
90
+
91
+ Type: str
92
+ """
93
+ return self.__challenge_indicator
94
+
95
+ @challenge_indicator.setter
96
+ def challenge_indicator(self, value: Optional[str]) -> None:
97
+ self.__challenge_indicator = value
98
+
99
+ @property
100
+ def ds_transaction_id(self) -> Optional[str]:
101
+ """
102
+ | 3D Secure Directory Server Transaction Identifier used for this transaction.
103
+
104
+ Type: str
105
+ """
106
+ return self.__ds_transaction_id
107
+
108
+ @ds_transaction_id.setter
109
+ def ds_transaction_id(self, value: Optional[str]) -> None:
110
+ self.__ds_transaction_id = value
111
+
112
+ @property
113
+ def eci(self) -> Optional[str]:
114
+ """
115
+ | Indicates Authentication validation results returned after AuthenticationValidation
116
+
117
+ Type: str
118
+ """
119
+ return self.__eci
120
+
121
+ @eci.setter
122
+ def eci(self, value: Optional[str]) -> None:
123
+ self.__eci = value
124
+
125
+ @property
126
+ def exemption_engine_flow(self) -> Optional[str]:
127
+ """
128
+ | Detailed description of the Exemption Engine outcomes
129
+
130
+ Type: str
131
+ """
132
+ return self.__exemption_engine_flow
133
+
134
+ @exemption_engine_flow.setter
135
+ def exemption_engine_flow(self, value: Optional[str]) -> None:
136
+ self.__exemption_engine_flow = value
137
+
138
+ @property
139
+ def flow(self) -> Optional[str]:
140
+ """
141
+ | 3D Secure Flow used during this transaction.
142
+
143
+ Type: str
144
+ """
145
+ return self.__flow
146
+
147
+ @flow.setter
148
+ def flow(self, value: Optional[str]) -> None:
149
+ self.__flow = value
150
+
151
+ @property
152
+ def liability(self) -> Optional[str]:
153
+ """
154
+ | Determines the Fraud liability. Possible values are:
155
+
156
+ * issuer - Fraud liability shifts to the issuer
157
+ * merchant - Fraud liability with the merchant
158
+
159
+ | Note: When not filled in Fraud liability is not applicable for the current transaction.
160
+
161
+ Type: str
162
+ """
163
+ return self.__liability
164
+
165
+ @liability.setter
166
+ def liability(self, value: Optional[str]) -> None:
167
+ self.__liability = value
168
+
169
+ @property
170
+ def scheme_eci(self) -> Optional[str]:
171
+ """
172
+ | 3D Secure ECI (Electronic Commerce Indicator) depending on the Scheme. Returned by DS.
173
+
174
+ Type: str
175
+ """
176
+ return self.__scheme_eci
177
+
178
+ @scheme_eci.setter
179
+ def scheme_eci(self, value: Optional[str]) -> None:
180
+ self.__scheme_eci = value
181
+
182
+ @property
183
+ def version(self) -> Optional[str]:
184
+ """
185
+ | 3D Secure Protocol version used during this transaction.
186
+
187
+ Type: str
188
+ """
189
+ return self.__version
190
+
191
+ @version.setter
192
+ def version(self, value: Optional[str]) -> None:
193
+ self.__version = value
194
+
195
+ @property
196
+ def xid(self) -> Optional[str]:
197
+ """
198
+ | Transaction ID for the Authentication
199
+
200
+ Type: str
201
+ """
202
+ return self.__xid
203
+
204
+ @xid.setter
205
+ def xid(self, value: Optional[str]) -> None:
206
+ self.__xid = value
207
+
208
+ def to_dictionary(self) -> dict:
209
+ dictionary = super(ThreeDSecureResults, self).to_dictionary()
210
+ if self.acs_transaction_id is not None:
211
+ dictionary['acsTransactionId'] = self.acs_transaction_id
212
+ if self.applied_exemption is not None:
213
+ dictionary['appliedExemption'] = self.applied_exemption
214
+ if self.authentication_status is not None:
215
+ dictionary['authenticationStatus'] = self.authentication_status
216
+ if self.cavv is not None:
217
+ dictionary['cavv'] = self.cavv
218
+ if self.challenge_indicator is not None:
219
+ dictionary['challengeIndicator'] = self.challenge_indicator
220
+ if self.ds_transaction_id is not None:
221
+ dictionary['dsTransactionId'] = self.ds_transaction_id
222
+ if self.eci is not None:
223
+ dictionary['eci'] = self.eci
224
+ if self.exemption_engine_flow is not None:
225
+ dictionary['exemptionEngineFlow'] = self.exemption_engine_flow
226
+ if self.flow is not None:
227
+ dictionary['flow'] = self.flow
228
+ if self.liability is not None:
229
+ dictionary['liability'] = self.liability
230
+ if self.scheme_eci is not None:
231
+ dictionary['schemeEci'] = self.scheme_eci
232
+ if self.version is not None:
233
+ dictionary['version'] = self.version
234
+ if self.xid is not None:
235
+ dictionary['xid'] = self.xid
236
+ return dictionary
237
+
238
+ def from_dictionary(self, dictionary: dict) -> 'ThreeDSecureResults':
239
+ super(ThreeDSecureResults, self).from_dictionary(dictionary)
240
+ if 'acsTransactionId' in dictionary:
241
+ self.acs_transaction_id = dictionary['acsTransactionId']
242
+ if 'appliedExemption' in dictionary:
243
+ self.applied_exemption = dictionary['appliedExemption']
244
+ if 'authenticationStatus' in dictionary:
245
+ self.authentication_status = dictionary['authenticationStatus']
246
+ if 'cavv' in dictionary:
247
+ self.cavv = dictionary['cavv']
248
+ if 'challengeIndicator' in dictionary:
249
+ self.challenge_indicator = dictionary['challengeIndicator']
250
+ if 'dsTransactionId' in dictionary:
251
+ self.ds_transaction_id = dictionary['dsTransactionId']
252
+ if 'eci' in dictionary:
253
+ self.eci = dictionary['eci']
254
+ if 'exemptionEngineFlow' in dictionary:
255
+ self.exemption_engine_flow = dictionary['exemptionEngineFlow']
256
+ if 'flow' in dictionary:
257
+ self.flow = dictionary['flow']
258
+ if 'liability' in dictionary:
259
+ self.liability = dictionary['liability']
260
+ if 'schemeEci' in dictionary:
261
+ self.scheme_eci = dictionary['schemeEci']
262
+ if 'version' in dictionary:
263
+ self.version = dictionary['version']
264
+ if 'xid' in dictionary:
265
+ self.xid = dictionary['xid']
266
+ return self
@@ -0,0 +1,57 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # This file was automatically generated.
4
+ #
5
+ from typing import Optional
6
+
7
+ from .data_object import DataObject
8
+ from .token_card_data import TokenCardData
9
+
10
+
11
+ class TokenCard(DataObject):
12
+
13
+ __alias: Optional[str] = None
14
+ __data: Optional[TokenCardData] = None
15
+
16
+ @property
17
+ def alias(self) -> Optional[str]:
18
+ """
19
+ | An alias for the token. This can be used to visually represent the token.
20
+
21
+ Type: str
22
+ """
23
+ return self.__alias
24
+
25
+ @alias.setter
26
+ def alias(self, value: Optional[str]) -> None:
27
+ self.__alias = value
28
+
29
+ @property
30
+ def data(self) -> Optional[TokenCardData]:
31
+ """
32
+ Type: :class:`onlinepayments.sdk.domain.token_card_data.TokenCardData`
33
+ """
34
+ return self.__data
35
+
36
+ @data.setter
37
+ def data(self, value: Optional[TokenCardData]) -> None:
38
+ self.__data = value
39
+
40
+ def to_dictionary(self) -> dict:
41
+ dictionary = super(TokenCard, self).to_dictionary()
42
+ if self.alias is not None:
43
+ dictionary['alias'] = self.alias
44
+ if self.data is not None:
45
+ dictionary['data'] = self.data.to_dictionary()
46
+ return dictionary
47
+
48
+ def from_dictionary(self, dictionary: dict) -> 'TokenCard':
49
+ super(TokenCard, self).from_dictionary(dictionary)
50
+ if 'alias' in dictionary:
51
+ self.alias = dictionary['alias']
52
+ if 'data' in dictionary:
53
+ if not isinstance(dictionary['data'], dict):
54
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['data']))
55
+ value = TokenCardData()
56
+ self.data = value.from_dictionary(dictionary['data'])
57
+ return self