Skip to content
This repository has been archived by the owner on Mar 19, 2024. It is now read-only.

Commit

Permalink
Release 3.45.0.
Browse files Browse the repository at this point in the history
  • Loading branch information
IngenicoEPayments committed Dec 12, 2023
1 parent 8335423 commit ce1d1ff
Show file tree
Hide file tree
Showing 8 changed files with 67 additions and 47 deletions.
6 changes: 3 additions & 3 deletions conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -62,9 +62,9 @@
# built documents.
#
# The short X.Y version.
version = u'3.44.0'
version = u'3.45.0'
# The full version, including alpha/beta/rc tags.
release = u'3.44.0'
release = u'3.45.0'

# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
Expand Down Expand Up @@ -138,7 +138,7 @@
# The name for this set of Sphinx documents.
# "<project> v<release> documentation" by default.
#
# html_title = u'Python SDK v3.44.0'
# html_title = u'Python SDK v3.45.0'

# A shorter title for the navigation bar. Default is the same as html_title.
#
Expand Down
22 changes: 0 additions & 22 deletions ingenico/connect/sdk/domain/definitions/card_fraud_results.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@
from ingenico.connect.sdk.domain.definitions.fraud_results import FraudResults
from ingenico.connect.sdk.domain.definitions.fraud_results_retail_decisions import FraudResultsRetailDecisions
from ingenico.connect.sdk.domain.definitions.fraugster_results import FraugsterResults
from ingenico.connect.sdk.domain.definitions.microsoft_fraud_results import MicrosoftFraudResults


class CardFraudResults(FraudResults):
Expand All @@ -17,7 +16,6 @@ class CardFraudResults(FraudResults):
__avs_result = None
__cvv_result = None
__fraugster = None
__microsoft_fraud_protection = None
__retail_decisions = None

@property
Expand Down Expand Up @@ -92,19 +90,6 @@ def fraugster(self):
def fraugster(self, value):
self.__fraugster = value

@property
def microsoft_fraud_protection(self):
"""
| This object contains the results of Microsoft Fraud Protection risk assessment. Microsoft collects transaction data points and uses Adaptive AI that continuously learns to protect you against payment fraud, and the device fingerprinting details from the Microsoft Device Fingerprinting service.
Type: :class:`ingenico.connect.sdk.domain.definitions.microsoft_fraud_results.MicrosoftFraudResults`
"""
return self.__microsoft_fraud_protection

@microsoft_fraud_protection.setter
def microsoft_fraud_protection(self, value):
self.__microsoft_fraud_protection = value

