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,185 @@
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 .personal_name import PersonalName
9
+
10
+
11
+ class AddressPersonal(DataObject):
12
+
13
+ __additional_info: Optional[str] = None
14
+ __city: Optional[str] = None
15
+ __company_name: Optional[str] = None
16
+ __country_code: Optional[str] = None
17
+ __house_number: Optional[str] = None
18
+ __name: Optional[PersonalName] = None
19
+ __state: Optional[str] = None
20
+ __street: Optional[str] = None
21
+ __zip: Optional[str] = None
22
+
23
+ @property
24
+ def additional_info(self) -> Optional[str]:
25
+ """
26
+ | Second line of street or additional address information
27
+
28
+ Type: str
29
+ """
30
+ return self.__additional_info
31
+
32
+ @additional_info.setter
33
+ def additional_info(self, value: Optional[str]) -> None:
34
+ self.__additional_info = value
35
+
36
+ @property
37
+ def city(self) -> Optional[str]:
38
+ """
39
+ | City
40
+
41
+ Type: str
42
+ """
43
+ return self.__city
44
+
45
+ @city.setter
46
+ def city(self, value: Optional[str]) -> None:
47
+ self.__city = value
48
+
49
+ @property
50
+ def company_name(self) -> Optional[str]:
51
+ """
52
+ | Company Name
53
+
54
+ Type: str
55
+ """
56
+ return self.__company_name
57
+
58
+ @company_name.setter
59
+ def company_name(self, value: Optional[str]) -> None:
60
+ self.__company_name = value
61
+
62
+ @property
63
+ def country_code(self) -> Optional[str]:
64
+ """
65
+ | ISO 3166-1 alpha-2 country code
66
+
67
+ Type: str
68
+ """
69
+ return self.__country_code
70
+
71
+ @country_code.setter
72
+ def country_code(self, value: Optional[str]) -> None:
73
+ self.__country_code = value
74
+
75
+ @property
76
+ def house_number(self) -> Optional[str]:
77
+ """
78
+ | House number
79
+
80
+ Type: str
81
+ """
82
+ return self.__house_number
83
+
84
+ @house_number.setter
85
+ def house_number(self, value: Optional[str]) -> None:
86
+ self.__house_number = value
87
+
88
+ @property
89
+ def name(self) -> Optional[PersonalName]:
90
+ """
91
+ | Object containing the name details of the customer
92
+
93
+ Type: :class:`onlinepayments.sdk.domain.personal_name.PersonalName`
94
+ """
95
+ return self.__name
96
+
97
+ @name.setter
98
+ def name(self, value: Optional[PersonalName]) -> None:
99
+ self.__name = value
100
+
101
+ @property
102
+ def state(self) -> Optional[str]:
103
+ """
104
+ | ISO 3166-2 country subdivision code
105
+
106
+ Type: str
107
+ """
108
+ return self.__state
109
+
110
+ @state.setter
111
+ def state(self, value: Optional[str]) -> None:
112
+ self.__state = value
113
+
114
+ @property
115
+ def street(self) -> Optional[str]:
116
+ """
117
+ | Street name
118
+
119
+ Type: str
120
+ """
121
+ return self.__street
122
+
123
+ @street.setter
124
+ def street(self, value: Optional[str]) -> None:
125
+ self.__street = value
126
+
127
+ @property
128
+ def zip(self) -> Optional[str]:
129
+ """
130
+ | Zip code
131
+
132
+ Type: str
133
+ """
134
+ return self.__zip
135
+
136
+ @zip.setter
137
+ def zip(self, value: Optional[str]) -> None:
138
+ self.__zip = value
139
+
140
+ def to_dictionary(self) -> dict:
141
+ dictionary = super(AddressPersonal, self).to_dictionary()
142
+ if self.additional_info is not None:
143
+ dictionary['additionalInfo'] = self.additional_info
144
+ if self.city is not None:
145
+ dictionary['city'] = self.city
146
+ if self.company_name is not None:
147
+ dictionary['companyName'] = self.company_name
148
+ if self.country_code is not None:
149
+ dictionary['countryCode'] = self.country_code
150
+ if self.house_number is not None:
151
+ dictionary['houseNumber'] = self.house_number
152
+ if self.name is not None:
153
+ dictionary['name'] = self.name.to_dictionary()
154
+ if self.state is not None:
155
+ dictionary['state'] = self.state
156
+ if self.street is not None:
157
+ dictionary['street'] = self.street
158
+ if self.zip is not None:
159
+ dictionary['zip'] = self.zip
160
+ return dictionary
161
+
162
+ def from_dictionary(self, dictionary: dict) -> 'AddressPersonal':
163
+ super(AddressPersonal, self).from_dictionary(dictionary)
164
+ if 'additionalInfo' in dictionary:
165
+ self.additional_info = dictionary['additionalInfo']
166
+ if 'city' in dictionary:
167
+ self.city = dictionary['city']
168
+ if 'companyName' in dictionary:
169
+ self.company_name = dictionary['companyName']
170
+ if 'countryCode' in dictionary:
171
+ self.country_code = dictionary['countryCode']
172
+ if 'houseNumber' in dictionary:
173
+ self.house_number = dictionary['houseNumber']
174
+ if 'name' in dictionary:
175
+ if not isinstance(dictionary['name'], dict):
176
+ raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['name']))
177
+ value = PersonalName()
178
+ self.name = value.from_dictionary(dictionary['name'])
179
+ if 'state' in dictionary:
180
+ self.state = dictionary['state']
181
+ if 'street' in dictionary:
182
+ self.street = dictionary['street']
183
+ if 'zip' in dictionary:
184
+ self.zip = dictionary['zip']
185
+ return self
@@ -0,0 +1,519 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # This file was automatically generated.
4
+ #
5
+ from typing import List, Optional
6
+
7
+ from .airline_flight_leg import AirlineFlightLeg
8
+ from .airline_passenger import AirlinePassenger
9
+ from .data_object import DataObject
10
+
11
+
12
+ class AirlineData(DataObject):
13
+
14
+ __agent_numeric_code: Optional[str] = None
15
+ __code: Optional[str] = None
16
+ __flight_date: Optional[str] = None
17
+ __flight_indicator: Optional[str] = None
18
+ __flight_legs: Optional[List[AirlineFlightLeg]] = None
19
+ __invoice_number: Optional[str] = None
20
+ __is_e_ticket: Optional[bool] = None
21
+ __is_restricted_ticket: Optional[bool] = None
22
+ __is_third_party: Optional[bool] = None
23
+ __issue_date: Optional[str] = None
24
+ __merchant_customer_id: Optional[str] = None
25
+ __name: Optional[str] = None
26
+ __passenger_name: Optional[str] = None
27
+ __passengers: Optional[List[AirlinePassenger]] = None
28
+ __place_of_issue: Optional[str] = None
29
+ __pnr: Optional[str] = None
30
+ __point_of_sale: Optional[str] = None
31
+ __pos_city_code: Optional[str] = None
32
+ __ticket_currency: Optional[str] = None
33
+ __ticket_delivery_method: Optional[str] = None
34
+ __ticket_number: Optional[str] = None
35
+ __total_fare: Optional[int] = None
36
+ __total_fee: Optional[int] = None
37
+ __total_taxes: Optional[int] = None
38
+ __travel_agency_name: Optional[str] = None
39
+
40
+ @property
41
+ def agent_numeric_code(self) -> Optional[str]:
42
+ """
43
+ | Numeric code identifying the agent This field is used by the following payment products: 840
44
+
45
+ Type: str
46
+ """
47
+ return self.__agent_numeric_code
48
+
49
+ @agent_numeric_code.setter
50
+ def agent_numeric_code(self, value: Optional[str]) -> None:
51
+ self.__agent_numeric_code = value
52
+
53
+ @property
54
+ def code(self) -> Optional[str]:
55
+ """
56
+ | Airline numeric code This field is used by the following payment products: 840
57
+
58
+ Type: str
59
+ """
60
+ return self.__code
61
+
62
+ @code.setter
63
+ def code(self, value: Optional[str]) -> None:
64
+ self.__code = value
65
+
66
+ @property
67
+ def flight_date(self) -> Optional[str]:
68
+ """
69
+ | Deprecated: This field is not used by any payment product Date of the Flight Format: YYYYMMDD
70
+
71
+ Type: str
72
+
73
+ Deprecated; This field is not used by any payment product Date of the Flight Format: YYYYMMDD
74
+ """
75
+ return self.__flight_date
76
+
77
+ @flight_date.setter
78
+ def flight_date(self, value: Optional[str]) -> None:
79
+ self.__flight_date = value
80
+
81
+ @property
82
+ def flight_indicator(self) -> Optional[str]:
83
+ """
84
+ | Indicator representing the type of flight on the itinerary.
85
+
86
+ Type: str
87
+ """
88
+ return self.__flight_indicator
89
+
90
+ @flight_indicator.setter
91
+ def flight_indicator(self, value: Optional[str]) -> None:
92
+ self.__flight_indicator = value
93
+
94
+ @property
95
+ def flight_legs(self) -> Optional[List[AirlineFlightLeg]]:
96
+ """
97
+ | Object that holds the data on the individual legs of the flight ticket
98
+
99
+ Type: list[:class:`onlinepayments.sdk.domain.airline_flight_leg.AirlineFlightLeg`]
100
+ """
101
+ return self.__flight_legs
102
+
103
+ @flight_legs.setter
104
+ def flight_legs(self, value: Optional[List[AirlineFlightLeg]]) -> None:
105
+ self.__flight_legs = value
106
+
107
+ @property
108
+ def invoice_number(self) -> Optional[str]:
109
+ """
110
+ | Airline tracing number This field is used by the following payment products: cards
111
+
112
+ Type: str
113
+ """
114
+ return self.__invoice_number
115
+
116
+ @invoice_number.setter
117
+ def invoice_number(self, value: Optional[str]) -> None:
118
+ self.__invoice_number = value
119
+
120
+ @property
121
+ def is_e_ticket(self) -> Optional[bool]:
122
+ """
123
+ | Deprecated: This field is not used by any payment product
124
+
125
+ * true = The ticket is an E-Ticket
126
+ * false = the ticket is not an E-Ticket'
127
+
128
+ Type: bool
129
+
130
+ Deprecated; Deprecated
131
+ """
132
+ return self.__is_e_ticket
133
+
134
+ @is_e_ticket.setter
135
+ def is_e_ticket(self, value: Optional[bool]) -> None:
136
+ self.__is_e_ticket = value
137
+
138
+ @property
139
+ def is_restricted_ticket(self) -> Optional[bool]:
140
+ """
141
+ | Indicates if the ticket is refundable or not.
142
+
143
+ * true - Restricted, the ticket is non-refundable
144
+ * false - No restrictions, the ticket is (partially) refundable This field is used by the following payment products: 840
145
+
146
+ Type: bool
147
+ """
148
+ return self.__is_restricted_ticket
149
+
150
+ @is_restricted_ticket.setter
151
+ def is_restricted_ticket(self, value: Optional[bool]) -> None:
152
+ self.__is_restricted_ticket = value
153
+
154
+ @property
155
+ def is_third_party(self) -> Optional[bool]:
156
+ """
157
+ | Deprecated: This field is not used by any payment product
158
+
159
+ * true - The payer is the ticket holder
160
+ * false - The payer is not the ticket holder
161
+
162
+ Type: bool
163
+
164
+ Deprecated; This field is not used by any payment product * true - The payer is the ticket holder * false - The payer is not the ticket holder
165
+ """
166
+ return self.__is_third_party
167
+
168
+ @is_third_party.setter
169
+ def is_third_party(self, value: Optional[bool]) -> None:
170
+ self.__is_third_party = value
171
+
172
+ @property
173
+ def issue_date(self) -> Optional[str]:
174
+ """
175
+ | This is the date of issue recorded in the airline system In a case of multiple issuances of the same ticket to a cardholder, you should use the last ticket date. Format: YYYYMMDD This field is used by the following payment products: cards, 840
176
+
177
+ Type: str
178
+ """
179
+ return self.__issue_date
180
+
181
+ @issue_date.setter
182
+ def issue_date(self, value: Optional[str]) -> None:
183
+ self.__issue_date = value
184
+
185
+ @property
186
+ def merchant_customer_id(self) -> Optional[str]:
187
+ """
188
+ | Your ID of the customer in the context of the airline data This field is used by the following payment products: 840
189
+
190
+ Type: str
191
+ """
192
+ return self.__merchant_customer_id
193
+
194
+ @merchant_customer_id.setter
195
+ def merchant_customer_id(self, value: Optional[str]) -> None:
196
+ self.__merchant_customer_id = value
197
+
198
+ @property
199
+ def name(self) -> Optional[str]:
200
+ """
201
+ | Deprecated: This field is not used by any payment product Name of the airline
202
+
203
+ Type: str
204
+
205
+ Deprecated; This field is not used by any payment product Name of the airline
206
+ """
207
+ return self.__name
208
+
209
+ @name.setter
210
+ def name(self, value: Optional[str]) -> None:
211
+ self.__name = value
212
+
213
+ @property
214
+ def passenger_name(self) -> Optional[str]:
215
+ """
216
+ | Deprecated: Use passengers instead Name of passenger
217
+
218
+ Type: str
219
+
220
+ Deprecated; Use passengers instead Name of passenger
221
+ """
222
+ return self.__passenger_name
223
+
224
+ @passenger_name.setter
225
+ def passenger_name(self, value: Optional[str]) -> None:
226
+ self.__passenger_name = value
227
+
228
+ @property
229
+ def passengers(self) -> Optional[List[AirlinePassenger]]:
230
+ """
231
+ | Object that holds the data on the individual passengers This field is used by the following payment products: cards, 840
232
+
233
+ Type: list[:class:`onlinepayments.sdk.domain.airline_passenger.AirlinePassenger`]
234
+ """
235
+ return self.__passengers
236
+
237
+ @passengers.setter
238
+ def passengers(self, value: Optional[List[AirlinePassenger]]) -> None:
239
+ self.__passengers = value
240
+
241
+ @property
242
+ def place_of_issue(self) -> Optional[str]:
243
+ """
244
+ | Deprecated: This field is not used by any payment product Place of issue For sales in the US the last two characters (pos 14-15) must be the US state code.
245
+
246
+ Type: str
247
+
248
+ Deprecated; This field is not used by any payment product Place of issue For sales in the US the last two characters (pos 14-15) must be the US state code.
249
+ """
250
+ return self.__place_of_issue
251
+
252
+ @place_of_issue.setter
253
+ def place_of_issue(self, value: Optional[str]) -> None:
254
+ self.__place_of_issue = value
255
+
256
+ @property
257
+ def pnr(self) -> Optional[str]:
258
+ """
259
+ | ***Deprecated***. Use passengers instead.
260
+
261
+ Type: str
262
+
263
+ Deprecated; Use passengers instead.
264
+ """
265
+ return self.__pnr
266
+
267
+ @pnr.setter
268
+ def pnr(self, value: Optional[str]) -> None:
269
+ self.__pnr = value
270
+
271
+ @property
272
+ def point_of_sale(self) -> Optional[str]:
273
+ """
274
+ | IATA point of sale name This field is used by the following payment products: 840
275
+
276
+ Type: str
277
+ """
278
+ return self.__point_of_sale
279
+
280
+ @point_of_sale.setter
281
+ def point_of_sale(self, value: Optional[str]) -> None:
282
+ self.__point_of_sale = value
283
+
284
+ @property
285
+ def pos_city_code(self) -> Optional[str]:
286
+ """
287
+ | Deprecated: This field is not used by any payment product City code of the point of sale
288
+
289
+ Type: str
290
+
291
+ Deprecated; This field is not used by any payment product City code of the point of sale
292
+ """
293
+ return self.__pos_city_code
294
+
295
+ @pos_city_code.setter
296
+ def pos_city_code(self, value: Optional[str]) -> None:
297
+ self.__pos_city_code = value
298
+
299
+ @property
300
+ def ticket_currency(self) -> Optional[str]:
301
+ """
302
+ | Three-letter ISO currency code representing the currency in which ticket purchase amount is expressed.
303
+
304
+ Type: str
305
+ """
306
+ return self.__ticket_currency
307
+
308
+ @ticket_currency.setter
309
+ def ticket_currency(self, value: Optional[str]) -> None:
310
+ self.__ticket_currency = value
311
+
312
+ @property
313
+ def ticket_delivery_method(self) -> Optional[str]:
314
+ """
315
+ | Deprecated: This field is not used by any payment product Delivery method of the ticket
316
+
317
+ Type: str
318
+
319
+ Deprecated; This field is not used by any payment product Delivery method of the ticket
320
+ """
321
+ return self.__ticket_delivery_method
322
+
323
+ @ticket_delivery_method.setter
324
+ def ticket_delivery_method(self, value: Optional[str]) -> None:
325
+ self.__ticket_delivery_method = value
326
+
327
+ @property
328
+ def ticket_number(self) -> Optional[str]:
329
+ """
330
+ | The ticket or document number contains:
331
+
332
+ * Airline code: 3-digit airline code number
333
+ * Form code: A maximum of 3 digits indicating the type of document, the source of issue and the number of coupons it contains
334
+ * Serial number: A maximum of 8 digits allocated on a sequential basis, provided that the total number of digits allocated to the form code and serial number shall not exceed ten
335
+ * TICKETNUMBER can be replaced with PNR if the ticket number is unavailable This field is used by the following payment products: cards, 840
336
+
337
+ Type: str
338
+ """
339
+ return self.__ticket_number
340
+
341
+ @ticket_number.setter
342
+ def ticket_number(self, value: Optional[str]) -> None:
343
+ self.__ticket_number = value
344
+
345
+ @property
346
+ def total_fare(self) -> Optional[int]:
347
+ """
348
+ | Total fare for all legs on the ticket, excluding taxes and fees. If multiple tickets are purchased, this is the total fare for all tickets This field is used by the following payment products: 840
349
+
350
+ Type: int
351
+ """
352
+ return self.__total_fare
353
+
354
+ @total_fare.setter
355
+ def total_fare(self, value: Optional[int]) -> None:
356
+ self.__total_fare = value
357
+
358
+ @property
359
+ def total_fee(self) -> Optional[int]:
360
+ """
361
+ | Total fee for all legs on the ticket. If multiple tickets are purchased, this is the total fee for all tickets This field is used by the following payment products: 840
362
+
363
+ Type: int
364
+ """
365
+ return self.__total_fee
366
+
367
+ @total_fee.setter
368
+ def total_fee(self, value: Optional[int]) -> None:
369
+ self.__total_fee = value
370
+
371
+ @property
372
+ def total_taxes(self) -> Optional[int]:
373
+ """
374
+ | Total taxes for all legs on the ticket. If multiple tickets are purchased, this is the total taxes for all tickets This field is used by the following payment products: 840
375
+
376
+ Type: int
377
+ """
378
+ return self.__total_taxes
379
+
380
+ @total_taxes.setter
381
+ def total_taxes(self, value: Optional[int]) -> None:
382
+ self.__total_taxes = value
383
+
384
+ @property
385
+ def travel_agency_name(self) -> Optional[str]:
386
+ """
387
+ | Name of the travel agency issuing the ticket. For direct airline integration, leave this property blank This field is used by the following payment products: 840
388
+
389
+ Type: str
390
+ """
391
+ return self.__travel_agency_name
392
+
393
+ @travel_agency_name.setter
394
+ def travel_agency_name(self, value: Optional[str]) -> None:
395
+ self.__travel_agency_name = value
396
+
397
+ def to_dictionary(self) -> dict:
398
+ dictionary = super(AirlineData, self).to_dictionary()
399
+ if self.agent_numeric_code is not None:
400
+ dictionary['agentNumericCode'] = self.agent_numeric_code
401
+ if self.code is not None:
402
+ dictionary['code'] = self.code
403
+ if self.flight_date is not None:
404
+ dictionary['flightDate'] = self.flight_date
405
+ if self.flight_indicator is not None:
406
+ dictionary['flightIndicator'] = self.flight_indicator
407
+ if self.flight_legs is not None:
408
+ dictionary['flightLegs'] = []
409
+ for element in self.flight_legs:
410
+ if element is not None:
411
+ dictionary['flightLegs'].append(element.to_dictionary())
412
+ if self.invoice_number is not None:
413
+ dictionary['invoiceNumber'] = self.invoice_number
414
+ if self.is_e_ticket is not None:
415
+ dictionary['isETicket'] = self.is_e_ticket
416
+ if self.is_restricted_ticket is not None:
417
+ dictionary['isRestrictedTicket'] = self.is_restricted_ticket
418
+ if self.is_third_party is not None:
419
+ dictionary['isThirdParty'] = self.is_third_party
420
+ if self.issue_date is not None:
421
+ dictionary['issueDate'] = self.issue_date
422
+ if self.merchant_customer_id is not None:
423
+ dictionary['merchantCustomerId'] = self.merchant_customer_id
424
+ if self.name is not None:
425
+ dictionary['name'] = self.name
426
+ if self.passenger_name is not None:
427
+ dictionary['passengerName'] = self.passenger_name
428
+ if self.passengers is not None:
429
+ dictionary['passengers'] = []
430
+ for element in self.passengers:
431
+ if element is not None:
432
+ dictionary['passengers'].append(element.to_dictionary())
433
+ if self.place_of_issue is not None:
434
+ dictionary['placeOfIssue'] = self.place_of_issue
435
+ if self.pnr is not None:
436
+ dictionary['pnr'] = self.pnr
437
+ if self.point_of_sale is not None:
438
+ dictionary['pointOfSale'] = self.point_of_sale
439
+ if self.pos_city_code is not None:
440
+ dictionary['posCityCode'] = self.pos_city_code
441
+ if self.ticket_currency is not None:
442
+ dictionary['ticketCurrency'] = self.ticket_currency
443
+ if self.ticket_delivery_method is not None:
444
+ dictionary['ticketDeliveryMethod'] = self.ticket_delivery_method
445
+ if self.ticket_number is not None:
446
+ dictionary['ticketNumber'] = self.ticket_number
447
+ if self.total_fare is not None:
448
+ dictionary['totalFare'] = self.total_fare
449
+ if self.total_fee is not None:
450
+ dictionary['totalFee'] = self.total_fee
451
+ if self.total_taxes is not None:
452
+ dictionary['totalTaxes'] = self.total_taxes
453
+ if self.travel_agency_name is not None:
454
+ dictionary['travelAgencyName'] = self.travel_agency_name
455
+ return dictionary
456
+
457
+ def from_dictionary(self, dictionary: dict) -> 'AirlineData':
458
+ super(AirlineData, self).from_dictionary(dictionary)
459
+ if 'agentNumericCode' in dictionary:
460
+ self.agent_numeric_code = dictionary['agentNumericCode']
461
+ if 'code' in dictionary:
462
+ self.code = dictionary['code']
463
+ if 'flightDate' in dictionary:
464
+ self.flight_date = dictionary['flightDate']
465
+ if 'flightIndicator' in dictionary:
466
+ self.flight_indicator = dictionary['flightIndicator']
467
+ if 'flightLegs' in dictionary:
468
+ if not isinstance(dictionary['flightLegs'], list):
469
+ raise TypeError('value \'{}\' is not a list'.format(dictionary['flightLegs']))
470
+ self.flight_legs = []
471
+ for element in dictionary['flightLegs']:
472
+ value = AirlineFlightLeg()
473
+ self.flight_legs.append(value.from_dictionary(element))
474
+ if 'invoiceNumber' in dictionary:
475
+ self.invoice_number = dictionary['invoiceNumber']
476
+ if 'isETicket' in dictionary:
477
+ self.is_e_ticket = dictionary['isETicket']
478
+ if 'isRestrictedTicket' in dictionary:
479
+ self.is_restricted_ticket = dictionary['isRestrictedTicket']
480
+ if 'isThirdParty' in dictionary:
481
+ self.is_third_party = dictionary['isThirdParty']
482
+ if 'issueDate' in dictionary:
483
+ self.issue_date = dictionary['issueDate']
484
+ if 'merchantCustomerId' in dictionary:
485
+ self.merchant_customer_id = dictionary['merchantCustomerId']
486
+ if 'name' in dictionary:
487
+ self.name = dictionary['name']
488
+ if 'passengerName' in dictionary:
489
+ self.passenger_name = dictionary['passengerName']
490
+ if 'passengers' in dictionary:
491
+ if not isinstance(dictionary['passengers'], list):
492
+ raise TypeError('value \'{}\' is not a list'.format(dictionary['passengers']))
493
+ self.passengers = []
494
+ for element in dictionary['passengers']:
495
+ value = AirlinePassenger()
496
+ self.passengers.append(value.from_dictionary(element))
497
+ if 'placeOfIssue' in dictionary:
498
+ self.place_of_issue = dictionary['placeOfIssue']
499
+ if 'pnr' in dictionary:
500
+ self.pnr = dictionary['pnr']
501
+ if 'pointOfSale' in dictionary:
502
+ self.point_of_sale = dictionary['pointOfSale']
503
+ if 'posCityCode' in dictionary:
504
+ self.pos_city_code = dictionary['posCityCode']
505
+ if 'ticketCurrency' in dictionary:
506
+ self.ticket_currency = dictionary['ticketCurrency']
507
+ if 'ticketDeliveryMethod' in dictionary:
508
+ self.ticket_delivery_method = dictionary['ticketDeliveryMethod']
509
+ if 'ticketNumber' in dictionary:
510
+ self.ticket_number = dictionary['ticketNumber']
511
+ if 'totalFare' in dictionary:
512
+ self.total_fare = dictionary['totalFare']
513
+ if 'totalFee' in dictionary:
514
+ self.total_fee = dictionary['totalFee']
515
+ if 'totalTaxes' in dictionary:
516
+ self.total_taxes = dictionary['totalTaxes']
517
+ if 'travelAgencyName' in dictionary:
518
+ self.travel_agency_name = dictionary['travelAgencyName']
519
+ return self