onlinepayments-sdk-python3 4.23.0__zip → 5.0.0__zip

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 (468) hide show
  1. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/LICENSE.txt +15 -0
  2. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/MANIFEST.in +1 -1
  3. onlinepayments_sdk_python3-5.0.0/PKG-INFO +154 -0
  4. onlinepayments_sdk_python3-5.0.0/README.rst +111 -0
  5. onlinepayments_sdk_python3-5.0.0/onlinepayments/__init__.py +0 -0
  6. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/__init__.py +4 -0
  7. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/api_exception.py +19 -13
  8. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/api_resource.py +57 -0
  9. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/authentication/__init__.py +0 -0
  10. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/authentication/authenticator.py +24 -0
  11. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/authentication/authorization_type.py +10 -0
  12. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/defaultimpl/default_authenticator.py → onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/authentication/v1hmac_authenticator.py +34 -27
  13. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/authorization_exception.py +19 -0
  14. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/call_context.py +62 -0
  15. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/client.py +107 -0
  16. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/communication/__init__.py +0 -0
  17. {onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk → onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/communication}/communication_exception.py +2 -3
  18. {onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk → onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/communication}/connection.py +31 -17
  19. {onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/defaultimpl → onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/communication}/default_connection.py +108 -86
  20. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/communication/i_metadata_provider.py +19 -0
  21. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/meta_data_provider.py → onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/communication/metadata_provider.py +45 -39
  22. {onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk → onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/communication}/multipart_form_data_object.py +11 -7
  23. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/communication/multipart_form_data_request.py +16 -0
  24. {onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk → onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/communication}/not_found_exception.py +3 -3
  25. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/communication/param_request.py +17 -0
  26. {onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk → onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/communication}/pooled_connection.py +8 -6
  27. {onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk → onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/communication}/request_header.py +9 -6
  28. {onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk → onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/communication}/request_param.py +7 -4
  29. {onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk → onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/communication}/response_exception.py +9 -11
  30. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/communication/response_header.py +50 -0
  31. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/communicator.py +455 -0
  32. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/communicator_configuration.py +264 -0
  33. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/declined_payment_exception.py +46 -0
  34. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/declined_payout_exception.py +46 -0
  35. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/declined_refund_exception.py +46 -0
  36. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/declined_transaction_exception.py +22 -0
  37. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/__init__.py +4 -0
  38. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/account_on_file.py +20 -19
  39. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/account_on_file_attribute.py +25 -25
  40. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/account_on_file_display_hints.py +12 -15
  41. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/acquirer_information.py +13 -14
  42. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/acquirer_selection_information.py +15 -16
  43. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/additional_order_input.py +22 -23
  44. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/address.py +28 -29
  45. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/address_personal.py +35 -36
  46. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/airline_data.py +132 -135
  47. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/airline_flight_leg.py +93 -113
  48. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/airline_passenger.py +32 -31
  49. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/amount_breakdown.py +63 -0
  50. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/amount_of_money.py +16 -16
  51. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/api_error.py +45 -44
  52. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/apple_pay_line_item.py +145 -0
  53. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/apple_pay_recurring_payment_request.py +116 -0
  54. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/bank_account_iban.py +10 -14
  55. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/browser_data.py +33 -34
  56. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/calculate_surcharge_request.py +15 -12
  57. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/calculate_surcharge_response.py +10 -11
  58. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/cancel_payment_request.py +14 -11
  59. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/cancel_payment_response.py +11 -8
  60. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/capture.py +21 -18
  61. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/capture_output.py +72 -49
  62. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/capture_payment_request.py +99 -0
  63. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/capture_response.py +21 -18
  64. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/capture_status_output.py +37 -0
  65. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/captures_response.py +10 -9
  66. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/card.py +20 -23
  67. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/card_essentials.py +19 -21
  68. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/card_fraud_results.py +112 -0
  69. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/card_info.py +14 -12
  70. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/card_payment_method_specific_input.py +166 -121
  71. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/card_payment_method_specific_input_base.py +110 -87
  72. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/card_payment_method_specific_input_for_hosted_checkout.py +18 -21
  73. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/card_payment_method_specific_output.py +63 -64
  74. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/card_payout_method_specific_input.py +23 -23
  75. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/card_recurrence_details.py +11 -12
  76. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/card_source.py +19 -20
  77. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/card_without_cvv.py +17 -15
  78. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/company_information.py +10 -11
  79. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/complete_payment_card_payment_method_specific_input.py +11 -8
  80. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/complete_payment_request.py +16 -14
  81. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/complete_payment_response.py +19 -16
  82. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/contact_details.py +21 -22
  83. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/create_hosted_checkout_request.py +58 -34
  84. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/create_hosted_checkout_response.py +25 -27
  85. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/create_hosted_tokenization_request.py +29 -27
  86. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/create_hosted_tokenization_response.py +26 -26
  87. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/create_mandate_request.py +50 -49
  88. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/create_mandate_response.py +14 -15
  89. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/create_mandate_with_return_url.py +50 -49
  90. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/create_payment_link_request.py +93 -72
  91. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/create_payment_request.py +61 -38
  92. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/create_payment_response.py +18 -19
  93. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/create_payout_request.py +176 -0
  94. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/create_token_request.py +13 -14
  95. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/created_payment_output.py +13 -14
  96. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/created_token_response.py +32 -27
  97. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/credit_card_specific_input_hosted_tokenization.py +13 -12
  98. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/credit_card_validation_rules_hosted_tokenization.py +13 -10
  99. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/currency_conversion.py +14 -11
  100. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/currency_conversion_input.py +13 -10
  101. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/currency_conversion_request.py +15 -12
  102. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/currency_conversion_response.py +17 -18
  103. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/currency_conversion_result.py +18 -18
  104. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/currency_conversion_specific_input.py +12 -12
  105. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/customer.py +54 -53
  106. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/customer_account.py +44 -45
  107. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/customer_account_authentication.py +81 -0
  108. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/customer_bank_account.py +15 -16
  109. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/customer_device.py +32 -33
  110. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/customer_device_output.py +9 -10
  111. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/customer_output.py +10 -11
  112. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/customer_payment_activity.py +15 -16
  113. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/customer_token.py +19 -16
  114. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/data_object.py +34 -0
  115. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/dcc_card_source.py +20 -17
  116. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/dcc_proposal.py +23 -24
  117. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/decrypted_payment_data.py +36 -33
  118. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/directory_entry.py +17 -17
  119. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/discount.py +41 -0
  120. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/empty_validator.py +5 -4
  121. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/error_response.py +13 -12
  122. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/external_cardholder_authentication_data.py +57 -60
  123. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/external_token_linked.py +18 -13
  124. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/feedbacks.py +37 -0
  125. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/fixed_list_validator.py +9 -8
  126. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/fraud_fields.py +17 -18
  127. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/fraud_results.py +43 -0
  128. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/g_pay_three_d_secure.py +46 -44
  129. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/get_hosted_checkout_response.py +18 -14
  130. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/get_hosted_tokenization_response.py +18 -14
  131. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/get_iin_details_request.py +13 -14
  132. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/get_iin_details_response.py +29 -26
  133. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/get_mandate_response.py +10 -11
  134. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/get_payment_product_groups_response.py +9 -14
  135. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/get_payment_products_response.py +9 -14
  136. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/get_privacy_policy_response.py +9 -10
  137. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/gift_card_purchase.py +13 -14
  138. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/hosted_checkout_specific_input.py +45 -49
  139. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/hosted_checkout_specific_output.py +12 -13
  140. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/iin_detail.py +23 -18
  141. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/label_template_element.py +13 -15
  142. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/length_validator.py +13 -10
  143. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/line_item.py +41 -16
  144. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/line_item_invoice_data.py +9 -10
  145. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/loan_recipient.py +22 -24
  146. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/lodging_data.py +10 -12
  147. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/mandate_address.py +26 -37
  148. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/mandate_address_response.py +21 -22
  149. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/mandate_contact_details.py +9 -10
  150. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/mandate_customer.py +27 -32
  151. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/mandate_customer_response.py +25 -26
  152. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/mandate_merchant_action.py +15 -15
  153. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/mandate_personal_information.py +14 -17
  154. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/mandate_personal_information_response.py +13 -14
  155. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/mandate_personal_name.py +14 -18
  156. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/mandate_personal_name_response.py +12 -13
  157. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/mandate_redirect_data.py +12 -13
  158. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/mandate_response.py +32 -32
  159. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/merchant_action.py +110 -0
  160. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/mobile_payment_data.py +12 -13
  161. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/mobile_payment_method_hosted_checkout_specific_input.py +105 -0
  162. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/mobile_payment_method_specific_input.py +45 -46
  163. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/mobile_payment_method_specific_output.py +27 -28
  164. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/mobile_payment_product302_specific_input.py +41 -0
  165. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/mobile_payment_product320_specific_input.py +10 -11
  166. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/mobile_three_d_secure_challenge_parameters.py +91 -0
  167. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/multiple_payment_information.py +14 -14
  168. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/omnichannel_payout_specific_input.py +9 -10
  169. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/operation_output.py +50 -29
  170. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/operation_payment_references.py +37 -0
  171. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/order.py +39 -41
  172. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/order_line_details.py +50 -34
  173. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/order_references.py +102 -0
  174. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/order_status_output.py +27 -25
  175. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/order_type_information.py +64 -0
  176. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/other_details.py +55 -0
  177. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_account_on_file.py +13 -14
  178. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_context.py +17 -14
  179. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_creation_output.py +22 -22
  180. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_details_response.py +27 -30
  181. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_error_response.py +17 -16
  182. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_link_event.py +15 -16
  183. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_link_order_input.py +18 -28
  184. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_link_order_output.py +18 -20
  185. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_link_response.py +41 -42
  186. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_link_specific_input.py +19 -19
  187. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_output.py +58 -57
  188. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product.py +76 -59
  189. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product130_specific_input.py +10 -11
  190. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product130_specific_three_d_secure.py +18 -19
  191. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product3012.py +13 -14
  192. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/payment_product3012_specific_input.py +100 -0
  193. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product302_specific_data.py +9 -8
  194. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product3203_specific_output.py +13 -14
  195. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product3208_specific_input.py +9 -10
  196. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product3208_specific_output.py +9 -10
  197. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product3209_specific_input.py +9 -10
  198. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product3209_specific_output.py +9 -10
  199. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product320_specific_data.py +13 -12
  200. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/payment_product5001_specific_output.py +112 -0
  201. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product5100_specific_input.py +9 -10
  202. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product5402_specific_output.py +9 -10
  203. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product5404.py +12 -13
  204. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product5407.py +12 -13
  205. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product5500_specific_output.py +33 -16
  206. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product771_specific_output.py +9 -10
  207. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product840_customer_account.py +38 -37
  208. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product840_specific_output.py +21 -22
  209. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product_display_hints.py +15 -16
  210. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product_field.py +21 -18
  211. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product_field_data_restrictions.py +15 -16
  212. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product_field_display_element.py +24 -24
  213. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product_field_display_hints.py +53 -53
  214. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product_field_form_element.py +20 -20
  215. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product_field_tooltip.py +15 -15
  216. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product_field_validators.py +39 -40
  217. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product_filter.py +11 -16
  218. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product_filter_hosted_tokenization.py +8 -13
  219. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product_filters_hosted_checkout.py +13 -14
  220. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product_filters_hosted_tokenization.py +13 -14
  221. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product_group.py +20 -21
  222. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_product_networks_response.py +8 -13
  223. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_references.py +13 -15
  224. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_response.py +24 -25
  225. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payment_status_output.py +29 -34
  226. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payout_error_response.py +17 -18
  227. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payout_output.py +18 -14
  228. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payout_response.py +21 -18
  229. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payout_result.py +21 -18
  230. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/payout_status_output.py +21 -17
  231. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/personal_information.py +18 -23
  232. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/personal_information_token.py +11 -8
  233. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/personal_name.py +15 -16
  234. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/personal_name_token.py +13 -10
  235. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/product_directory.py +10 -9
  236. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/protection_eligibility.py +59 -0
  237. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/range_validator.py +13 -10
  238. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/rate_details.py +22 -19
  239. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/redirect_data.py +12 -13
  240. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/redirect_payment_method_specific_input.py +125 -59
  241. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/redirect_payment_method_specific_output.py +47 -48
  242. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/redirect_payment_product3203_specific_input.py +40 -0
  243. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/redirect_payment_product3302_specific_input.py +73 -0
  244. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/redirect_payment_product3306_specific_input.py +10 -14
  245. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/redirect_payment_product5001_specific_input.py +41 -0
  246. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/redirect_payment_product5300_specific_input.py +146 -0
  247. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/redirect_payment_product5406_specific_input.py +10 -11
  248. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/redirect_payment_product5408_specific_input.py +15 -16
  249. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/redirect_payment_product5410_specific_input.py +38 -0
  250. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/redirect_payment_product809_specific_input.py +9 -10
  251. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/redirect_payment_product840_specific_input.py +100 -0
  252. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/redirection_data.py +10 -13
  253. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/refund_card_method_specific_output.py +17 -14
  254. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/refund_e_wallet_method_specific_output.py +17 -14
  255. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/refund_error_response.py +17 -16
  256. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/refund_mobile_method_specific_output.py +16 -13
  257. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/refund_output.py +63 -42
  258. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/refund_payment_product840_customer_account.py +16 -13
  259. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/refund_payment_product840_specific_output.py +11 -8
  260. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/refund_redirect_method_specific_output.py +13 -10
  261. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/refund_request.py +103 -0
  262. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/refund_response.py +20 -21
  263. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/refunds_response.py +10 -9
  264. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/regular_expression_validator.py +10 -7
  265. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/send_test_request.py +37 -0
  266. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/sepa_direct_debit_payment_method_specific_input.py +13 -14
  267. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/sepa_direct_debit_payment_method_specific_input_base.py +13 -14
  268. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/sepa_direct_debit_payment_method_specific_output.py +17 -18
  269. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/sepa_direct_debit_payment_product771_specific_input.py +13 -14
  270. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/sepa_direct_debit_payment_product771_specific_input_base.py +13 -14
  271. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/session_request.py +9 -8
  272. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/session_response.py +21 -22
  273. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/shipping.py +51 -50
  274. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/shipping_method.py +18 -19
  275. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/shopping_cart.py +31 -33
  276. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/shopping_cart_extension.py +8 -6
  277. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/show_form_data.py +18 -19
  278. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/subsequent_card_payment_method_specific_input.py +153 -0
  279. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/subsequent_payment_product5001_specific_input.py +41 -0
  280. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/subsequent_payment_request.py +20 -18
  281. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/subsequent_payment_response.py +10 -11
  282. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/surcharge.py +27 -24
  283. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/surcharge_calculation_card.py +13 -15
  284. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/surcharge_for_payment_link.py +40 -0
  285. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/surcharge_rate.py +18 -19
  286. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/surcharge_specific_input.py +16 -16
  287. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/surcharge_specific_output.py +20 -20
  288. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/test_connection.py +10 -7
  289. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/three_d_secure.py +95 -77
  290. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/three_d_secure_base.py +69 -69
  291. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/three_d_secure_data.py +20 -20
  292. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/three_d_secure_results.py +57 -56
  293. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/token_card.py +13 -14
  294. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/token_card_data.py +61 -0
  295. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/token_card_specific_input.py +10 -11
  296. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/token_data.py +63 -0
  297. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/token_e_wallet.py +16 -16
  298. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/token_response.py +28 -25
  299. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/transaction.py +11 -8
  300. {onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk → onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain}/uploadable_file.py +9 -6
  301. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/validate_credentials_request.py +55 -0
  302. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/validate_credentials_response.py +37 -0
  303. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/domain/value_mapping_element.py +12 -15
  304. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/domain/web_hooks_event.py +174 -0
  305. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/exception_factory.py +75 -0
  306. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/factory.py +127 -0
  307. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/i_client.py +78 -0
  308. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/i_communicator.py +180 -0
  309. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/idempotence_exception.py +36 -0
  310. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/json/__init__.py +0 -0
  311. {onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/defaultimpl → onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/json}/default_marshaller.py +16 -11
  312. {onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk → onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/json}/marshaller.py +10 -5
  313. {onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk → onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/json}/marshaller_syntax_exception.py +4 -1
  314. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/log/__init__.py +0 -0
  315. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/log/body_obfuscator.py +113 -0
  316. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/log/communicator_logger.py +8 -3
  317. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/log/header_obfuscator.py +49 -0
  318. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/log/log_message.py +94 -0
  319. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/log/logging_capable.py +7 -3
  320. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/log/obfuscation_capable.py +24 -0
  321. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/log/obfuscation_rule.py +50 -0
  322. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/log/python_communicator_logger.py +6 -3
  323. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/log/request_log_message.py +28 -0
  324. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/log/response_log_message.py +11 -10
  325. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/log/sys_out_communicator_logger.py +7 -8
  326. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/__init__.py +4 -0
  327. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/captures/__init__.py +4 -0
  328. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/captures/captures_client.py +61 -0
  329. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/captures/i_captures_client.py +34 -0
  330. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/complete/__init__.py +4 -0
  331. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/complete/complete_client.py +65 -0
  332. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/complete/i_complete_client.py +37 -0
  333. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/hostedcheckout/__init__.py +4 -0
  334. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/merchant/hostedcheckout/hosted_checkout_client.py +42 -37
  335. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/merchant/hostedcheckout/i_hosted_checkout_client.py +22 -19
  336. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/hostedtokenization/__init__.py +4 -0
  337. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/merchant/hostedtokenization/hosted_tokenization_client.py +42 -37
  338. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/merchant/hostedtokenization/i_hosted_tokenization_client.py +22 -19
  339. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/i_merchant_client.py +157 -0
  340. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/mandates/__init__.py +4 -0
  341. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/merchant/mandates/i_mandates_client.py +49 -46
  342. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/merchant/mandates/mandates_client.py +90 -85
  343. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/merchant_client.py +182 -0
  344. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/paymentlinks/__init__.py +4 -0
  345. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/merchant/paymentlinks/i_payment_links_client.py +31 -28
  346. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/merchant/paymentlinks/payment_links_client.py +58 -53
  347. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/payments/__init__.py +4 -0
  348. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/payments/i_payments_client.py +166 -0
  349. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/payments/payments_client.py +287 -0
  350. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/payouts/__init__.py +4 -0
  351. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/merchant/payouts/i_payouts_client.py +25 -22
  352. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/merchant/payouts/payouts_client.py +54 -49
  353. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/privacypolicy/__init__.py +4 -0
  354. {onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/merchant/services → onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/privacypolicy}/get_privacy_policy_params.py +12 -11
  355. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/privacypolicy/i_privacy_policy_client.py +36 -0
  356. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/privacypolicy/privacy_policy_client.py +59 -0
  357. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/productgroups/__init__.py +4 -0
  358. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/merchant/productgroups/get_product_group_params.py +35 -32
  359. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/merchant/productgroups/get_product_groups_params.py +35 -32
  360. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/merchant/productgroups/i_product_groups_client.py +26 -22
  361. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/merchant/productgroups/product_groups_client.py +44 -39
  362. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/products/__init__.py +4 -0
  363. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/merchant/products/get_payment_product_networks_params.py +21 -19
  364. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/merchant/products/get_payment_product_params.py +35 -32
  365. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/merchant/products/get_payment_products_params.py +35 -32
  366. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/merchant/products/get_product_directory_params.py +12 -11
  367. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/merchant/products/i_products_client.py +52 -48
  368. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/merchant/products/products_client.py +84 -79
  369. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/refunds/__init__.py +4 -0
  370. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/refunds/i_refunds_client.py +34 -0
  371. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/refunds/refunds_client.py +61 -0
  372. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/services/__init__.py +4 -0
  373. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/services/i_services_client.py +96 -0
  374. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/services/services_client.py +159 -0
  375. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/sessions/__init__.py +4 -0
  376. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/merchant/sessions/i_sessions_client.py +13 -10
  377. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/sessions/sessions_client.py +60 -0
  378. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/tokens/__init__.py +4 -0
  379. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/merchant/tokens/i_tokens_client.py +37 -34
  380. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/merchant/tokens/tokens_client.py +71 -66
  381. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/webhooks/__init__.py +4 -0
  382. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/webhooks/i_webhooks_client.py +55 -0
  383. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/merchant/webhooks/webhooks_client.py +93 -0
  384. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/platform_exception.py +19 -0
  385. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/proxy_configuration.py +19 -14
  386. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/reference_exception.py +19 -0
  387. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/validation_exception.py +19 -0
  388. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/webhooks/__init__.py +0 -0
  389. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/webhooks/api_version_mismatch_exception.py +4 -5
  390. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/webhooks/in_memory_secret_key_store.py +8 -9
  391. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/webhooks/secret_key_not_available_exception.py +18 -0
  392. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments/sdk/webhooks/secret_key_store.py +3 -3
  393. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/webhooks/signature_validation_exception.py +17 -0
  394. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/webhooks/signature_validator.py +56 -0
  395. onlinepayments_sdk_python3-5.0.0/onlinepayments/sdk/webhooks/webhooks_helper.py +52 -0
  396. onlinepayments_sdk_python3-5.0.0/onlinepayments_sdk_python3.egg-info/PKG-INFO +154 -0
  397. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments_sdk_python3.egg-info/SOURCES.txt +81 -29
  398. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments_sdk_python3.egg-info/requires.txt +1 -1
  399. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/setup.cfg +7 -7
  400. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/setup.py +26 -10
  401. onlinepayments-sdk-python3-4.23.0/PKG-INFO +0 -139
  402. onlinepayments-sdk-python3-4.23.0/README.md +0 -83
  403. onlinepayments-sdk-python3-4.23.0/README.rst +0 -120
  404. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/api_resource.py +0 -115
  405. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/authenticator.py +0 -18
  406. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/authorization_exception.py +0 -12
  407. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/call_context.py +0 -42
  408. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/client.py +0 -91
  409. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/communicator.py +0 -354
  410. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/communicator_configuration.py +0 -106
  411. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/data_object.py +0 -9
  412. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/declined_payment_exception.py +0 -43
  413. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/declined_payout_exception.py +0 -41
  414. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/declined_refund_exception.py +0 -41
  415. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/declined_transaction_exception.py +0 -13
  416. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/defaultimpl/authorization_type.py +0 -10
  417. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/domain/amount_breakdown.py +0 -63
  418. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/domain/capture_payment_request.py +0 -76
  419. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/domain/capture_status_output.py +0 -38
  420. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/domain/card_fraud_results.py +0 -110
  421. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/domain/create_payout_request.py +0 -108
  422. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/domain/customer_account_authentication.py +0 -64
  423. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/domain/discount.py +0 -44
  424. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/domain/fraud_results.py +0 -43
  425. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/domain/merchant_action.py +0 -88
  426. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/domain/mobile_payment_method_hosted_checkout_specific_input.py +0 -83
  427. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/domain/order_references.py +0 -108
  428. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/domain/order_type_information.py +0 -63
  429. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/domain/payment_product5001_specific_output.py +0 -38
  430. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/domain/protection_eligibility.py +0 -60
  431. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/domain/redirect_payment_product3203_specific_input.py +0 -44
  432. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/domain/redirect_payment_product5001_specific_input.py +0 -41
  433. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/domain/redirect_payment_product840_specific_input.py +0 -60
  434. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/domain/refund_request.py +0 -60
  435. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/domain/subsequent_card_payment_method_specific_input.py +0 -146
  436. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/domain/subsequent_payment_product5001_specific_input.py +0 -41
  437. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/domain/surcharge_for_payment_link.py +0 -40
  438. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/domain/token_card_data.py +0 -36
  439. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/domain/token_data.py +0 -42
  440. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/domain/web_hooks_event.py +0 -145
  441. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/endpoint_configuration.py +0 -126
  442. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/factory.py +0 -117
  443. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/i_client.py +0 -67
  444. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/idempotence_exception.py +0 -29
  445. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/log/log_message.py +0 -70
  446. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/log/logging_util.py +0 -144
  447. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/log/request_log_message.py +0 -24
  448. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/merchant/i_merchant_client.py +0 -109
  449. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/merchant/merchant_client.py +0 -117
  450. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/merchant/payments/i_payments_client.py +0 -226
  451. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/merchant/payments/payments_client.py +0 -391
  452. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/merchant/services/i_services_client.py +0 -114
  453. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/merchant/services/services_client.py +0 -187
  454. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/merchant/sessions/sessions_client.py +0 -55
  455. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/multipart_form_data_request.py +0 -10
  456. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/param_request.py +0 -13
  457. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/payment_platform_exception.py +0 -11
  458. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/reference_exception.py +0 -12
  459. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/response_header.py +0 -25
  460. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/validation_exception.py +0 -11
  461. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/webhooks/secret_key_not_available_exception.py +0 -23
  462. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/webhooks/signature_validation_exception.py +0 -10
  463. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/webhooks/web_hooks.py +0 -22
  464. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/webhooks/web_hooks_helper.py +0 -124
  465. onlinepayments-sdk-python3-4.23.0/onlinepayments/sdk/webhooks/web_hooks_helper_builder.py +0 -33
  466. onlinepayments-sdk-python3-4.23.0/onlinepayments_sdk_python3.egg-info/PKG-INFO +0 -139
  467. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments_sdk_python3.egg-info/dependency_links.txt +0 -0
  468. {onlinepayments-sdk-python3-4.23.0 → onlinepayments_sdk_python3-5.0.0}/onlinepayments_sdk_python3.egg-info/top_level.txt +0 -0