@property
def retail_decisions(self):
"""
Expand All @@ -126,8 +111,6 @@ def to_dictionary(self):
dictionary['cvvResult'] = self.cvv_result
if self.fraugster is not None:
dictionary['fraugster'] = self.fraugster.to_dictionary()
if self.microsoft_fraud_protection is not None:
dictionary['microsoftFraudProtection'] = self.microsoft_fraud_protection.to_dictionary()
if self.retail_decisions is not None:
dictionary['retailDecisions'] = self.retail_decisions.to_dictionary()
return dictionary
Expand All @@ -143,11 +126,6 @@ def from_dictionary(self, dictionary):
raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['fraugster']))
value = FraugsterResults()
self.fraugster = value.from_dictionary(dictionary['fraugster'])
if 'microsoftFraudProtection' in dictionary:
if not isinstance(dictionary['microsoftFraudProtection'], dict):
raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['microsoftFraudProtection']))
value = MicrosoftFraudResults()
self.microsoft_fraud_protection = value.from_dictionary(dictionary['microsoftFraudProtection'])
if 'retailDecisions' in dictionary:
if not isinstance(dictionary['retailDecisions'], dict):
raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['retailDecisions']))
Expand Down
22 changes: 22 additions & 0 deletions ingenico/connect/sdk/domain/definitions/fraud_results.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,14 @@
#
from ingenico.connect.sdk.data_object import DataObject
from ingenico.connect.sdk.domain.definitions.in_auth import InAuth
from ingenico.connect.sdk.domain.definitions.microsoft_fraud_results import MicrosoftFraudResults


class FraudResults(DataObject):

__fraud_service_result = None
__in_auth = None
__microsoft_fraud_protection = None

@property
def fraud_service_result(self):
Expand Down Expand Up @@ -44,12 +46,27 @@ def in_auth(self):
def in_auth(self, value):
self.__in_auth = value

@property
def microsoft_fraud_protection(self):
"""
| This object contains the results of Microsoft Fraud Protection risk assessment. Microsoft collects transaction data points and uses Adaptive AI that continuously learns to protect you against payment fraud, and the device fingerprinting details from the Microsoft Device Fingerprinting service.
Type: :class:`ingenico.connect.sdk.domain.definitions.microsoft_fraud_results.MicrosoftFraudResults`
"""
return self.__microsoft_fraud_protection

@microsoft_fraud_protection.setter
def microsoft_fraud_protection(self, value):
self.__microsoft_fraud_protection = value

def to_dictionary(self):
dictionary = super(FraudResults, self).to_dictionary()
if self.fraud_service_result is not None:
dictionary['fraudServiceResult'] = self.fraud_service_result
if self.in_auth is not None:
dictionary['inAuth'] = self.in_auth.to_dictionary()
if self.microsoft_fraud_protection is not None:
dictionary['microsoftFraudProtection'] = self.microsoft_fraud_protection.to_dictionary()
return dictionary

def from_dictionary(self, dictionary):
Expand All @@ -61,4 +78,9 @@ def from_dictionary(self, dictionary):
raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['inAuth']))
value = InAuth()
self.in_auth = value.from_dictionary(dictionary['inAuth'])
if 'microsoftFraudProtection' in dictionary:
if not isinstance(dictionary['microsoftFraudProtection'], dict):
raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['microsoftFraudProtection']))
value = MicrosoftFraudResults()
self.microsoft_fraud_protection = value.from_dictionary(dictionary['microsoftFraudProtection'])
return self
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
# This class was auto-generated from the API references found at
# https://epayments-api.developer-ingenico.com/s2sapi/v1/
#
from ingenico.connect.sdk.domain.definitions.fraud_results import FraudResults
from ingenico.connect.sdk.domain.payment.definitions.abstract_payment_method_specific_output import AbstractPaymentMethodSpecificOutput
from ingenico.connect.sdk.domain.payment.definitions.e_invoice_payment_product9000_specific_output import EInvoicePaymentProduct9000SpecificOutput

Expand All @@ -12,8 +13,22 @@ class EInvoicePaymentMethodSpecificOutput(AbstractPaymentMethodSpecificOutput):
| E-invoice payment specific response data
"""

__fraud_results = None
__payment_product9000_specific_output = None

@property
def fraud_results(self):
"""
| Object containing the results of the fraud screening
Type: :class:`ingenico.connect.sdk.domain.definitions.fraud_results.FraudResults`
"""
return self.__fraud_results

@fraud_results.setter
def fraud_results(self, value):
self.__fraud_results = value

@property
def payment_product9000_specific_output(self):
"""
Expand All @@ -29,12 +44,19 @@ def payment_product9000_specific_output(self, value):

def to_dictionary(self):
dictionary = super(EInvoicePaymentMethodSpecificOutput, self).to_dictionary()
if self.fraud_results is not None:
dictionary['fraudResults'] = self.fraud_results.to_dictionary()
if self.payment_product9000_specific_output is not None:
dictionary['paymentProduct9000SpecificOutput'] = self.payment_product9000_specific_output.to_dictionary()
return dictionary

def from_dictionary(self, dictionary):
super(EInvoicePaymentMethodSpecificOutput, self).from_dictionary(dictionary)
if 'fraudResults' in dictionary:
if not isinstance(dictionary['fraudResults'], dict):
raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['fraudResults']))
value = FraudResults()
self.fraud_results = value.from_dictionary(dictionary['fraudResults'])
if 'paymentProduct9000SpecificOutput' in dictionary:
if not isinstance(dictionary['paymentProduct9000SpecificOutput'], dict):
raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['paymentProduct9000SpecificOutput']))
Expand Down
20 changes: 0 additions & 20 deletions ingenico/connect/sdk/domain/payment/definitions/sdk_data_input.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@

class SdkDataInput(DataObject):

__device_info = None
__device_render_options = None
__sdk_app_id = None
__sdk_encrypted_data = None
Expand All @@ -18,21 +17,6 @@ class SdkDataInput(DataObject):
__sdk_reference_number = None
__sdk_transaction_id = None

@property
def device_info(self):
"""
| Device information gathered by the 3DS SDK on a customer device. This is JSON name/value pairs that as a whole is Base64url encoded.
Type: str
Deprecated; No replacement
"""
return self.__device_info

@device_info.setter
def device_info(self, value):
self.__device_info = value

@property
def device_render_options(self):
"""
Expand Down Expand Up @@ -126,8 +110,6 @@ def sdk_transaction_id(self, value):

