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

Commit ce1d1ff

Browse files
committedDec 12, 2023
Release 3.45.0.
1 parent 8335423 commit ce1d1ff

File tree

8 files changed

+67
-47
lines changed

8 files changed

+67
-47
lines changed
 

‎conf.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -62,9 +62,9 @@
6262
# built documents.
6363
#
6464
# The short X.Y version.
65-
version = u'3.44.0'
65+
version = u'3.45.0'
6666
# The full version, including alpha/beta/rc tags.
67-
release = u'3.44.0'
67+
release = u'3.45.0'
6868

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

143143
# A shorter title for the navigation bar. Default is the same as html_title.
144144
#

‎ingenico/connect/sdk/domain/definitions/card_fraud_results.py

Lines changed: 0 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
from ingenico.connect.sdk.domain.definitions.fraud_results import FraudResults
77
from ingenico.connect.sdk.domain.definitions.fraud_results_retail_decisions import FraudResultsRetailDecisions
88
from ingenico.connect.sdk.domain.definitions.fraugster_results import FraugsterResults
9-
from ingenico.connect.sdk.domain.definitions.microsoft_fraud_results import MicrosoftFraudResults
109

1110

1211
class CardFraudResults(FraudResults):
@@ -17,7 +16,6 @@ class CardFraudResults(FraudResults):
1716
__avs_result = None
1817
__cvv_result = None
1918
__fraugster = None
20-
__microsoft_fraud_protection = None
2119
__retail_decisions = None
2220

2321
@property
@@ -92,19 +90,6 @@ def fraugster(self):
9290
def fraugster(self, value):
9391
self.__fraugster = value
9492