@@ -1,114 +0,0 @@
1
- #
2
- # This class was auto-generated.
3
- #
4
- from abc import ABC, abstractmethod
5
-
6
- from onlinepayments.sdk.call_context import CallContext
7
- from onlinepayments.sdk.domain.calculate_surcharge_request import CalculateSurchargeRequest
8
- from onlinepayments.sdk.domain.calculate_surcharge_response import CalculateSurchargeResponse
9
- from onlinepayments.sdk.domain.currency_conversion_request import CurrencyConversionRequest
10
- from onlinepayments.sdk.domain.currency_conversion_response import CurrencyConversionResponse
11
- from onlinepayments.sdk.domain.get_iin_details_request import GetIINDetailsRequest
12
- from onlinepayments.sdk.domain.get_iin_details_response import GetIINDetailsResponse
13
- from onlinepayments.sdk.domain.get_privacy_policy_response import GetPrivacyPolicyResponse
14
- from onlinepayments.sdk.domain.test_connection import TestConnection
15
- from onlinepayments.sdk.merchant.services.get_privacy_policy_params import GetPrivacyPolicyParams
16
-
17
- class IServicesClient(ABC):
18
- """
19
- Services client interface. Thread-safe.
20
- """
21
-
22
- @abstractmethod
23
- def surcharge_calculation(self, body: CalculateSurchargeRequest, context: CallContext = None) -> CalculateSurchargeResponse:
24
- """
25
- Resource /v2/{merchantId}/services/surchargecalculation - Surcharge Calculation
26
-
27
-
28
- :param body: :class:`onlinepayments.sdk.domain.calculate_surcharge_request.CalculateSurchargeRequest`
29
- :param context: :class:`onlinepayments.sdk.call_context.CallContext`
30
- :return: :class:`onlinepayments.sdk.domain.calculate_surcharge_response.CalculateSurchargeResponse`
31
- :raise: ValidationException if the request was not correct and couldn't be processed (HTTP status code 400)
32
- :raise: AuthorizationException if the request was not allowed (HTTP status code 403)
33
- :raise: ReferenceException if an object was attempted to be referenced that doesn't exist or has been removed,
34
- or there was a conflict (HTTP status code 404, 409 or 410)
35
- :raise: PaymentPlatformException if something went wrong at the payment platform,
36
- the payment platform was unable to process a message from a downstream partner/acquirer,
37
- or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
38
- :raise: ApiException if the payment platform returned any other error
39
- """
40
-
41
- @abstractmethod
42
- def get_dcc_rate_inquiry(self, body: CurrencyConversionRequest, context: CallContext = None) -> CurrencyConversionResponse:
43
- """
44
- Resource /v2/{merchantId}/services/dccrate - Get Dcc Rate Inquiry Api
45
-
46
-
47
- :param body: :class:`onlinepayments.sdk.domain.currency_conversion_request.CurrencyConversionRequest`
48
- :param context: :class:`onlinepayments.sdk.call_context.CallContext`
49
- :return: :class:`onlinepayments.sdk.domain.currency_conversion_response.CurrencyConversionResponse`
50
- :raise: ValidationException if the request was not correct and couldn't be processed (HTTP status code 400)
51
- :raise: AuthorizationException if the request was not allowed (HTTP status code 403)
52
- :raise: ReferenceException if an object was attempted to be referenced that doesn't exist or has been removed,
53
- or there was a conflict (HTTP status code 404, 409 or 410)
54
- :raise: PaymentPlatformException if something went wrong at the payment platform,
55
- the payment platform was unable to process a message from a downstream partner/acquirer,
56
- or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
57
- :raise: ApiException if the payment platform returned any other error
58
- """
59
-
60
- @abstractmethod
61
- def get_privacy_policy(self, query: GetPrivacyPolicyParams, context: CallContext = None) -> GetPrivacyPolicyResponse:
62
- """
63
- Resource /v2/{merchantId}/services/privacypolicy - Get Privacy Policy
64
-
65
-
66
- :param query: :class:`onlinepayments.sdk.merchant.services.get_privacy_policy_params.GetPrivacyPolicyParams`
67
- :param context: :class:`onlinepayments.sdk.call_context.CallContext`
68
- :return: :class:`onlinepayments.sdk.domain.get_privacy_policy_response.GetPrivacyPolicyResponse`
69
- :raise: ValidationException if the request was not correct and couldn't be processed (HTTP status code 400)
70
- :raise: AuthorizationException if the request was not allowed (HTTP status code 403)
71
- :raise: ReferenceException if an object was attempted to be referenced that doesn't exist or has been removed,
72
- or there was a conflict (HTTP status code 404, 409 or 410)
73
- :raise: PaymentPlatformException if something went wrong at the payment platform,
74
- the payment platform was unable to process a message from a downstream partner/acquirer,
75
- or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
76
- :raise: ApiException if the payment platform returned any other error
77
- """
78
-
79
- @abstractmethod
80
- def test_connection(self, context: CallContext = None) -> TestConnection:
81
- """
82
- Resource /v2/{merchantId}/services/testconnection - Test connection
83
-
84
-
85
- :param context: :class:`onlinepayments.sdk.call_context.CallContext`
86
- :return: :class:`onlinepayments.sdk.domain.test_connection.TestConnection`
87
- :raise: ValidationException if the request was not correct and couldn't be processed (HTTP status code 400)
88
- :raise: AuthorizationException if the request was not allowed (HTTP status code 403)
89
- :raise: ReferenceException if an object was attempted to be referenced that doesn't exist or has been removed,
90
- or there was a conflict (HTTP status code 404, 409 or 410)
91
- :raise: PaymentPlatformException if something went wrong at the payment platform,
92
- the payment platform was unable to process a message from a downstream partner/acquirer,
93
- or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
94
- :raise: ApiException if the payment platform returned any other error
95
- """
96
-
97
- @abstractmethod
98
- def get_iin_details(self, body: GetIINDetailsRequest, context: CallContext = None) -> GetIINDetailsResponse:
99
- """
100
- Resource /v2/{merchantId}/services/getIINdetails - Get IIN details
101
-
102
-
103
- :param body: :class:`onlinepayments.sdk.domain.get_iin_details_request.GetIINDetailsRequest`
104
- :param context: :class:`onlinepayments.sdk.call_context.CallContext`
105
- :return: :class:`onlinepayments.sdk.domain.get_iin_details_response.GetIINDetailsResponse`
106
- :raise: ValidationException if the request was not correct and couldn't be processed (HTTP status code 400)
107
- :raise: AuthorizationException if the request was not allowed (HTTP status code 403)
108
- :raise: ReferenceException if an object was attempted to be referenced that doesn't exist or has been removed,
109
- or there was a conflict (HTTP status code 404, 409 or 410)
110
- :raise: PaymentPlatformException if something went wrong at the payment platform,
111
- the payment platform was unable to process a message from a downstream partner/acquirer,
112
- or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
113
- :raise: ApiException if the payment platform returned any other error
114
- """
@@ -1,187 +0,0 @@
1
- #
2
- # This class was auto-generated.
3
- #
4
- from onlinepayments.sdk.api_resource import ApiResource
5
- from onlinepayments.sdk.call_context import CallContext
6
- from onlinepayments.sdk.response_exception import ResponseException
7
- from onlinepayments.sdk.domain.calculate_surcharge_request import CalculateSurchargeRequest
8
- from onlinepayments.sdk.domain.calculate_surcharge_response import CalculateSurchargeResponse
9
- from onlinepayments.sdk.domain.currency_conversion_request import CurrencyConversionRequest
10
- from onlinepayments.sdk.domain.currency_conversion_response import CurrencyConversionResponse
11
- from onlinepayments.sdk.domain.error_response import ErrorResponse
12
- from onlinepayments.sdk.domain.get_iin_details_request import GetIINDetailsRequest
13
- from onlinepayments.sdk.domain.get_iin_details_response import GetIINDetailsResponse
14
- from onlinepayments.sdk.domain.get_privacy_policy_response import GetPrivacyPolicyResponse
15
- from onlinepayments.sdk.domain.test_connection import TestConnection
16
- from onlinepayments.sdk.merchant.services.get_privacy_policy_params import GetPrivacyPolicyParams
17
- from onlinepayments.sdk.merchant.services.i_services_client import IServicesClient
18
-
19
-
20
- class ServicesClient(ApiResource, IServicesClient):
21
- """
22
- Services client. Thread-safe.
23
- """
24
-
25
- def __init__(self, parent, path_context):
26
- """
27
- :param parent: :class:`onlinepayments.sdk.api_resource.ApiResource`
28
- :param path_context: dict[str, str]
29
- """
30
- super(ServicesClient, self).__init__(parent, path_context)
31
-
32
- def surcharge_calculation(self, body: CalculateSurchargeRequest, context: CallContext = None) -> CalculateSurchargeResponse:
33
- """
34
- Resource /v2/{merchantId}/services/surchargecalculation - Surcharge Calculation
35
-
36
-
37
- :param body: :class:`onlinepayments.sdk.domain.calculate_surcharge_request.CalculateSurchargeRequest`
38
- :param context: :class:`onlinepayments.sdk.call_context.CallContext`
39
- :return: :class:`onlinepayments.sdk.domain.calculate_surcharge_response.CalculateSurchargeResponse`
40
- :raise: ValidationException if the request was not correct and couldn't be processed (HTTP status code 400)
41
- :raise: AuthorizationException if the request was not allowed (HTTP status code 403)
42
- :raise: ReferenceException if an object was attempted to be referenced that doesn't exist or has been removed,
43
- or there was a conflict (HTTP status code 404, 409 or 410)
44
- :raise: PaymentPlatformException if something went wrong at the payment platform,
45
- the payment platform was unable to process a message from a downstream partner/acquirer,
46
- or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
47
- :raise: ApiException if the payment platform returned any other error
48
- """
49
- uri = self._instantiate_uri("/v2/{merchantId}/services/surchargecalculation", None)
50
- try:
51
- return self._communicator.post(
52
- uri,
53
- self._client_headers,
54
- None,
55
- body,
56
- CalculateSurchargeResponse,
57
- context)
58
-
59
- except ResponseException as e:
60
- error_type = ErrorResponse
61
- error_object = self._communicator.marshaller.unmarshal(e.body, error_type)
62
- raise self._create_exception(e.status_code, e.body, error_object, context)
63
-
64
- def get_dcc_rate_inquiry(self, body: CurrencyConversionRequest, context: CallContext = None) -> CurrencyConversionResponse:
65
- """
66
- Resource /v2/{merchantId}/services/dccrate - Get Dcc Rate Inquiry Api
67
-
68
-
69
- :param body: :class:`onlinepayments.sdk.domain.currency_conversion_request.CurrencyConversionRequest`
70
- :param context: :class:`onlinepayments.sdk.call_context.CallContext`
71
- :return: :class:`onlinepayments.sdk.domain.currency_conversion_response.CurrencyConversionResponse`
72
- :raise: ValidationException if the request was not correct and couldn't be processed (HTTP status code 400)
73
- :raise: AuthorizationException if the request was not allowed (HTTP status code 403)
74
- :raise: ReferenceException if an object was attempted to be referenced that doesn't exist or has been removed,
75
- or there was a conflict (HTTP status code 404, 409 or 410)
76
- :raise: PaymentPlatformException if something went wrong at the payment platform,
77
- the payment platform was unable to process a message from a downstream partner/acquirer,
78
- or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
79
- :raise: ApiException if the payment platform returned any other error
80
- """
81
- uri = self._instantiate_uri("/v2/{merchantId}/services/dccrate", None)
82
- try:
83
- return self._communicator.post(
84
- uri,
85
- self._client_headers,
86
- None,
87
- body,
88
- CurrencyConversionResponse,
89
- context)
90
-
91
- except ResponseException as e:
92
- error_type = ErrorResponse
93
- error_object = self._communicator.marshaller.unmarshal(e.body, error_type)
94
- raise self._create_exception(e.status_code, e.body, error_object, context)
95
-
96
- def get_privacy_policy(self, query: GetPrivacyPolicyParams, context: CallContext = None) -> GetPrivacyPolicyResponse:
97
- """
98
- Resource /v2/{merchantId}/services/privacypolicy - Get Privacy Policy
99
-
100
-
101
- :param query: :class:`onlinepayments.sdk.merchant.services.get_privacy_policy_params.GetPrivacyPolicyParams`
102
- :param context: :class:`onlinepayments.sdk.call_context.CallContext`
103
- :return: :class:`onlinepayments.sdk.domain.get_privacy_policy_response.GetPrivacyPolicyResponse`
104
- :raise: ValidationException if the request was not correct and couldn't be processed (HTTP status code 400)
105
- :raise: AuthorizationException if the request was not allowed (HTTP status code 403)
106
- :raise: ReferenceException if an object was attempted to be referenced that doesn't exist or has been removed,
107
- or there was a conflict (HTTP status code 404, 409 or 410)
108
- :raise: PaymentPlatformException if something went wrong at the payment platform,
109
- the payment platform was unable to process a message from a downstream partner/acquirer,
110
- or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
111
- :raise: ApiException if the payment platform returned any other error
112
- """
113
- uri = self._instantiate_uri("/v2/{merchantId}/services/privacypolicy", None)
114
- try:
115
- return self._communicator.get(
116
- uri,
117
- self._client_headers,
118
- query,
119
- GetPrivacyPolicyResponse,
120
- context)
121
-
122
- except ResponseException as e:
123
- error_type = ErrorResponse
124
- error_object = self._communicator.marshaller.unmarshal(e.body, error_type)
125
- raise self._create_exception(e.status_code, e.body, error_object, context)
126
-
127
- def test_connection(self, context: CallContext = None) -> TestConnection:
128
- """
129
- Resource /v2/{merchantId}/services/testconnection - Test connection
130
-
131
-
132
- :param context: :class:`onlinepayments.sdk.call_context.CallContext`
133
- :return: :class:`onlinepayments.sdk.domain.test_connection.TestConnection`
134
- :raise: ValidationException if the request was not correct and couldn't be processed (HTTP status code 400)
135
- :raise: AuthorizationException if the request was not allowed (HTTP status code 403)
136
- :raise: ReferenceException if an object was attempted to be referenced that doesn't exist or has been removed,
137
- or there was a conflict (HTTP status code 404, 409 or 410)
138
- :raise: PaymentPlatformException if something went wrong at the payment platform,
139
- the payment platform was unable to process a message from a downstream partner/acquirer,
140
- or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
141
- :raise: ApiException if the payment platform returned any other error
142
- """
143
- uri = self._instantiate_uri("/v2/{merchantId}/services/testconnection", None)
144
- try:
145
- return self._communicator.get(
146
- uri,
147
- self._client_headers,
148
- None,
149
- TestConnection,
150
- context)
151
-
152
- except ResponseException as e:
153
- error_type = ErrorResponse
154
- error_object = self._communicator.marshaller.unmarshal(e.body, error_type)
155
- raise self._create_exception(e.status_code, e.body, error_object, context)
156
-
157
- def get_iin_details(self, body: GetIINDetailsRequest, context: CallContext = None) -> GetIINDetailsResponse:
158
- """
159
- Resource /v2/{merchantId}/services/getIINdetails - Get IIN details
160
-
161
-
162
- :param body: :class:`onlinepayments.sdk.domain.get_iin_details_request.GetIINDetailsRequest`
163
- :param context: :class:`onlinepayments.sdk.call_context.CallContext`
164
- :return: :class:`onlinepayments.sdk.domain.get_iin_details_response.GetIINDetailsResponse`
165
- :raise: ValidationException if the request was not correct and couldn't be processed (HTTP status code 400)
166
- :raise: AuthorizationException if the request was not allowed (HTTP status code 403)
167
- :raise: ReferenceException if an object was attempted to be referenced that doesn't exist or has been removed,
168
- or there was a conflict (HTTP status code 404, 409 or 410)
169
- :raise: PaymentPlatformException if something went wrong at the payment platform,
170
- the payment platform was unable to process a message from a downstream partner/acquirer,
171
- or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
172
- :raise: ApiException if the payment platform returned any other error
173
- """
174
- uri = self._instantiate_uri("/v2/{merchantId}/services/getIINdetails", None)
175
- try:
176
- return self._communicator.post(
177
- uri,
178
- self._client_headers,
179
- None,
180
- body,
181
- GetIINDetailsResponse,
182
- context)
183
-
184
- except ResponseException as e:
185
- error_type = ErrorResponse
186
- error_object = self._communicator.marshaller.unmarshal(e.body, error_type)
187
- raise self._create_exception(e.status_code, e.body, error_object, context)
@@ -1,55 +0,0 @@
1
- #
2
- # This class was auto-generated.
3
- #
4
- from onlinepayments.sdk.api_resource import ApiResource
5
- from onlinepayments.sdk.call_context import CallContext
6
- from onlinepayments.sdk.response_exception import ResponseException
7
- from onlinepayments.sdk.domain.error_response import ErrorResponse
8
- from onlinepayments.sdk.domain.session_request import SessionRequest
9
- from onlinepayments.sdk.domain.session_response import SessionResponse
10
- from onlinepayments.sdk.merchant.sessions.i_sessions_client import ISessionsClient
11
-
12
-
13
- class SessionsClient(ApiResource, ISessionsClient):
14
- """
15
- Sessions client. Thread-safe.
16
- """
17
-
18
- def __init__(self, parent, path_context):
19
- """
20
- :param parent: :class:`onlinepayments.sdk.api_resource.ApiResource`
21
- :param path_context: dict[str, str]
22
- """
23
- super(SessionsClient, self).__init__(parent, path_context)
24
-
25
- def create_session(self, body: SessionRequest, context: CallContext = None) -> SessionResponse:
26
- """
27
- Resource /v2/{merchantId}/sessions - Create session
28
-
29
-
30
- :param body: :class:`onlinepayments.sdk.domain.session_request.SessionRequest`
31
- :param context: :class:`onlinepayments.sdk.call_context.CallContext`
32
- :return: :class:`onlinepayments.sdk.domain.session_response.SessionResponse`
33
- :raise: ValidationException if the request was not correct and couldn't be processed (HTTP status code 400)
34
- :raise: AuthorizationException if the request was not allowed (HTTP status code 403)
35
- :raise: ReferenceException if an object was attempted to be referenced that doesn't exist or has been removed,
36
- or there was a conflict (HTTP status code 404, 409 or 410)
37
- :raise: PaymentPlatformException if something went wrong at the payment platform,
38
- the payment platform was unable to process a message from a downstream partner/acquirer,
39
- or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
40
- :raise: ApiException if the payment platform returned any other error
41
- """
42
- uri = self._instantiate_uri("/v2/{merchantId}/sessions", None)
43
- try:
44
- return self._communicator.post(
45
- uri,
46
- self._client_headers,
47
- None,
48
- body,
49
- SessionResponse,
50
- context)
51
-
52
- except ResponseException as e:
53
- error_type = ErrorResponse
54
- error_object = self._communicator.marshaller.unmarshal(e.body, error_type)
55
- raise self._create_exception(e.status_code, e.body, error_object, context)
@@ -1,10 +0,0 @@
1
- class MultipartFormDataRequest:
2
- """
3
- A representation of a multipart/form-data request.
4
- """
5
-
6
- def to_multipart_form_data_object(self):
7
- """
8
- :return: :class:`ingenico.connect.sdk.MultipartFormDataObject`
9
- """
10
- raise NotImplementedError
@@ -1,13 +0,0 @@
1
- from abc import ABC, abstractmethod
2
-
3
-
4
- class ParamRequest(ABC):
5
- """
6
- Represents a set of request parameters.
7
- """
8
-
9
- @abstractmethod
10
- def to_request_parameters(self):
11
- """
12
- :return: list[:class:`onlinepayments.sdk.RequestParam`] representing the HTTP request parameters
13
- """
@@ -1,11 +0,0 @@
1
- from onlinepayments.sdk.api_exception import ApiException
2
-
3
-
4
- class PaymentPlatformException(ApiException):
5
- """
6
- Represents an error response from the payment platform when something
7
- went wrong at the payment platform or further downstream.
8
- """
9
-
10
- def __init__(self, status_code, response_body, error_id, errors, message="the Online Payments platform returned an error response"):
11
- super(PaymentPlatformException, self).__init__(status_code, response_body, error_id, errors, message)
@@ -1,12 +0,0 @@
1
- from onlinepayments.sdk.api_exception import ApiException
2
-
3
-
4
- class ReferenceException(ApiException):
5
- """
6
- Represents an error response from the Online Payments platform when a
7
- non-existing or removed object is trying to be accessed.
8
- """
9
-
10
- def __init__(self, status_code, response_body, error_id, errors,
11
- message="the Online Payments platform returned a reference error response"):
12
- super(ReferenceException, self).__init__(status_code, response_body, error_id, errors, message)
@@ -1,25 +0,0 @@
1
- from typing import Dict, Optional, Tuple
2
-
3
-
4
- def get_header_value(headers: Dict[str, str], header_name: str) -> Optional[str]:
5
- """
6
- :return: The value of the header with the given name, or None if there was no such header.
7
- """
8
- if headers is None:
9
- return None
10
- for name, value in headers.items():
11
- if name.lower() == header_name.lower():
12
- return value
13
- return None
14
-
15
-
16
- def get_header(headers: Dict[str, str], header_name: str) -> Optional[Tuple[str, str]]:
17
- """
18
- :return: The header with the given name as a tuple with the name and value, or None if there was no such header.
19
- """
20
- if headers is None:
21
- return None
22
- for name, value in headers.items():
23
- if name.lower() == header_name.lower():
24
- return name, value
25
- return None
@@ -1,11 +0,0 @@
1
- from onlinepayments.sdk.api_exception import ApiException
2
-
3
-
4
- class ValidationException(ApiException):
5
- """
6
- Represents an error response from the Online Payments platform when validation of requests failed.
7
- """
8
-
9
- def __init__(self, status_code, response_body, error_id, errors,
10
- message="the Online Payments platform returned an incorrect request error response"):
11
- super(ValidationException, self).__init__(status_code, response_body, error_id, errors, message)
@@ -1,23 +0,0 @@
1
- from onlinepayments.sdk.webhooks.signature_validation_exception import SignatureValidationException
2
-
3
-
4
- class SecretKeyNotAvailableException(SignatureValidationException):
5
- """
6
- Represents an error that causes a secret key to not be available.
7
- """
8
-
9
- def __init__(self, param1, param2, cause=False):
10
- if cause is False:
11
- if isinstance(param2, str):
12
- super(SecretKeyNotAvailableException, self).__init__(param1)
13
- self.__key_id = param2
14
- else:
15
- super(SecretKeyNotAvailableException, self).__init__(param2)
16
- self.__key_id = param1
17
- else:
18
- super(SecretKeyNotAvailableException, self).__init__(param1, cause)
19
- self.__key_id = param2
20
-
21
- @property
22
- def key_id(self):
23
- return self.__key_id
@@ -1,10 +0,0 @@
1
- class SignatureValidationException(RuntimeError):
2
- """
3
- Represents an error while validating webhooks signatures.
4
- """
5
-
6
- def __init__(self, param, cause=False):
7
- if not cause:
8
- super(SignatureValidationException, self).__init__(param)
9
- else:
10
- super(SignatureValidationException, self).__init__(param, cause)
@@ -1,22 +0,0 @@
1
- from onlinepayments.sdk.defaultimpl.default_marshaller import DefaultMarshaller
2
- from onlinepayments.sdk.webhooks.web_hooks_helper_builder import WebhooksHelperBuilder
3
-
4
-
5
- class Webhooks:
6
- """
7
- Online Payments platform factory for several webhooks components.
8
- """
9
-
10
- @staticmethod
11
- def create_helper_builder(secret_key_store):
12
- """
13
- Creates a WebhooksHelperBuilder that will use the given SecretKeyStore.
14
- """
15
- return WebhooksHelperBuilder().with_marshaller(
16
- DefaultMarshaller.INSTANCE()).with_secret_key_store(
17
- secret_key_store)
18
-
19
- @staticmethod
20
- def create_helper(secret_key_store):
21
- web_hooks_helper_builder = Webhooks.create_helper_builder(secret_key_store)
22
- return web_hooks_helper_builder.build()
@@ -1,124 +0,0 @@
1
- import hashlib
2
- import hmac
3
- from base64 import b64encode
4
- from typing import List
5
-
6
- from onlinepayments.sdk.domain.web_hooks_event import WebhooksEvent
7
- from onlinepayments.sdk.marshaller import Marshaller
8
- from onlinepayments.sdk.request_header import RequestHeader
9
- from onlinepayments.sdk.webhooks.api_version_mismatch_exception import ApiVersionMismatchException
10
- from onlinepayments.sdk.webhooks.secret_key_store import SecretKeyStore
11
- from onlinepayments.sdk.webhooks.signature_validation_exception import SignatureValidationException
12
-
13
-
14
- class WebhooksHelper:
15
- """
16
- Online Payments platform webhooks helper.
17
- """
18
-
19
- def __init__(self, marshaller: Marshaller, secret_key_store: SecretKeyStore):
20
- if marshaller is None:
21
- raise ValueError("marshaller is requried")
22
- if secret_key_store is None:
23
- raise ValueError("secret_key_store is required")
24
- self.__marshaller = marshaller
25
- self.__secret_key_store = secret_key_store
26
-
27
- # body as InputStream
28
-
29
- def unmarshal(self, body, request_headers: List[RequestHeader]):
30
- """
31
- Unmarshals the given body, while also validating it using the given request headers.
32
-
33
- :raise: SignatureValidationException: If the body could not be validated successfully.
34
- :raise: ApiVersionMismatchException: If the resulting event has an API
35
- version that this version of the SDK does not support.
36
- :return: The body unmarshalled as a WebhooksEvent.
37
- """
38
- self._validate(body, request_headers)
39
- event = self.__marshaller.unmarshal(body.decode("utf-8"), WebhooksEvent)
40
- self.__validate_api_version(event)
41
- return event
42
-
43
- def _validate(self, body, request_headers):
44
- """
45
- Validates the given body using the given request headers.
46
-
47
- :raise: SignatureValidationException: If the body could not be validated successfully.
48
- """
49
- self.__validate_body(body, request_headers)
50
-
51
- # validation utility methods
52
-
53
- def __validate_body(self, body, request_headers):
54
- signature = self.__get_header_value(request_headers, "X-GCS-Signature")
55
- key_id = self.__get_header_value(request_headers, "X-GCS-KeyId")
56
- secret_key = self.__secret_key_store.get_secret_key(key_id)
57
- unencoded_result = hmac.new(secret_key.encode("utf-8"), body, hashlib.sha256)
58
- expected_signature = b64encode(unencoded_result.digest()).decode(
59
- "utf-8").rstrip('\n')
60
- is_valid = self.are_equal_signatures(signature, expected_signature)
61
- if is_valid is False:
62
- raise SignatureValidationException("failed to validate signature: '"
63
- + signature + "' (" + str(len(signature)) + "), expected: '"
64
- + expected_signature + "' (" + str(len(expected_signature)) + ").")
65
-
66
- @staticmethod
67
- def are_equal_signatures(signature, expected_signature):
68
- # don't use a simple equals call, as that may leak timing information
69
- # (it fails fast)
70
- length = len(signature)
71
- expected_length = len(expected_signature)
72
-
73
- # always check at least 256 characters, to also not leak timing
74
- # information about the length of the expected signature
75
- limit = max(max(length, expected_length), 256)
76
-
77
- result = True
78
-
79
- # the loop below uses result &= false instead of result = false and
80
- # result &= true instead of nothing because those might leak timing
81
- # information
82
- for i in range(0, limit):
83
- if i < length and i < expected_length:
84
- # both within string boundaries
85
- result = result and (signature[i] == expected_signature[i])
86
- elif i >= length and i >= expected_length:
87
- # past both string boundaries
88
- result = result and True
89
- else:
90
- # i >= length || i >= expected_length but not both
91
- result = result and False
92
-
93
- return result
94
-
95
- # general utility methods
96
-
97
- @staticmethod
98
- def __validate_api_version(event):
99
- if not "v1" == event.api_version:
100
- raise ApiVersionMismatchException(event.api_version, "v1")
101
-
102
- @staticmethod
103
- def __get_header_value(request_headers, header_name: str):
104
- value = None
105
- for header in request_headers:
106
- if header_name.lower() == header.name.lower():
107
- if value is None:
108
- value = header.value
109
- else:
110
- raise SignatureValidationException(
111
- "encountered multiple occurrences of header '" + header_name + "'")
112
- if value is None:
113
- raise SignatureValidationException(
114
- "could not find header '" + header_name + "'")
115
- return value
116
-
117
- # Used for unit tests
118
- @property
119
- def marshaller(self) -> Marshaller:
120
- return self.__marshaller
121
-
122
- @property
123
- def secret_key_store(self) -> SecretKeyStore:
124
- return self.__secret_key_store