def to_dictionary(self):
dictionary = super(SdkDataInput, self).to_dictionary()
if self.device_info is not None:
dictionary['deviceInfo'] = self.device_info
if self.device_render_options is not None:
dictionary['deviceRenderOptions'] = self.device_render_options.to_dictionary()
if self.sdk_app_id is not None:
Expand All @@ -146,8 +128,6 @@ def to_dictionary(self):

def from_dictionary(self, dictionary):
super(SdkDataInput, self).from_dictionary(dictionary)
if 'deviceInfo' in dictionary:
self.device_info = dictionary['deviceInfo']
if 'deviceRenderOptions' in dictionary:
if not isinstance(dictionary['deviceRenderOptions'], dict):
raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['deviceRenderOptions']))
Expand Down
18 changes: 18 additions & 0 deletions ingenico/connect/sdk/domain/product/definitions/payment_product.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ class PaymentProduct(DataObject):
__fields = None
__fields_warning = None
__id = None
__is_authentication_supported = None
__is_java_script_required = None
__max_amount = None
__min_amount = None
Expand Down Expand Up @@ -227,6 +228,19 @@ def id(self):
def id(self, value):
self.__id = value

@property
def is_authentication_supported(self):
"""
| Indicates if the payment product supports 3D-Secure.
Type: bool
"""
return self.__is_authentication_supported

@is_authentication_supported.setter
def is_authentication_supported(self, value):
self.__is_authentication_supported = value

@property
def is_java_script_required(self):
"""
Expand Down Expand Up @@ -424,6 +438,8 @@ def to_dictionary(self):
dictionary['fieldsWarning'] = self.fields_warning
if self.id is not None:
dictionary['id'] = self.id
if self.is_authentication_supported is not None:
dictionary['isAuthenticationSupported'] = self.is_authentication_supported
if self.is_java_script_required is not None:
dictionary['isJavaScriptRequired'] = self.is_java_script_required
if self.max_amount is not None:
Expand Down Expand Up @@ -492,6 +508,8 @@ def from_dictionary(self, dictionary):
self.fields_warning = dictionary['fieldsWarning']
if 'id' in dictionary:
self.id = dictionary['id']
if 'isAuthenticationSupported' in dictionary:
self.is_authentication_supported = dictionary['isAuthenticationSupported']
if 'isJavaScriptRequired' in dictionary:
self.is_java_script_required = dictionary['isJavaScriptRequired']
if 'maxAmount' in dictionary:
Expand Down
2 changes: 1 addition & 1 deletion ingenico/connect/sdk/meta_data_provider.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ class MetaDataProvider:
"""
Provides meta info about the server.
"""
__SDK_VERSION = "3.44.0"
__SDK_VERSION = "3.45.0"
__SERVER_META_INFO_HEADER = "X-GCS-ServerMetaInfo"
__prohibited_headers = [__SERVER_META_INFO_HEADER, "X-GCS-Idempotence-Key",
"Date", "Content-Type", "Authorization"]
Expand Down
2 changes: 1 addition & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ def test_collector():

setup(
name="connect-sdk-python2",
version="3.44.0",
version="3.45.0",
author="Ingenico ePayments",
author_email="github@epay.ingenico.com",
description="SDK to communicate with the Ingenico ePayments platform using the Ingenico Connect Server API",
Expand Down

0 comments on commit ce1d1ff

Please sign in to comment.