95-
@property
96-
def microsoft_fraud_protection(self):
97-
"""
98-
| 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.
99-
100-
Type: :class:`ingenico.connect.sdk.domain.definitions.microsoft_fraud_results.MicrosoftFraudResults`
101-
"""
102-
return self.__microsoft_fraud_protection
103-
104-
@microsoft_fraud_protection.setter
105-
def microsoft_fraud_protection(self, value):
106-
self.__microsoft_fraud_protection = value
107-
10893
@property
10994
def retail_decisions(self):
11095
"""
@@ -126,8 +111,6 @@ def to_dictionary(self):
126111
dictionary['cvvResult'] = self.cvv_result
127112
if self.fraugster is not None:
128113
dictionary['fraugster'] = self.fraugster.to_dictionary()
129-
if self.microsoft_fraud_protection is not None:
130-
dictionary['microsoftFraudProtection'] = self.microsoft_fraud_protection.to_dictionary()
131114
if self.retail_decisions is not None:
132115
dictionary['retailDecisions'] = self.retail_decisions.to_dictionary()
133116
return dictionary
@@ -143,11 +126,6 @@ def from_dictionary(self, dictionary):
143126
raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['fraugster']))
144127
value = FraugsterResults()
145128
self.fraugster = value.from_dictionary(dictionary['fraugster'])
146-
if 'microsoftFraudProtection' in dictionary:
147-
if not isinstance(dictionary['microsoftFraudProtection'], dict):
148-
raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['microsoftFraudProtection']))
149-
value = MicrosoftFraudResults()
150-
self.microsoft_fraud_protection = value.from_dictionary(dictionary['microsoftFraudProtection'])
151129
if 'retailDecisions' in dictionary:
152130
if not isinstance(dictionary['retailDecisions'], dict):
153131
raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['retailDecisions']))

‎ingenico/connect/sdk/domain/definitions/fraud_results.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,14 @@
55
#
66
from ingenico.connect.sdk.data_object import DataObject
77
from ingenico.connect.sdk.domain.definitions.in_auth import InAuth
8+
from ingenico.connect.sdk.domain.definitions.microsoft_fraud_results import MicrosoftFraudResults
89

910

1011
class FraudResults(DataObject):
1112

1213
__fraud_service_result = None
1314
__in_auth = None
15+
__microsoft_fraud_protection = None
1416

1517
@property
1618
def fraud_service_result(self):
@@ -44,12 +46,27 @@ def in_auth(self):
4446
def in_auth(self, value):
4547
self.__in_auth = value
4648

49+
@property
50+
def microsoft_fraud_protection(self):
51+
"""
52+
| 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.
53+
54+
Type: :class:`ingenico.connect.sdk.domain.definitions.microsoft_fraud_results.MicrosoftFraudResults`
55+
"""
56+
return self.__microsoft_fraud_protection
57+
58+
@microsoft_fraud_protection.setter
59+
def microsoft_fraud_protection(self, value):
60+
self.__microsoft_fraud_protection = value
61+
4762
def to_dictionary(self):
4863
dictionary = super(FraudResults, self).to_dictionary()
4964
if self.fraud_service_result is not None:
5065
dictionary['fraudServiceResult'] = self.fraud_service_result
5166
if self.in_auth is not None:
5267
dictionary['inAuth'] = self.in_auth.to_dictionary()
68+
if self.microsoft_fraud_protection is not None:
69+
dictionary['microsoftFraudProtection'] = self.microsoft_fraud_protection.to_dictionary()
5370
return dictionary
5471

5572
def from_dictionary(self, dictionary):
@@ -61,4 +78,9 @@ def from_dictionary(self, dictionary):
6178
raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['inAuth']))
6279
value = InAuth()
6380
self.in_auth = value.from_dictionary(dictionary['inAuth'])
81+
if 'microsoftFraudProtection' in dictionary:
82+
if not isinstance(dictionary['microsoftFraudProtection'], dict):
83+
raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['microsoftFraudProtection']))
84+
value = MicrosoftFraudResults()
85+
self.microsoft_fraud_protection = value.from_dictionary(dictionary['microsoftFraudProtection'])
6486
return self

‎ingenico/connect/sdk/domain/payment/definitions/e_invoice_payment_method_specific_output.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
# This class was auto-generated from the API references found at
44
# https://epayments-api.developer-ingenico.com/s2sapi/v1/
55
#
6+
from ingenico.connect.sdk.domain.definitions.fraud_results import FraudResults
67
from ingenico.connect.sdk.domain.payment.definitions.abstract_payment_method_specific_output import AbstractPaymentMethodSpecificOutput
78
from ingenico.connect.sdk.domain.payment.definitions.e_invoice_payment_product9000_specific_output import EInvoicePaymentProduct9000SpecificOutput
89

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

16+
__fraud_results = None
1517
__payment_product9000_specific_output = None
1618

19+
@property
20+
def fraud_results(self):
21+
"""
22+
| Object containing the results of the fraud screening
23+
24+
Type: :class:`ingenico.connect.sdk.domain.definitions.fraud_results.FraudResults`
25+
"""
26+
return self.__fraud_results
27+
28+
@fraud_results.setter
29+
def fraud_results(self, value):
30+
self.__fraud_results = value
31+
1732
@property
1833
def payment_product9000_specific_output(self):
1934
"""
@@ -29,12 +44,19 @@ def payment_product9000_specific_output(self, value):
2944

3045
def to_dictionary(self):
3146
dictionary = super(EInvoicePaymentMethodSpecificOutput, self).to_dictionary()
47+
if self.fraud_results is not None:
48+
dictionary['fraudResults'] = self.fraud_results.to_dictionary()
3249
if self.payment_product9000_specific_output is not None:
3350
dictionary['paymentProduct9000SpecificOutput'] = self.payment_product9000_specific_output.to_dictionary()
3451
return dictionary
3552

3653
def from_dictionary(self, dictionary):
3754
super(EInvoicePaymentMethodSpecificOutput, self).from_dictionary(dictionary)
55+
if 'fraudResults' in dictionary:
56+
if not isinstance(dictionary['fraudResults'], dict):
57+
raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['fraudResults']))
58+
value = FraudResults()
59+
self.fraud_results = value.from_dictionary(dictionary['fraudResults'])
3860
if 'paymentProduct9000SpecificOutput' in dictionary:
3961
if not isinstance(dictionary['paymentProduct9000SpecificOutput'], dict):
4062
raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['paymentProduct9000SpecificOutput']))

‎ingenico/connect/sdk/domain/payment/definitions/sdk_data_input.py

Lines changed: 0 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99

1010
class SdkDataInput(DataObject):
1111

12-
__device_info = None
1312
__device_render_options = None
1413
__sdk_app_id = None
1514
__sdk_encrypted_data = None
@@ -18,21 +17,6 @@ class SdkDataInput(DataObject):
1817
__sdk_reference_number = None
1918
__sdk_transaction_id = None
2019

21-
@property
22-
def device_info(self):
23-
"""
24-
| Device information gathered by the 3DS SDK on a customer device. This is JSON name/value pairs that as a whole is Base64url encoded.
25-
26-
Type: str
27-
28-
Deprecated; No replacement
29-
"""
30-
return self.__device_info
31-
32-
@device_info.setter
33-
def device_info(self, value):
34-
self.__device_info = value
35-
3620
@property
3721
def device_render_options(self):
3822
"""
@@ -126,8 +110,6 @@ def sdk_transaction_id(self, value):
126110

127111
def to_dictionary(self):
128112
dictionary = super(SdkDataInput, self).to_dictionary()
129-
if self.device_info is not None:
130-
dictionary['deviceInfo'] = self.device_info
131113
if self.device_render_options is not None:
132114
dictionary['deviceRenderOptions'] = self.device_render_options.to_dictionary()
133115
if self.sdk_app_id is not None:
@@ -146,8 +128,6 @@ def to_dictionary(self):
146128

147129
def from_dictionary(self, dictionary):
148130
super(SdkDataInput, self).from_dictionary(dictionary)
149-
if 'deviceInfo' in dictionary:
150-
self.device_info = dictionary['deviceInfo']
151131
if 'deviceRenderOptions' in dictionary:
152132
if not isinstance(dictionary['deviceRenderOptions'], dict):
153133
raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['deviceRenderOptions']))

‎ingenico/connect/sdk/domain/product/definitions/payment_product.py

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ class PaymentProduct(DataObject):
2828
__fields = None
2929
__fields_warning = None
3030
__id = None
31+
__is_authentication_supported = None
3132
__is_java_script_required = None
3233
__max_amount = None
3334
__min_amount = None
@@ -227,6 +228,19 @@ def id(self):
227228
def id(self, value):
228229
self.__id = value
229230

231+
@property
232+
def is_authentication_supported(self):
233+
"""
234+
| Indicates if the payment product supports 3D-Secure.
235+
236+
Type: bool
237+
"""
238+
return self.__is_authentication_supported
239+
240+
@is_authentication_supported.setter
241+
def is_authentication_supported(self, value):
242+
self.__is_authentication_supported = value
243+
230244
@property
231245
def is_java_script_required(self):
232246
"""
@@ -424,6 +438,8 @@ def to_dictionary(self):
424438
dictionary['fieldsWarning'] = self.fields_warning
425439
if self.id is not None:
426440
dictionary['id'] = self.id
441+
if self.is_authentication_supported is not None:
442+
dictionary['isAuthenticationSupported'] = self.is_authentication_supported
427443
if self.is_java_script_required is not None:
428444
dictionary['isJavaScriptRequired'] = self.is_java_script_required
429445
if self.max_amount is not None:
@@ -492,6 +508,8 @@ def from_dictionary(self, dictionary):
492508
self.fields_warning = dictionary['fieldsWarning']
493509
if 'id' in dictionary:
494510
self.id = dictionary['id']
511+
if 'isAuthenticationSupported' in dictionary:
512+
self.is_authentication_supported = dictionary['isAuthenticationSupported']
495513
if 'isJavaScriptRequired' in dictionary:
496514
self.is_java_script_required = dictionary['isJavaScriptRequired']
497515
if 'maxAmount' in dictionary:

‎ingenico/connect/sdk/meta_data_provider.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ class MetaDataProvider:
2121
"""
2222
Provides meta info about the server.
2323
"""
24-
__SDK_VERSION = "3.44.0"
24+
__SDK_VERSION = "3.45.0"
2525
__SERVER_META_INFO_HEADER = "X-GCS-ServerMetaInfo"
2626
__prohibited_headers = [__SERVER_META_INFO_HEADER, "X-GCS-Idempotence-Key",
2727
"Date", "Content-Type", "Authorization"]

‎setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ def test_collector():
2121

2222
setup(
2323
name="connect-sdk-python2",
24-
version="3.44.0",
24+
version="3.45.0",
2525
author="Ingenico ePayments",
2626
author_email="github@epay.ingenico.com",
2727
description="SDK to communicate with the Ingenico ePayments platform using the Ingenico Connect Server API",

0 commit comments

Comments
 (0)