Ingenico Connect Python SDK

Introduction

The Python SDK helps you to communicate with the Ingenico Connect Server API. It’s primary features are:

  • convenient Python library for the API calls and responses
    • marshalls Python request objects to HTTP requests
    • unmarshalls HTTP responses to Python response objects or Python exceptions
  • handling of all the details concerning authentication
  • handling of required meta data

Its use is demonstrated by an example for each possible call. The examples execute a call using the provided API keys.

See the Ingenico Connect Developer Hub for more information on how to use the SDK.

Structure of this repository

This repository consists out of four main components:

  1. The source code of the SDK itself: /ingenico/connect/sdk/
  2. The source code of the SDK unit tests: /tests/unit/
  3. The source code of the SDK integration tests: /tests/integration/
  4. Usage examples: /examples/

Note that the source code of the unit tests and integration tests and the examples can only be found on GitHub.

Requirements

Python 2.7 is required. In addition, the following packages are required:

These packages will be installed automatically if the SDK is installed manually or using pip following the below instructions.

Installation

To install the SDK using pip, execute the following command:

pip install connect-sdk-python2

Alternatively, you can install the SDK from a source distribution file:

  1. Download the latest version of the Python SDK from GitHub. Choose the connect-sdk-python2-x.y.z.zip file from the releases page, where x.y.z is the version number.

  2. Execute the following command in the folder where the SDK was downloaded to:

    pip install connect-sdk-python2-x.y.z.zip
    

Uninstalling

After the Python SDK has been installed, it can be uninstalled using the following command:

pip uninstall connect-sdk-python2

The required packages can be uninstalled in the same way.

Running tests

There are two types of tests: unit tests and integration tests. The unit tests will work out-of-the-box; for the integration tests some configuration is required. First, some environment variables need to be set:

  • connect.api.apiKeyId for the API key id to use. This can be retrieved from the Configuration Center.
  • connect.api.secretApiKey for the secret API key to use. This can be retrieved from the Configuration Center.
  • connect.api.merchantId for your merchant ID.

In addition, to run the proxy integration tests, the proxy URI, username and password should be set in the tests/resources/configuration.proxy.ini file.

In order to run the unit and integration tests, the mock backport and mockito are required. This can be installed using the following command:

pip install mock mockito

The following commands can now be executed from the tests directory to execute the tests:

  • Unit tests:

    python run_unit_tests.py
    
  • Integration tests:

    python run_integration_tests.py
    
  • Both unit and integration tests:

    python run_all_tests.py
    

Note: in the current version of the unit tests, two errors will pop up ([Errno 10053] for Windows and [Errno 32] for Linux), indicating that there was a client disconnect. These errors occur during cleanup of the tests and do not hinder the tests in any way, and should therefore be ignored.

API Reference

exception ingenico.connect.sdk.api_exception.ApiException(status_code, response_body, error_id, errors, message='the Ingenico ePayments platform returned an error response')[source]

Bases: exceptions.RuntimeError

Represents an error response from the Ingenico ePayments platform which contains an ID and a list of errors.

error_id
Returns:The error ID received from the Ingenico ePayments platform if available.
errors
Returns:The error list received from the Ingenico ePayments platform if available. Never None.
response_body
Returns:The raw response body that was returned by the Ingenico ePayments platform.
status_code
Returns:The HTTP status code that was returned by the Ingenico ePayments platform.
class ingenico.connect.sdk.api_resource.ApiResource(arg, path_context, client_meta_info=None)[source]

Bases: object

Base class of all Ingenico ePayments platform API resources.

__init__(arg, path_context, client_meta_info=None)[source]
Parameters:arg – communicator or parent
class ingenico.connect.sdk.authenticator.Authenticator[source]

Used to sign requests to the Ingenico ePayments platform.

create_simple_authentication_signature(http_method, resource_uri, request_headers)[source]

Creates a signature for the simple security model.

Parameters:
  • http_method – The HTTP method.
  • resource_uri – The URI of the resource.
  • request_headers – A list of RequestHeaders. This list may not be modified and may not contain headers with the same name.
exception ingenico.connect.sdk.authorization_exception.AuthorizationException(status_code, response_body, error_id, errors, message='the Ingenico ePayments platform returned an authorization error response')[source]

Bases: ingenico.connect.sdk.api_exception.ApiException

Represents an error response from the Ingenico ePayments platform when authorization failed.

class ingenico.connect.sdk.call_context.CallContext(idempotence_key=None)[source]

A call context can be used to send extra information with a request, and to receive extra information from a response.

Please note that this class is not thread-safe. Each request should get its own call context instance.

__init__(idempotence_key=None)[source]

Sets the idempotence key to use for the next request for which this call context is used.

idempotence_key
Returns:The idempotence key.
idempotence_request_timestamp
Returns:The idempotence request timestamp from the response to the last request for which this call context was used, or None if no idempotence request timestamp was present.
class ingenico.connect.sdk.client.Client(communicator, client_meta_info=None)[source]

Bases: ingenico.connect.sdk.api_resource.ApiResource, ingenico.connect.sdk.log.logging_capable.LoggingCapable

Ingenico ePayments platform client.

This client and all its child clients are bound to one specific value for the X-GCS-ClientMetaInfo header. To get a new client with a different header value, use with_client_meta_info.

Thread-safe.

static API_VERSION()[source]
__enter__()[source]
__exit__(exc_type, exc_val, exc_tb)[source]
__init__(communicator, client_meta_info=None)[source]
Parameters:
close()[source]

Releases any system resources associated with this object.

close_expired_connections()[source]

Utility method that delegates the call to this client’s communicator.

close_idle_connections(idle_time)[source]

Utility method that delegates the call to this client’s communicator.

Parameters:idle_time – a datetime.timedelta object indicating the idle time
disable_logging()[source]

Turns off logging.

enable_logging(communicator_logger)[source]

Turns on logging using the given communicator logger.

Raise:ValueError If the given communicator logger is None.
merchant(merchant_id)[source]

Resource /{merchantId}

Parameters:merchant_id – str
Returns:ingenico.connect.sdk.merchant.merchant_client.MerchantClient
with_client_meta_info(client_meta_info)[source]
Parameters:client_meta_info – JSON string containing the meta data for the client
Returns:a new Client which uses the passed meta data for the X-GCS-ClientMetaInfo header.
Raise:MarshallerSyntaxException if the given clientMetaInfo is not a valid JSON string
exception ingenico.connect.sdk.communication_exception.CommunicationException(exception)[source]

Bases: exceptions.RuntimeError

Indicates an exception regarding the communication with the Ingenico ePayments platform such as a connection exception.

class ingenico.connect.sdk.communicator.Communicator(session, marshaller)[source]

Bases: ingenico.connect.sdk.log.logging_capable.LoggingCapable

Used to communicate with the Ingenico ePayments platform web services.

It contains all the logic to transform a request object to a HTTP request and a HTTP response to a response object.

__enter__()[source]
__exit__(exc_type, exc_val, exc_tb)[source]
close()[source]

Releases any system resources associated with this object.

close_expired_connections()[source]

Utility method that delegates the call to this communicator’s session’s connection if that’s an instance of PooledConnection. If not this method does nothing.

close_idle_connections(idle_time)[source]

Utility method that delegates the call to this communicator’s session’s connection if that’s an instance of PooledConnection. If not this method does nothing.

Parameters:idle_time – a datetime.timedelta object indicating the idle time
delete(relative_path, request_headers, request_parameters, response_type, context)[source]

Corresponds to the HTTP DELETE method.

Parameters:
  • relative_path – The path to call, relative to the base URI.
  • request_headers – An optional list of request headers.
  • request_parameters – An optional set of request parameters.
  • response_type – The type of response to return.
  • context – The optional call context to use.
Raise:

CommunicationException when an exception occurred communicating with the Ingenico ePayments platform

Raise:

ResponseException when an error response was received from the Ingenico ePayments platform

Raise:

ApiException when an error response was received from the Ingenico ePayments platform which contained a list of errors

delete_with_binary_response(relative_path, request_headers, request_parameters, context)[source]

Corresponds to the HTTP DELETE method.

Parameters:
  • relative_path – The path to call, relative to the base URI.
  • request_headers – An optional list of request headers.
  • request_parameters – An optional set of request parameters.
  • context – The optional call context to use.
Raise:

CommunicationException when an exception occurred communicating with the Ingenico ePayments platform

Raise:

ResponseException when an error response was received from the Ingenico ePayments platform

Raise:

ApiException when an error response was received from the Ingenico ePayments platform which contained a list of errors

disable_logging()[source]

Turns off logging.

enable_logging(communicator_logger)[source]

Turns on logging using the given communicator logger.

Raise:ValueError If the given communicator logger is None.
get(relative_path, request_headers, request_parameters, response_type, context)[source]

Corresponds to the HTTP GET method.

Parameters:
  • relative_path – The path to call, relative to the base URI.
  • request_headers – An optional list of request headers.
  • request_parameters – An optional set of request parameters.
  • response_type – The type of response to return.
  • context – The optional call context to use.
Raise:

CommunicationException when an exception occurred communicating with the Ingenico ePayments platform

Raise:

ResponseException when an error response was received from the Ingenico ePayments platform

Raise:

ApiException when an error response was received from the Ingenico ePayments platform which contained a list of errors

get_with_binary_response(relative_path, request_headers, request_parameters, context)[source]

Corresponds to the HTTP GET method.

Parameters:
  • relative_path – The path to call, relative to the base URI.
  • request_headers – An optional list of request headers.
  • request_parameters – An optional set of request parameters.
  • context – The optional call context to use.
Raise:

CommunicationException when an exception occurred communicating with the Ingenico ePayments platform

Raise:

ResponseException when an error response was received from the Ingenico ePayments platform

Raise:

ApiException when an error response was received from the Ingenico ePayments platform which contained a list of errors

marshaller
Returns:The Marshaller object associated with this communicator. Never None.
post(relative_path, request_headers, request_parameters, request_body, response_type, context)[source]

Corresponds to the HTTP POST method.

Parameters:
  • relative_path – The path to call, relative to the base URI.
  • request_headers – An optional list of request headers.
  • request_parameters – An optional set of request parameters.
  • request_body – The optional request body to send.
  • response_type – The type of response to return.
  • context – The optional call context to use.
Raise:

CommunicationException when an exception occurred communicating with the Ingenico ePayments platform

Raise:

ResponseException when an error response was received from the Ingenico ePayments platform

Raise:

ApiException when an error response was received from the Ingenico ePayments platform which contained a list of errors

post_with_binary_response(relative_path, request_headers, request_parameters, request_body, context)[source]

Corresponds to the HTTP POST method.

Parameters:
  • relative_path – The path to call, relative to the base URI.
  • request_headers – An optional list of request headers.
  • request_parameters – An optional set of request parameters.
  • request_body – The optional request body to send.
  • context – The optional call context to use.
Raise:

CommunicationException when an exception occurred communicating with the Ingenico ePayments platform

Raise:

ResponseException when an error response was received from the Ingenico ePayments platform

Raise:

ApiException when an error response was received from the Ingenico ePayments platform which contained a list of errors

put(relative_path, request_headers, request_parameters, request_body, response_type, context)[source]

Corresponds to the HTTP PUT method.

Parameters:
  • relative_path – The path to call, relative to the base URI.
  • request_headers – An optional list of request headers.
  • request_parameters – An optional set of request parameters.
  • request_body – The optional request body to send.
  • response_type – The type of response to return.
  • context – The optional call context to use.
Raise:

CommunicationException when an exception occurred communicating with the Ingenico ePayments platform

Raise:

ResponseException when an error response was received from the Ingenico ePayments platform

Raise:

ApiException when an error response was received from the Ingenico ePayments platform which contained a list of errors

put_with_binary_response(relative_path, request_headers, request_parameters, request_body, context)[source]

Corresponds to the HTTP PUT method.

Parameters:
  • relative_path – The path to call, relative to the base URI.
  • request_headers – An optional list of request headers.
  • request_parameters – An optional set of request parameters.
  • request_body – The optional request body to send.
  • context – The optional call context to use.
Raise:

CommunicationException when an exception occurred communicating with the Ingenico ePayments platform

Raise:

ResponseException when an error response was received from the Ingenico ePayments platform

Raise:

ApiException when an error response was received from the Ingenico ePayments platform which contained a list of errors

class ingenico.connect.sdk.communicator_configuration.CommunicatorConfiguration(properties=None, api_endpoint=False, api_key_id=False, secret_api_key=False, authorization_type=False, connect_timeout=False, socket_timeout=False, max_connections=False, proxy_configuration=False, integrator=False, shopping_cart_extension=False)[source]

Bases: ingenico.connect.sdk.endpoint_configuration.EndpointConfiguration

Configuration for the communicator.

Parameters:
  • properties – a ConfigParser.ConfigParser object containing configuration data
  • connect_timeout – connection timeout for the network communication in seconds
  • socket_timeout – socket timeout for the network communication in seconds
  • max_connections – The maximum number of connections in the connection pool
api_endpoint

The Ingenico ePayments platform API endpoint URI.

api_key_id

An identifier for the secret API key. The api_key_id can be retrieved from the Configuration Center. This identifier is visible in the HTTP request and is also used to identify the correct account.

authorization_type
secret_api_key

A shared secret. The shared secret can be retrieved from the Configuration Center. An api_key_id and secret_api_key always go hand-in-hand, the difference is that secret_api_key is never visible in the HTTP request. This secret is used as input for the HMAC algorithm.

class ingenico.connect.sdk.connection.Connection[source]

Bases: ingenico.connect.sdk.log.logging_capable.LoggingCapable

Represents a connection to the Ingenico ePayments platform server.

delete(url, request_headers)[source]

Send a DELETE request to the Ingenico ePayments platform and return the response.

Parameters:
  • url – The URI to call, including any necessary query parameters.
  • request_headers – An optional list of request headers.
Returns:

The response from the Ingenico ePayments platform as a tuple with the status code, headers and a generator of body chunks

Raise:

CommunicationException when an exception occurred communicating with the Ingenico ePayments platform

get(url, request_headers)[source]

Send a GET request to the Ingenico ePayments platform and return the response.

Parameters:
  • url – The URI to call, including any necessary query parameters.
  • request_headers – An optional list of request headers.
Returns:

The response from the Ingenico ePayments platform as a tuple with the status code, headers and a generator of body chunks

Raise:

CommunicationException when an exception occurred communicating with the Ingenico ePayments platform

post(url, request_headers, body)[source]

Send a POST request to the Ingenico ePayments platform and return the response.

Parameters:
  • url – The URI to call, including any necessary query parameters.
  • request_headers – An optional list of request headers.
  • body – The optional body to send.
Returns:

The response from the Ingenico ePayments platform as a tuple with the status code, headers and a generator of body chunks

Raise:

CommunicationException when an exception occurred communicating with the Ingenico ePayments platform

put(url, request_headers, body)[source]

Send a PUT request to the Ingenico ePayments platform and return the response.

Parameters:
  • url – The URI to call, including any necessary query parameters.
  • request_headers – An optional list of request headers.
  • body – The optional body to send.
Returns:

The response from the Ingenico ePayments platform as a tuple with the status code, headers and a generator of body chunks

Raise:

CommunicationException when an exception occurred communicating with the Ingenico ePayments platform

class ingenico.connect.sdk.data_object.DataObject[source]

Bases: object

from_dictionary(dictionary)[source]
to_dictionary()[source]
exception ingenico.connect.sdk.declined_payment_exception.DeclinedPaymentException(status_code, response_body, errors)[source]

Bases: ingenico.connect.sdk.declined_transaction_exception.DeclinedTransactionException

Represents an error response from a create payment call.

create_payment_result
Returns:The result of creating a payment if available, otherwise None.
exception ingenico.connect.sdk.declined_payout_exception.DeclinedPayoutException(status_code, response_body, errors)[source]

Bases: ingenico.connect.sdk.declined_transaction_exception.DeclinedTransactionException

Represents an error response from a payout call.

payout_result
Returns:The result of creating a payout if available, otherwise None.
exception ingenico.connect.sdk.declined_refund_exception.DeclinedRefundException(status_code, response_body, errors)[source]

Bases: ingenico.connect.sdk.declined_transaction_exception.DeclinedTransactionException

Represents an error response from a refund call.

refund_result
Returns:The result of creating a refund if available, otherwise None.
exception ingenico.connect.sdk.declined_transaction_exception.DeclinedTransactionException(status_code, response_body, error_id, errors, message=False)[source]

Bases: ingenico.connect.sdk.api_exception.ApiException

Represents an error response from a create payment, payout or refund call.

class ingenico.connect.sdk.endpoint_configuration.EndpointConfiguration(properties=None, prefix=None)[source]

Bases: object

Base class for endpoint configurations.

DEFAULT_MAX_CONNECTIONS = 10
connect_timeout

Connection timeout for the underlying network communication in seconds

integrator
max_connections
proxy_configuration
shopping_cart_extension
socket_timeout

Socket timeout for the underlying network communication in seconds

exception ingenico.connect.sdk.global_collect_exception.GlobalCollectException(status_code, response_body, error_id, errors, message='the Ingenico ePayments platform returned an error response')[source]

Bases: ingenico.connect.sdk.api_exception.ApiException

Represents an error response from the Ingenico ePayments platform when something went wrong at the Ingenico ePayments platform or further downstream.

exception ingenico.connect.sdk.idempotence_exception.IdempotenceException(idempotence_key, idempotence_request_timestamp, status_code, response_body, error_id, errors, message='the Ingenico ePayments platform returned a duplicate request error response')[source]

Bases: ingenico.connect.sdk.api_exception.ApiException

Represents an error response from the Ingenico ePayments platform when an idempotent request failed because the first request has not finished yet.

idempotence_key
Returns:The key that was used for the idempotent request.
idempotence_request_timestamp
Returns:The request timestamp of the first idempotent request with the same key.
class ingenico.connect.sdk.marshaller.Marshaller[source]

Bases: object

Used to marshal and unmarshal Ingenico ePayments platform request and response objects to and from JSON.

marshal(request_object)[source]

Marshal a request object to a JSON string.

Parameters:request_object – the object to marshal into a serialized JSON string
Returns:the serialized JSON string of the request_object
unmarshal(response_json, type_class)[source]

Unmarshal a JSON string to a response object.

Parameters:
  • response_json – the json body that should be unmarshalled
  • type_class – The class to which the response_json should be unmarshalled
Raise:

MarshallerSyntaxException if the JSON is not a valid representation for an object of the given type

exception ingenico.connect.sdk.marshaller_syntax_exception.MarshallerSyntaxException(cause=False)[source]

Bases: exceptions.RuntimeError

Thrown when a JSON string cannot be converted to a response object.

class ingenico.connect.sdk.meta_data_provider.MetaDataProvider(integrator, shopping_cart_extension=None, additional_request_headers=())[source]

Provides meta info about the server.

meta_data_headers
Returns:The server related headers containing the META data to be associated with the request (if any). This will always contain at least an automatically generated header X-GCS-ServerMetaInfo.
prohibited_headers = ('Authorization', 'Content-Type', 'Date', 'X-GCS-Idempotence-Key', 'X-GCS-ServerMetaInfo')
class ingenico.connect.sdk.multipart_form_data_object.MultipartFormDataObject[source]

A representation of a multipart/form-data object.

add_file(parameter_name, uploadable_file)[source]
add_value(parameter_name, value)[source]
boundary
content_type
files
values
class ingenico.connect.sdk.multipart_form_data_request.MultipartFormDataRequest[source]

A representation of a multipart/form-data request.

to_multipart_form_data_object()[source]
Returns:ingenico.connect.sdk.MultipartFormDataObject
exception ingenico.connect.sdk.not_found_exception.NotFoundException(exception, message=None)[source]

Bases: exceptions.RuntimeError

Indicates an exception that occurs when the requested resource is not found. In normal usage of the SDK, this exception should not occur, however it is possible. For example when path parameters are set with invalid values.

class ingenico.connect.sdk.param_request.ParamRequest[source]

Bases: object

Represents a set of request parameters.

to_request_parameters()[source]
Returns:list[ingenico.connect.sdk.RequestParam] representing the HTTP request parameters
class ingenico.connect.sdk.pooled_connection.PooledConnection[source]

Bases: ingenico.connect.sdk.connection.Connection

Represents a pooled connection to the Ingenico ePayments platform server. Instead of setting up a new HTTP connection for each request, this connection uses a pool of HTTP connections.

close_expired_connections()[source]

Closes all expired HTTP connections.

close_idle_connections(idle_time)[source]

Closes all HTTP connections that have been idle for the specified time. This should also include all expired HTTP connections.

Parameters:idle_time – a datetime.timedelta object indicating the idle time
class ingenico.connect.sdk.proxy_configuration.ProxyConfiguration(host, port, scheme='http', username=None, password=None)[source]

HTTP proxy configuration.

Can be initialised directly from a host and port or can be constructed from a uri using fromuri

__str__()[source]

Return a proxy string in the form scheme://username:password@host:port or scheme://host:port if authentication is absent

Supports HTTP Basic Auth

static from_uri(uri, username=None, password=None)[source]

Constructs a ProxyConfiguration from a URI; if username and/or password are given they will be used instead of corresponding data in the URI

host
password
port
scheme
username
exception ingenico.connect.sdk.reference_exception.ReferenceException(status_code, response_body, error_id, errors, message='the Ingenico ePayments platform returned a reference error response')[source]

Bases: ingenico.connect.sdk.api_exception.ApiException

Represents an error response from the Ingenico ePayments platform when a non-existing or removed object is trying to be accessed.

class ingenico.connect.sdk.request_header.RequestHeader(name, value)[source]

A single request header. Immutable.

name
Returns:The header name.
value
Returns:The un-encoded value.
ingenico.connect.sdk.request_header.get_header(headers, header_name)[source]
Returns:The header with the given name, or None if there was no such header.
ingenico.connect.sdk.request_header.get_header_value(headers, header_name)[source]
Returns:The value of the header with the given name, or None if there was no such header.
class ingenico.connect.sdk.request_param.RequestParam(name, value)[source]

Bases: object

A single request parameter. Immutable.

name
Returns:The parameter name.
value
Returns:The un-encoded value.
exception ingenico.connect.sdk.response_exception.ResponseException(status, body, headers)[source]

Bases: exceptions.RuntimeError

Thrown when a response was received from the Ingenico ePayments platform which indicates an error.

body
Returns:The raw response body that was returned by the Ingenico ePayments platform.
get_header(header_name)[source]
Returns:The header with the given name, or None if there was no such header.
get_header_value(header_name)[source]
Returns:The value header with the given name, or None if there was no such header.
headers
Returns:The headers that were returned by the Ingenico ePayments platform. Never None.
status_code
Returns:The HTTP status code that was returned by the Ingenico ePayments platform.
ingenico.connect.sdk.response_header.get_disposition_filename(headers)[source]
Returns:The value of the filename parameter of the Content-Disposition header, or None if there was no such header or parameter.
ingenico.connect.sdk.response_header.get_header(headers, header_name)[source]
Returns:The header with the given name as a tuple with the name and value, or None if there was no such header.
ingenico.connect.sdk.response_header.get_header_value(headers, header_name)[source]
Returns:The value of the header with the given name, or None if there was no such header.
class ingenico.connect.sdk.session.Session(api_endpoint, connection, authenticator, meta_data_provider)[source]

Bases: object

Contains the components needed to communicate with the Ingenico ePayments platform.

Parameters:api_endpoint – the address of the target server as a string or ParseResult object
api_endpoint
Returns:The Ingenico ePayments platform API endpoint URI. This URI’s path will be None or empty.
authenticator
Returns:The Authenticator object associated with this session. Never None.
connection
Returns:The Connection object associated with this session. Never None.
meta_data_provider
Returns:The MetaDataProvider object associated with this session. Never None.
class ingenico.connect.sdk.uploadable_file.UploadableFile(file_name, content, content_type, content_length=-1)[source]

A file that can be uploaded.

The allowed forms of content are defined by the Connection implementation. The default implementation supports strings, file descriptors and io.BytesIO objects.

content
Returns:The file’s content.
content_length
Returns:The file’s content length, or -1 if not known.
content_type
Returns:The file’s content type.
file_name
Returns:The name of the file.
exception ingenico.connect.sdk.validation_exception.ValidationException(status_code, response_body, error_id, errors, message='the Ingenico ePayments platform returned an incorrect request error response')[source]

Bases: ingenico.connect.sdk.api_exception.ApiException

Represents an error response from the Ingenico ePayments platform when validation of requests failed.

class ingenico.connect.sdk.defaultimpl.authorization_type.AuthorizationType[source]
AUTHORIZATION_TYPES = ['v1HMAC']
V1HMAC = 'v1HMAC'
static get_authorization(name)[source]
class ingenico.connect.sdk.defaultimpl.default_authenticator.DefaultAuthenticator(authorization_type, api_id_key, secret_api_key)[source]

Bases: ingenico.connect.sdk.authenticator.Authenticator

Default Authenticator implementation.

__init__(authorization_type, api_id_key, secret_api_key)[source]
Parameters:
  • authorization_type – Based on this value both the Ingenico ePayments platform and the merchant know which security implementation is used. A version number is used for backward compatibility in the future.
  • api_id_key – An identifier for the secret API key. The api_key_id can be retrieved from the Configuration Center. This identifier is visible in the HTTP request and is also used to identify the correct account.
  • secret_api_key – A shared secret. The shared secret can be retrieved from the Configuration Center. An api_key_id and secret_api_key always go hand-in-hand, the difference is that secret_api_key is never visible in the HTTP request. This secret is used as input for the HMAC algorithm.
create_authentication_signature(data_to_sign)[source]
create_simple_authentication_signature(http_method, resource_uri, http_headers)[source]

Returns a v1HMAC authentication signature header

to_canonicalize_header_value(original_value)[source]
to_data_to_sign(http_method, resource_uri, http_headers)[source]
class ingenico.connect.sdk.defaultimpl.default_marshaller.DefaultMarshaller[source]

Bases: ingenico.connect.sdk.marshaller.Marshaller

Marshaller implementation based on json.

static INSTANCE()[source]
marshal(request_object)[source]

Marshal a request object to a JSON string.

Parameters:request_object – the object to marshal into a serialized JSON string
Returns:the serialized JSON string of the request_object
unmarshal(response_json, type_class)[source]

Unmarshal a JSON string to a response object.

Parameters:
  • response_json – the json body that should be unmarshalled
  • type_class – The class to which the response_json should be unmarshalled
Raise:

MarshallerSyntaxException if the JSON is not a valid representation for an object of the given type

class ingenico.connect.sdk.domain.capture.capture_response.CaptureResponse[source]

Bases: ingenico.connect.sdk.domain.capture.definitions.capture.Capture

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.capture.captures_response.CapturesResponse[source]

Bases: ingenico.connect.sdk.data_object.DataObject

captures
The list of all captures performed on the requested payment.

Type: list[ingenico.connect.sdk.domain.capture.definitions.capture.Capture]

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.capture.definitions.capture.Capture[source]

Bases: ingenico.connect.sdk.domain.definitions.abstract_order_status.AbstractOrderStatus

capture_output
Object containing capture details

Type: ingenico.connect.sdk.domain.capture.definitions.capture_output.CaptureOutput

from_dictionary(dictionary)[source]
status
Current high-level status of the payment in a human-readable form. Possible values are :
  • CAPTURE_REQUESTED - The transaction is in the queue to be captured.
  • CAPTURED - The transaction has been captured and we have received online confirmation.
  • CANCELLED - You have cancelled the transaction.
  • REJECTED_CAPTURE - We or one of our downstream acquirers/providers have rejected the capture request.
  • REVERSED - The transaction has been reversed.
Please see Statuses <https://epayments-api.developer-ingenico.com/s2sapi/v1/en_US/python/statuses.html> for a full overview of possible values.

Type: str

status_output
This object has the numeric representation of the current capture status, timestamp of last status change and performable action on the current payment resource.
In case of failed payments and negative scenarios, detailed error information is listed.

Type: ingenico.connect.sdk.domain.capture.definitions.capture_status_output.CaptureStatusOutput

to_dictionary()[source]
class ingenico.connect.sdk.domain.capture.definitions.capture_output.CaptureOutput[source]

Bases: ingenico.connect.sdk.domain.payment.definitions.order_output.OrderOutput

amount_paid
Amount that has been paid

Type: long

amount_reversed
Amount that has been reversed

Type: long

bank_transfer_payment_method_specific_output
Object containing the bank transfer payment method details

Type: ingenico.connect.sdk.domain.payment.definitions.bank_transfer_payment_method_specific_output.BankTransferPaymentMethodSpecificOutput

card_payment_method_specific_output
Object containing the card payment method details

Type: ingenico.connect.sdk.domain.payment.definitions.card_payment_method_specific_output.CardPaymentMethodSpecificOutput

cash_payment_method_specific_output
Object containing the cash payment method details

Type: ingenico.connect.sdk.domain.payment.definitions.cash_payment_method_specific_output.CashPaymentMethodSpecificOutput

direct_debit_payment_method_specific_output
Object containing the non SEPA direct debit payment method details

Type: ingenico.connect.sdk.domain.payment.definitions.non_sepa_direct_debit_payment_method_specific_output.NonSepaDirectDebitPaymentMethodSpecificOutput

e_invoice_payment_method_specific_output
Object containing the e-invoice payment method details

Type: ingenico.connect.sdk.domain.payment.definitions.e_invoice_payment_method_specific_output.EInvoicePaymentMethodSpecificOutput

from_dictionary(dictionary)[source]
invoice_payment_method_specific_output
Object containing the invoice payment method details

Type: ingenico.connect.sdk.domain.payment.definitions.invoice_payment_method_specific_output.InvoicePaymentMethodSpecificOutput

mobile_payment_method_specific_output
Object containing the mobile payment method details

Type: ingenico.connect.sdk.domain.payment.definitions.mobile_payment_method_specific_output.MobilePaymentMethodSpecificOutput

payment_method
Payment method identifier used by the our payment engine with the following possible values:
  • bankRefund
  • bankTransfer
  • card
  • cash
  • directDebit
  • eInvoice
  • invoice
  • redirect

Type: str

redirect_payment_method_specific_output
Object containing the redirect payment product details

Type: ingenico.connect.sdk.domain.payment.definitions.redirect_payment_method_specific_output.RedirectPaymentMethodSpecificOutput

sepa_direct_debit_payment_method_specific_output
Object containing the SEPA direct debit details

Type: ingenico.connect.sdk.domain.payment.definitions.sepa_direct_debit_payment_method_specific_output.SepaDirectDebitPaymentMethodSpecificOutput

to_dictionary()[source]
class ingenico.connect.sdk.domain.capture.definitions.capture_status_output.CaptureStatusOutput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
status_code
Numeric status code of the legacy API. It is returned to ease the migration from the legacy APIs to Ingenico Connect. You should not write new business logic based on this property as it will be deprecated in a future version of the API. The value can also be found in the GlobalCollect Payment Console, in the Ogone BackOffice and in report files.

Type: int

to_dictionary()[source]
class ingenico.connect.sdk.domain.definitions.abstract_order_status.AbstractOrderStatus[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
id
Every payment entity resource has an identifier or pointer associated with it. This id can be used to uniquely reach the resource.

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.definitions.abstract_payment_method_specific_input.AbstractPaymentMethodSpecificInput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
payment_product_id
Payment product identifier
Please see payment products <https://epayments-api.developer-ingenico.com/s2sapi/v1/en_US/python/paymentproducts.html> for a full overview of possible values.

Type: int

to_dictionary()[source]
class ingenico.connect.sdk.domain.definitions.additional_order_input_airline_data.AdditionalOrderInputAirlineData[source]

Bases: ingenico.connect.sdk.data_object.DataObject

airline_data
Object that holds airline specific data

Type: ingenico.connect.sdk.domain.definitions.airline_data.AirlineData

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.definitions.address.Address[source]

Bases: ingenico.connect.sdk.data_object.DataObject

additional_info
Additional address information

Type: str

city
City
Note: For payments with product 1503 the maximum length is not 40 but 20.

Type: str

country_code
ISO 3166-1 alpha-2 country code

Type: str

from_dictionary(dictionary)[source]
house_number
House number

Type: str

state
Full name of the state or province

Type: str

state_code
ISO 3166-2 alpha-3 state code
Notes:
  • The maximum length for 3-D Secure version 2 is AN3.
  • The maximum length for paymentProductId 1503 (Boleto) is AN2.

Type: str

street
Streetname

Type: str

to_dictionary()[source]
zip
Zip code
Note: For payments with product 1503 the maximum length is not 10 but 8.

Type: str

class ingenico.connect.sdk.domain.definitions.airline_data.AirlineData[source]

Bases: ingenico.connect.sdk.data_object.DataObject

agent_numeric_code
Numeric code identifying the agent

Type: str

code
Airline numeric code

Type: str

flight_date
Date of the Flight
Format: YYYYMMDD

Type: str

flight_legs
Object that holds the data on the individual legs of the ticket

Type: list[ingenico.connect.sdk.domain.definitions.airline_flight_leg.AirlineFlightLeg]

from_dictionary(dictionary)[source]
invoice_number
Airline tracing number

Type: str

is_e_ticket
  • true = The ticket is an E-Ticket
  • false = the ticket is not an E-Ticket

Type: bool

is_registered_customer
  • true = a registered known customer
  • false = unknown customer

Type: bool

Deprecated; Use Order.customer.accountType instead

is_restricted_ticket
  • true - Restricted, the ticket is non-refundable
  • false - No restrictions, the ticket is (partially) refundable

Type: bool

is_third_party
  • true - The payer is the ticket holder
  • false - The payer is not the ticket holder

Type: bool

issue_date
This is the date of issue recorded in the airline systemIn a case of multiple issuances of the same ticket to a cardholder, you should use the last ticket date.
Format: YYYYMMDD

Type: str

merchant_customer_id
Your ID of the customer in the context of the airline data

Type: str

name
Name of the airline

Type: str

passenger_name
Name of passenger

Type: str

passengers
Object that holds the data on the individual passengers (this object is used for fraud screening on the Ogone Payment Platform)

Type: list[ingenico.connect.sdk.domain.definitions.airline_passenger.AirlinePassenger]

place_of_issue
Place of issue
For sales in the US the last two characters (pos 14-15) must be the US state code.

Type: str

pnr
Passenger name record

Type: str

point_of_sale
IATA point of sale name

Type: str

pos_city_code
city code of the point of sale

Type: str

ticket_delivery_method
Possible values:
  • e-ticket
  • city-ticket-office
  • airport-ticket-office
  • ticket-by-mail
  • ticket-on-departure

Type: str

ticket_number
The ticket or document number contains:
  • Airline code: 3-digit airline code number
  • Form code: A maximum of 3 digits indicating the type of document, the source of issue and the number of coupons it contains
  • Serial number: A maximum of 8 digits allocated on a sequential basis, provided that the total number of digits allocated to the form code and serial number shall not exceed ten
  • TICKETNUMBER can be replaced with PNR if the ticket number is unavailable

Type: str

to_dictionary()[source]
total_fare
Total fare for all legs on the ticket, excluding taxes and fees. If multiple tickets are purchased, this is the total fare for all tickets

Type: int

total_fee
Total fee for all legs on the ticket. If multiple tickets are purchased, this is the total fee for all tickets

Type: int

total_taxes
Total taxes for all legs on the ticket. If multiple tickets are purchased, this is the total taxes for all tickets

Type: int

travel_agency_name
Name of the travel agency issuing the ticket. For direct airline integration, leave this property blank

Type: str

class ingenico.connect.sdk.domain.definitions.airline_flight_leg.AirlineFlightLeg[source]

Bases: ingenico.connect.sdk.data_object.DataObject

airline_class
Reservation Booking Designator

Type: str

arrival_airport
Arrival airport/city code

Type: str

arrival_time
The arrival time in the local time zone
Format: HH:MM

Type: str

carrier_code
IATA carrier code

Type: str

conjunction_ticket
Identifying number of a ticket issued to a passenger in conjunction with this ticket and that constitutes a single contract of carriage

Type: str

coupon_number
The coupon number associated with this leg of the trip. A ticket can contain several legs of travel, and each leg of travel requires a separate coupon

Type: str

date
Date of the leg
Format: YYYYMMDD

Type: str

departure_time
The departure time in the local time at the departure airport
Format: HH:MM

Type: str

endorsement_or_restriction
An endorsement can be an agency-added notation or a mandatory government required notation, such as value-added tax. A restriction is a limitation based on the type of fare, such as a ticket with a 3-day minimum stay

Type: str

exchange_ticket
New ticket number that is issued when a ticket is exchanged

Type: str

fare
Fare of this leg

Type: str

fare_basis
Fare Basis/Ticket Designator

Type: str

fee
Fee for this leg of the trip

Type: int

flight_number
The flight number assigned by the airline carrier with no leading spaces
Should be a numeric string

Type: str

from_dictionary(dictionary)[source]
number
Sequence number of the flight leg

Type: int

origin_airport
Origin airport/city code

Type: str

passenger_class
PassengerClass if this leg

Type: str

service_class
ServiceClass of this leg (this property is used for fraud screening on the Ogone Payment Platform).
Possible values are:
  • economy
  • premium-economy
  • business
  • first

Type: str

Deprecated; Use passengerClass instead

stopover_code
Possible values are:
  • permitted = Stopover permitted
  • non-permitted = Stopover not permitted

Type: str

taxes
Taxes for this leg of the trip

Type: int

to_dictionary()[source]
class ingenico.connect.sdk.domain.definitions.airline_passenger.AirlinePassenger[source]

Bases: ingenico.connect.sdk.data_object.DataObject

first_name
First name of the passenger (this property is used for fraud screening on the Ogone Payment Platform)

Type: str

from_dictionary(dictionary)[source]
surname
Surname of the passenger (this property is used for fraud screening on the Ogone Payment Platform)

Type: str

surname_prefix
Surname prefix of the passenger (this property is used for fraud screening on the Ogone Payment Platform)

Type: str

title
Title of the passenger (this property is used for fraud screening on the Ogone Payment Platform)

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.definitions.amount_of_money.AmountOfMoney[source]

Bases: ingenico.connect.sdk.data_object.DataObject

amount
Amount in cents and always having 2 decimals

Type: long

currency_code
Three-letter ISO currency code representing the currency for the amount

Type: str

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.definitions.bank_account.BankAccount[source]

Bases: ingenico.connect.sdk.data_object.DataObject

account_holder_name
Name in which the account is held.

Type: str

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.definitions.bank_account_bban.BankAccountBban[source]

Bases: ingenico.connect.sdk.domain.definitions.bank_account.BankAccount

account_number
Bank account number

Type: str

bank_code
Bank code

Type: str

bank_name
Name of the bank

Type: str

branch_code
Branch code

Type: str

check_digit
Bank check digit

Type: str

country_code
ISO 3166-1 alpha-2 country code of the country where the bank account is held
For UK payouts this value is automatically set to GB as only payouts to UK accounts are supported.

Type: str

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.definitions.bank_account_iban.BankAccountIban[source]

Bases: ingenico.connect.sdk.domain.definitions.bank_account.BankAccount

from_dictionary(dictionary)[source]
iban
The IBAN is the International Bank Account Number. It is an internationally agreed format for the BBAN and includes the ISO country code and two check digits.

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.definitions.card.Card[source]

Bases: ingenico.connect.sdk.domain.definitions.card_without_cvv.CardWithoutCvv

cvv
Card Verification Value, a 3 or 4 digit code used as an additional security feature for card not present transactions.

Type: str

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.definitions.card_essentials.CardEssentials[source]

Bases: ingenico.connect.sdk.data_object.DataObject

card_number
The complete credit/debit card number

Type: str

expiry_date
Expiry date of the card
Format: MMYY

Type: str

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.definitions.card_fraud_results.CardFraudResults[source]

Bases: ingenico.connect.sdk.domain.definitions.fraud_results.FraudResults

Details of the card payment fraud checks that were performed
avs_result
Result of the Address Verification Service checks. Possible values are:
  • A - Address (Street) matches, Zip does not
  • B - Street address match for international transactions—Postal code not verified due to incompatible formats
  • C - Street address and postal code not verified for international transaction due to incompatible formats
  • D - Street address and postal code match for international transaction, cardholder name is incorrect
  • E - AVS error
  • F - Address does match and five digit ZIP code does match (UK only)
  • G - Address information is unavailable; international transaction; non-AVS participant
  • H - Billing address and postal code match, cardholder name is incorrect (Amex)
  • I - Address information not verified for international transaction
  • K - Cardholder name matches (Amex)
  • L - Cardholder name and postal code match (Amex)
  • M - Cardholder name, street address, and postal code match for international transaction
  • N - No Match on Address (Street) or Zip
  • O - Cardholder name and address match (Amex)
  • P - Postal codes match for international transaction—Street address not verified due to incompatible formats
  • Q - Billing address matches, cardholder is incorrect (Amex)
  • R - Retry, System unavailable or Timed out
  • S - Service not supported by issuer
  • U - Address information is unavailable
  • W - 9 digit Zip matches, Address (Street) does not
  • X - Exact AVS Match
  • Y - Address (Street) and 5 digit Zip match
  • Z - 5 digit Zip matches, Address (Street) does not
  • 0 - No service available

Type: str

cvv_result
Result of the Card Verification Value checks. Possible values are:
  • M - CVV check performed and valid value
  • N - CVV checked and no match
  • P - CVV check not performed, not requested
  • S - Cardholder claims no CVV code on card, issuer states CVV-code should be on card
  • U - Issuer not certified for CVV2
  • Y - Server provider did not respond
  • 0 - No service available

Type: str

fraugster
Results of Fraugster fraud prevention check. Fraugster collects transaction data points such as name, email address, billing, etc. to analyze whether or not the transaction is fraudulent.

Type: ingenico.connect.sdk.domain.definitions.fraugster_results.FraugsterResults

from_dictionary(dictionary)[source]
retail_decisions
Additional response data returned by RetailDecisions

Type: ingenico.connect.sdk.domain.definitions.fraud_results_retail_decisions.FraudResultsRetailDecisions

to_dictionary()[source]
class ingenico.connect.sdk.domain.definitions.card_without_cvv.CardWithoutCvv[source]

Bases: ingenico.connect.sdk.domain.definitions.card_essentials.CardEssentials

cardholder_name
Card holder’s name on the card

Type: str

from_dictionary(dictionary)[source]
issue_number
Issue number on the card (if applicable)

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.definitions.company_information.CompanyInformation[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
name
Name of company, as a customer

Type: str

to_dictionary()[source]
vat_number
Local VAT number of the company

Type: str

class ingenico.connect.sdk.domain.definitions.contact_details_base.ContactDetailsBase[source]

Bases: ingenico.connect.sdk.data_object.DataObject

email_address
Email address of the customer

Type: str

email_message_type
Preference for the type of email message markup
  • plain-text
  • html

Type: str

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.definitions.customer_base.CustomerBase[source]

Bases: ingenico.connect.sdk.data_object.DataObject

Basic information of a customer
company_information
Object containing company information

Type: ingenico.connect.sdk.domain.definitions.company_information.CompanyInformation

from_dictionary(dictionary)[source]
merchant_customer_id
Your identifier for the customer. It can be used as a search criteria in the GlobalCollect Payment Console and is also included in the GlobalCollect report files. It is used in the fraud-screening process for payments on the Ogone Payment Platform.

Type: str

to_dictionary()[source]
vat_number
Local VAT number of the company

Type: str

Deprecated; Use companyInformation.vatNumber instead

class ingenico.connect.sdk.domain.definitions.fraud_fields.FraudFields[source]

Bases: ingenico.connect.sdk.data_object.DataObject

addresses_are_identical
Indicates that invoice and shipping addresses are equal.

Type: bool

Deprecated; For risk assessments there is no replacement. For other calls, use Order.shipping.addressIndicator instead

black_list_data
Additional black list input

Type: str

card_owner_address
The address that belongs to the owner of the card

Type: ingenico.connect.sdk.domain.definitions.address.Address

Deprecated; This should be the same as Order.customer.billingAddress

customer_ip_address
The IP Address of the customer that is making the payment

Type: str

default_form_fill
Degree of default form fill, with the following possible values:
  • automatically - All fields filled automatically
  • automatically-but-modified - All fields filled automatically, but some fields were modified manually
  • manually - All fields were entered manually

Type: str

Deprecated; Use Order.customer.device.defaultFormFill instead

device_fingerprint_activated
Indicates that the device fingerprint has been used while processing the order.

Type: bool

Deprecated; No replacement

device_fingerprint_transaction_id
One must set the deviceFingerprintTransactionId received by the response of the endpoint /{merchant}/products/{paymentProductId}/deviceFingerprint

Type: str

Deprecated; Use Order.customer.device.deviceFingerprintTransactionId instead

from_dictionary(dictionary)[source]
gift_card_type
One of the following gift card types:
  • celebrate-fall - Celebrate Fall
  • grandparents-day - Grandparent’s Day
  • independence-day - Independence Day
  • anniversary - Anniversary
  • birthday - Birthday
  • congratulations - Congratulations
  • april-fools-day - April Fool’s Day
  • easter - Easter
  • fathers-day - Father’s Day
  • graduation - Graduation
  • holiday - Holiday
  • seasons-greetings - Season’s Greetings
  • passover - Passover
  • kwanzaa - Kwanzaa
  • halloween - Halloween
  • mothers-day - Mother’s Day
  • new-years-day - New Year’s Day
  • bosses-day - Bosses’ Day
  • st-patricks-day - St. Patrick’s Day
  • sweetest-day - Sweetest Day
  • christmas - Christmas
  • baby-shower - Baby Shower
  • thanksgiving - Thanksgiving
  • other - Other
  • valentines-day - Valentine’s Day
  • wedding - Wedding
  • secretarys-day - Secretary’s Day
  • chinese-new-year - Chinese New Year
  • hanukkah - Hanukkah

Type: str

gift_message
Gift message

Type: str

has_forgotten_pwd
Specifies if the customer (initially) had forgotten their password
  • true - The customer has forgotten their password
  • false - The customer has not forgotten their password

Type: bool

Deprecated; Use Order.customer.account.hasForgottenPassword instead

has_password
Specifies if the customer entered a password to gain access to an account registered with the you
  • true - The customer has used a password to gain access
  • false - The customer has not used a password to gain access

Type: bool

Deprecated; Use Order.customer.account.hasPassword instead

is_previous_customer
Specifies if the customer has a history of online shopping with the merchant
  • true - The customer is a known returning customer
  • false - The customer is new/unknown customer

Type: bool

Deprecated; Use Order.customer.isPreviousCustomer instead

order_timezone
Timezone in which the order was placed

Type: str

ship_comments
Comments included during shipping

Type: str

Deprecated; Use Order.shipping.comments instead

shipment_tracking_number
Shipment tracking number

Type: str

Deprecated; Use Order.shipping.trackingNumber instead

shipping_details
Details on how the order is shipped to the customer

Type: ingenico.connect.sdk.domain.definitions.fraud_fields_shipping_details.FraudFieldsShippingDetails

Deprecated; No replacement

to_dictionary()[source]
user_data
Array of up to 16 userData properties, each with a max length of 256 characters, that can be used for fraudscreening

Type: list[str]

website
The website from which the purchase was made

Type: str

Deprecated; Use Merchant.websiteUrl instead

class ingenico.connect.sdk.domain.definitions.fraud_fields_shipping_details.FraudFieldsShippingDetails[source]

Bases: ingenico.connect.sdk.data_object.DataObject

Deprecated; No replacement

from_dictionary(dictionary)[source]
method_details
Details regarding the shipping method

Type: str

Deprecated; No replacement

method_speed
Shipping method speed indicator

Type: int

Deprecated; No replacement

method_type
Shipping method type indicator

Type: int

Deprecated; No replacement

to_dictionary()[source]
class ingenico.connect.sdk.domain.definitions.fraud_results.FraudResults[source]

Bases: ingenico.connect.sdk.data_object.DataObject

fraud_service_result
Results from the fraud prevention check. Possible values are:
  • accepted - Based on the checks performed the transaction can be accepted
  • challenged - Based on the checks performed the transaction should be manually reviewed
  • denied - Based on the checks performed the transaction should be rejected
  • no-advice - No fraud check was requested/performed
  • error - The fraud check resulted in an error and the fraud check was thus not performed

Type: str

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.definitions.fraud_results_retail_decisions.FraudResultsRetailDecisions[source]

Bases: ingenico.connect.sdk.data_object.DataObject

fraud_code
Result of the fraud service.
Provides additional information about the fraud result

Type: str

fraud_neural
Returns the raw score of the neural

Type: str

fraud_rcf
Result of the fraud service
Represent sets of fraud rules returned during the evaluation of the transaction

Type: str

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.definitions.fraugster_results.FraugsterResults[source]

Bases: ingenico.connect.sdk.data_object.DataObject

fraud_investigation_points
Result of the Fraugster check
Contains the investigation points used during the evaluation

Type: str

fraud_score
Result of the Fraugster check
Contains the overall Fraud score which is an integer between 0 and 99

Type: int

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.definitions.key_value_pair.KeyValuePair[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
key
Name of the key or property

Type: str

to_dictionary()[source]
value
Value of the key or property

Type: str

class ingenico.connect.sdk.domain.definitions.order_status_output.OrderStatusOutput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

errors
Custom object contains the set of errors

Type: list[ingenico.connect.sdk.domain.errors.definitions.api_error.APIError]

from_dictionary(dictionary)[source]
is_cancellable
Flag indicating if the payment can be cancelled
  • true
  • false

Type: bool

status_category
Highlevel status of the payment, payout or refund with the following possible values:
  • CREATED - The transaction has been created. This is the initial state once a new payment, payout or refund is created. This category groups the following statuses:
  • CREATED
  • PENDING_PAYMENT: The payment is waiting on customer action. This category groups the following statuses:
  • PENDING_PAYMENT
  • REDIRECTED
  • ACCOUNT_VERIFIED: The account has been verified. This category groups the following statuses:
  • ACCOUNT_VERIFIED
  • PENDING_MERCHANT: The transaction is awaiting approval to proceed with the payment, payout or refund. This category groups the following statuses:
  • PENDING_APPROVAL
  • PENDING_COMPLETION
  • PENDING_CAPTURE
  • PENDING_FRAUD_APPROVAL
  • PENDING_CONNECT_OR_3RD_PARTY: The transaction is in the queue to be processed. This category groups the following statuses:
  • AUTHORIZATION_REQUESTED
  • CAPTURE_REQUESTED
  • PAYOUT_REQUESTED
  • REFUND_REQUESTED
  • COMPLETED: The transaction has completed. This category groups the following statuses:
  • CAPTURED
  • PAID
  • ACCOUNT_CREDITED
  • CHARGEBACK_NOTIFICATION
  • REVERSED: The transaction has been reversed. This category groups the following statuses:
  • CHARGEBACKED
  • REVERSED
  • REFUNDED: The transaction has been refunded. This category groups the following statuses:
  • REFUNDED
  • UNSUCCESSFUL: The transaction has been rejected or is in such a state that it will never become successful. This category groups the following statuses:
  • CANCELLED
  • REJECTED
  • REJECTED_CAPTURE
  • REJECTED_CREDIT
Please see Statuses <https://epayments-api.developer-ingenico.com/s2sapi/v1/en_US/python/statuses.html> for a full overview of possible values.

Type: str

status_code
Numeric status code of the legacy API. It is returned to ease the migration from the legacy APIs to Ingenico Connect. You should not write new business logic based on this property as it will be deprecated in a future version of the API. The value can also be found in the GlobalCollect Payment Console, in the Ogone BackOffice and in report files.

Type: int

status_code_change_date_time
Date and time of payment
Format: YYYYMMDDHH24MISS

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.definitions.payment_product_filter.PaymentProductFilter[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
groups
List containing all payment product groups that should either be restricted to in or excluded from the payment context. Currently, there is only one group, called ‘cards’.

Type: list[str]

products
List containing all payment product ids that should either be restricted to in or excluded from the payment context.

Type: list[int]

to_dictionary()[source]
class ingenico.connect.sdk.domain.definitions.personal_name_base.PersonalNameBase[source]

Bases: ingenico.connect.sdk.data_object.DataObject

first_name
Given name(s) or first name(s) of the customer

Type: str

from_dictionary(dictionary)[source]
surname

Type: str

surname_prefix
Middle name - In between first name and surname - of the customer

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.definitions.redirect_data_base.RedirectDataBase[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
redirect_url

Type: str

returnmac

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.definitions.result_do_risk_assessment.ResultDoRiskAssessment[source]

Bases: ingenico.connect.sdk.data_object.DataObject

category
The Risk Services category with the following possible values:
  • retaildecisionsCCFraudCheck - checks performed by Retail Decisions
  • globalcollectBlacklistCheckCC - Checked against the blacklist on the GlobalCollect platform
  • authorizationCheck - 0$ auth card account validation check
  • ddFraudCheck - Check performed for German market via InterCard
  • validationbankAccount - Bank account details are algorithmically checked if they could exist
  • globalcollectBlacklistCheckDD - Checked against the blacklist on the GlobalCollect platform

Type: str

from_dictionary(dictionary)[source]
result
Risk service result with the following possible results:
  • accepted - Based on the checks performed the transaction can be accepted
  • challenged - Based on the checks performed the transaction should be manually reviewed
  • denied - Based on the checks performed the transaction should be rejected
  • no-advice - No fraud check was requested/performed
  • error - The fraud check resulted in an error and the fraud check was thus not performed

Type: str

retaildecisions_cc_fraud_check_output
Object containing the results of the fraud checks performed by Retail Decisions

Type: ingenico.connect.sdk.domain.definitions.retail_decisions_cc_fraud_check_output.RetailDecisionsCCFraudCheckOutput

to_dictionary()[source]
validation_bank_account_output
Object containing the results of the fraud checks performed on the bank account data

Type: ingenico.connect.sdk.domain.definitions.validation_bank_account_output.ValidationBankAccountOutput

class ingenico.connect.sdk.domain.definitions.retail_decisions_cc_fraud_check_output.RetailDecisionsCCFraudCheckOutput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

fraud_code
Provides additional information about the fraud result

Type: str

fraud_neural
The raw score returned by the Neural check returned by the evaluation of the transaction

Type: str

fraud_rcf
List of RuleCategoryFlags as setup in the Retail Decisions system that lead to the result

Type: str

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.definitions.validation_bank_account_check.ValidationBankAccountCheck[source]

Bases: ingenico.connect.sdk.data_object.DataObject

code
Code of the bank account validation check

Type: str

description
Description of check performed

Type: str

from_dictionary(dictionary)[source]
result
Result of the bank account validation check performed, with the following possible results:
  • PASSED - The check passed
  • ERROR - The check did not pass
  • WARNING - Depending on your needs this either needs to be treated as a passed or error response. It depends on your business logic and for what purpose you want to use the validated bank account details.
  • NOTCHECKED - This check was not performed, usually because one of the earlier checks already caused an error response to be triggered

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.definitions.validation_bank_account_output.ValidationBankAccountOutput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

checks
Array of checks performed with the results of each check

Type: list[ingenico.connect.sdk.domain.definitions.validation_bank_account_check.ValidationBankAccountCheck]

from_dictionary(dictionary)[source]
new_bank_name
Bank name, matching the bank code of the request

Type: str

reformatted_account_number
Reformatted account number according to local clearing rules

Type: str

reformatted_bank_code
Reformatted bank code according to local clearing rules

Type: str

reformatted_branch_code
Reformatted branch code according to local clearing rules

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.dispute.create_dispute_request.CreateDisputeRequest[source]

Bases: ingenico.connect.sdk.data_object.DataObject

amount_of_money
The amount of money that is to be disputed.

Type: ingenico.connect.sdk.domain.definitions.amount_of_money.AmountOfMoney

contact_person
The name of the person on your side who can be contacted regarding this dispute.

Type: str

email_address
The email address of the contact person.

Type: str

from_dictionary(dictionary)[source]
reply_to
The email address to which the reply message will be sent.

Type: str

request_message
The message sent from you to Ingenico ePayments.

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.dispute.dispute_response.DisputeResponse[source]

Bases: ingenico.connect.sdk.domain.dispute.definitions.dispute.Dispute

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.dispute.disputes_response.DisputesResponse[source]

Bases: ingenico.connect.sdk.data_object.DataObject

disputes
Array containing disputes and their characteristics.

Type: list[ingenico.connect.sdk.domain.dispute.definitions.dispute.Dispute]

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.dispute.upload_dispute_file_response.UploadDisputeFileResponse[source]

Bases: ingenico.connect.sdk.data_object.DataObject

Response of a file upload request
dispute_id
Dispute ID that is associated with the created dispute.

Type: str

file_id
The file ID that is associated with the uploaded file. This ID can be used for further communication regarding the file and retrieval of aforementioned property.

Type: str

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.dispute.definitions.dispute.Dispute[source]

Bases: ingenico.connect.sdk.data_object.DataObject

dispute_output
This property contains the creationDetails and default information regarding a dispute.

Type: ingenico.connect.sdk.domain.dispute.definitions.dispute_output.DisputeOutput

from_dictionary(dictionary)[source]
id
Dispute ID for a given merchant.

Type: str

payment_id
The ID of the payment that is being disputed.

Type: str

status
Current dispute status.

Type: str

status_output
This property contains the output for a dispute regarding the status of the dispute.

Type: ingenico.connect.sdk.domain.dispute.definitions.dispute_status_output.DisputeStatusOutput

to_dictionary()[source]
class ingenico.connect.sdk.domain.dispute.definitions.dispute_creation_detail.DisputeCreationDetail[source]

Bases: ingenico.connect.sdk.data_object.DataObject

dispute_creation_date
The date and time of creation of this dispute, in yyyyMMddHHmmss format.

Type: str

dispute_originator
The originator of this dispute, which is either Ingenico ePayments or you as our client.

Type: str

from_dictionary(dictionary)[source]
to_dictionary()[source]
user_name
The user account name of the dispute creator.

Type: str

class ingenico.connect.sdk.domain.dispute.definitions.dispute_output.DisputeOutput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

amount_of_money
Object containing amount and ISO currency code attributes

Type: ingenico.connect.sdk.domain.definitions.amount_of_money.AmountOfMoney

contact_person
The name of the person on your side who can be contacted regarding this dispute.

Type: str

creation_details
Object containing various details related to this dispute’s creation.

Type: ingenico.connect.sdk.domain.dispute.definitions.dispute_creation_detail.DisputeCreationDetail

email_address
The email address of the contact person.

Type: str

files
An array containing all files related to this dispute.

Type: list[ingenico.connect.sdk.domain.file.definitions.hosted_file.HostedFile]

from_dictionary(dictionary)[source]
reference
A collection of reference information related to this dispute.

Type: ingenico.connect.sdk.domain.dispute.definitions.dispute_reference.DisputeReference

reply_to
The email address to which the reply message will be sent.

Type: str

request_message
The message sent from you to Ingenico ePayments.

Type: str

response_message
The return message sent from the GlobalCollect platform to you.

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.dispute.definitions.dispute_reference.DisputeReference[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
merchant_order_id
The merchant’s order ID of the transaction to which this dispute is linked.

Type: str

merchant_reference
Your (unique) reference for the transaction that you can use to reconcile our report files.

Type: str

payment_reference
Payment Reference generated by WebCollect.

Type: str

provider_id
The numerical identifier of the Service Provider (Acquirer).

Type: str

provider_reference
The Service Provider’s reference.

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.dispute.definitions.dispute_status_output.DisputeStatusOutput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
is_cancellable
Flag indicating if the payment can be cancelled
  • true
  • false

Type: bool

status_category
Highlevel status of the payment, payout or refund with the following possible values:
  • CREATED - The transaction has been created. This is the initial state once a new payment, payout or refund is created. This category groups the following statuses:
  • CREATED
  • PENDING_PAYMENT: The payment is waiting on customer action. This category groups the following statuses:
  • PENDING_PAYMENT
  • REDIRECTED
  • ACCOUNT_VERIFIED: The account has been verified. This category groups the following statuses:
  • ACCOUNT_VERIFIED
  • PENDING_MERCHANT: The transaction is awaiting approval to proceed with the payment, payout or refund. This category groups the following statuses:
  • PENDING_APPROVAL
  • PENDING_COMPLETION
  • PENDING_CAPTURE
  • PENDING_FRAUD_APPROVAL
  • PENDING_CONNECT_OR_3RD_PARTY: The transaction is in the queue to be processed. This category groups the following statuses:
  • AUTHORIZATION_REQUESTED
  • CAPTURE_REQUESTED
  • PAYOUT_REQUESTED
  • REFUND_REQUESTED
  • COMPLETED: The transaction has completed. This category groups the following statuses:
  • CAPTURED
  • PAID
  • ACCOUNT_CREDITED
  • CHARGEBACK_NOTIFICATION
  • REVERSED: The transaction has been reversed. This category groups the following statuses:
  • CHARGEBACKED
  • REVERSED
  • REFUNDED: The transaction has been refunded. This category groups the following statuses:
  • REFUNDED
  • UNSUCCESSFUL: The transaction has been rejected or is in such a state that it will never become successful. This category groups the following statuses:
  • CANCELLED
  • REJECTED
  • REJECTED_CAPTURE
  • REJECTED_CREDIT
Please see Statuses <https://epayments-api.developer-ingenico.com/s2sapi/v1/en_US/python/statuses.html> for a full overview of possible values.

Type: str

status_code
Numeric status code of the legacy API. It is returned to ease the migration from the legacy APIs to Ingenico Connect. You should not write new business logic based on this property as it will be deprecated in a future version of the API. The value can also be found in the GlobalCollect Payment Console, in the Ogone BackOffice and in report files.

Type: int

status_code_change_date_time
Date and time of payment
Format: YYYYMMDDHH24MISS

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.errors.error_response.ErrorResponse[source]

Bases: ingenico.connect.sdk.data_object.DataObject

error_id
Unique reference, for debugging purposes, of this error response

Type: str

errors
List of one or more errors

Type: list[ingenico.connect.sdk.domain.errors.definitions.api_error.APIError]

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.errors.definitions.api_error.APIError[source]

Bases: ingenico.connect.sdk.data_object.DataObject

category
Category the error belongs to. The category should give an indication of the type of error you are dealing with.Possible values:
  • CONNECT_PLATFORM_ERROR - indicating that a functional error has occurred in the Connect platform.
  • PAYMENT_PLATFORM_ERROR - indicating that a functional error has occurred in the Payment platform.
  • IO_ERROR - indicating that a technical error has occurred within the Connect platform or between Connect and any of the payment platforms or third party systems.

Type: str

code
Error code

Type: str

from_dictionary(dictionary)[source]
http_status_code
HTTP status code for this error that can be used to determine the type of error

Type: int

id
ID of the error. This is a short human-readable message that briefly describes the error.

Type: str

message
Human-readable error message that is not meant to be relayed to customer as it might tip off people who are trying to commit fraud

Type: str

property_name
Returned only if the error relates to a value that was missing or incorrect.
Contains a location path to the value as a JSonata query <http://docs.jsonata.org/basic.html>.
Some common examples:
  • a.b selects the value of property b of root property a,
  • a[1] selects the first element of the array in root property a,
  • a[b=’some value’] selects all elements of the array in root property a that have a property b with value ‘some value’.

Type: str

request_id
ID of the request that can be used for debugging purposes

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.file.definitions.hosted_file.HostedFile[source]

Bases: ingenico.connect.sdk.data_object.DataObject

File items.
file_name
The name of the file.

Type: str

file_size
The size of the file in bytes.

Type: str

file_type
The type of the file.

Type: str

from_dictionary(dictionary)[source]
id
The numeric identifier of the file.

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.hostedcheckout.create_hosted_checkout_request.CreateHostedCheckoutRequest[source]

Bases: ingenico.connect.sdk.data_object.DataObject

bank_transfer_payment_method_specific_input
Object containing the specific input details for bank transfer payments

Type: ingenico.connect.sdk.domain.payment.definitions.bank_transfer_payment_method_specific_input_base.BankTransferPaymentMethodSpecificInputBase

card_payment_method_specific_input
Object containing the specific input details for card payments

Type: ingenico.connect.sdk.domain.payment.definitions.card_payment_method_specific_input_base.CardPaymentMethodSpecificInputBase

cash_payment_method_specific_input
Object containing the specific input details for cash payments

Type: ingenico.connect.sdk.domain.payment.definitions.cash_payment_method_specific_input_base.CashPaymentMethodSpecificInputBase

e_invoice_payment_method_specific_input
Object containing the specific input details for eInvoice payments

Type: ingenico.connect.sdk.domain.payment.definitions.e_invoice_payment_method_specific_input_base.EInvoicePaymentMethodSpecificInputBase

fraud_fields
Object containing additional data that will be used to assess the risk of fraud

Type: ingenico.connect.sdk.domain.definitions.fraud_fields.FraudFields

from_dictionary(dictionary)[source]
hosted_checkout_specific_input
Object containing hosted checkout specific data

Type: ingenico.connect.sdk.domain.hostedcheckout.definitions.hosted_checkout_specific_input.HostedCheckoutSpecificInput

merchant
Object containing information on you, the merchant

Type: ingenico.connect.sdk.domain.payment.definitions.merchant.Merchant

mobile_payment_method_specific_input
Object containing reference data for Google Pay.

Type: ingenico.connect.sdk.domain.hostedcheckout.definitions.mobile_payment_method_specific_input_hosted_checkout.MobilePaymentMethodSpecificInputHostedCheckout

order
Order object containing order related data

Type: ingenico.connect.sdk.domain.payment.definitions.order.Order

redirect_payment_method_specific_input
Object containing the specific input details for payments that involve redirects to 3rd parties to complete, like iDeal and PayPal

Type: ingenico.connect.sdk.domain.payment.definitions.redirect_payment_method_specific_input_base.RedirectPaymentMethodSpecificInputBase

sepa_direct_debit_payment_method_specific_input
Object containing the specific input details for SEPA direct debit payments

Type: ingenico.connect.sdk.domain.payment.definitions.sepa_direct_debit_payment_method_specific_input_base.SepaDirectDebitPaymentMethodSpecificInputBase

to_dictionary()[source]
class ingenico.connect.sdk.domain.hostedcheckout.create_hosted_checkout_response.CreateHostedCheckoutResponse[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
hosted_checkout_id
This is the ID under which the data for this checkout can be retrieved.

Type: str

invalid_tokens
Tokens that are submitted in the request are validated. In case any of the tokens can’t be used anymore they are returned in this array. You should most likely remove those tokens from your system.

Type: list[str]

merchant_reference
If a payment is created during this hosted checkout, then it will use this merchantReference. This is the merchantReference you provided in the Create Hosted Checkout request, or if you did not provide one, a reference generated by Connect. This allows you to to link a webhook related to the created payment back to this hosted checkout using the webhook’s paymentOutput.references.merchantReference.
This property is intended primarily for hosted checkouts on the Ogone Payment Platform. On the GlobalCollect platform, you can also use hostedCheckoutSpecificOutput.hostedCheckoutId.

Type: str

partial_redirect_url
The partial URL as generated by our system. You will need to add the protocol and the relevant subdomain to this URL, before redirecting your customer to this URL. A special ‘payment’ subdomain will always work so you can always add ‘https://payment.’ at the beginning of this response value to view your MyCheckout hosted payment pages.

Type: str

returnmac
When the customer is returned to your site we will append this property and value to the query-string. You should store this data, so you can identify the returning customer.

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.hostedcheckout.get_hosted_checkout_response.GetHostedCheckoutResponse[source]

Bases: ingenico.connect.sdk.data_object.DataObject

created_payment_output
When a payment has been created during the hosted checkout session this object will return the details.

Type: ingenico.connect.sdk.domain.hostedcheckout.definitions.created_payment_output.CreatedPaymentOutput

from_dictionary(dictionary)[source]
status
This is the status of the hosted checkout. Possible values are:
  • IN_PROGRESS - The checkout is still in progress and has not finished yet
  • PAYMENT_CREATED - A payment has been created
  • CANCELLED_BY_CONSUMER - If a customer cancels the payment on the payment product detail page of the MyCheckout hosted payment pages, the status will change to IN_PROGRESS. Since we understand you want to be aware of a customer cancelling the payment on the page we host for you, you can choose to receive the status CANCELLED_BY_CONSUMER instead of the status IN_PROGRESS. In order to receive the status CANCELLED_BY_CONSUMER, you need to have the returnCancelState flag enabled in the Create hosted checkout <https://epayments-api.developer-ingenico.com/s2sapi/v1/en_US/python/hostedcheckouts/create.html> call.
  • CLIENT_NOT_ELIGIBLE_FOR_SELECTED_PAYMENT_PRODUCT - With some payment products it might occur that the device of the user is not capable to complete the payment. If the Hosted Checkout Session was restricted to a single project that is not compatible to the user’s device you will receive this Hosted Checkout status. This scenario applies to: Google Pay (Payment Product ID: 320).
Please see Statuses <https://epayments-api.developer-ingenico.com/s2sapi/v1/en_US/python/statuses.html> for a full overview of possible values.

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.hostedcheckout.definitions.created_payment_output.CreatedPaymentOutput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

This object is used when a payment was created during a HostedCheckout. It is part of the response of a GET HostedCheckout object and contains the details of the created payment object.
displayed_data
Object that contains the action, including the needed data, that you should perform next, like showing instruction, showing the transaction results or redirect to a third party to complete the payment

Type: ingenico.connect.sdk.domain.hostedcheckout.definitions.displayed_data.DisplayedData

from_dictionary(dictionary)[source]
payment
Object that holds the payment data

Type: ingenico.connect.sdk.domain.payment.definitions.payment.Payment

payment_creation_references
Object containing the created references

Type: ingenico.connect.sdk.domain.payment.definitions.payment_creation_references.PaymentCreationReferences

payment_status_category
Highlevel indication of the payment status with the following possible values:
  • REJECTED - The payment has been rejected or is in such a state that it will never become successful. This category groups the following statuses:
  • CREATED
  • REJECTED
  • REJECTED CAPTURE
  • REJECTED REFUND
  • REJECTED PAYOUT
  • CANCELLED
  • SUCCESSFUL - The payment was not (yet) rejected. Use the payment statuses to determine if it was completed, see Statuses <https://epayments-api.developer-ingenico.com/s2sapi/v1/en_US/python/statuses.html>. This category groups the following statuses:
  • PENDING PAYMENT
  • ACCOUNT VERIFIED
  • PENDING FRAUD APPROVAL
  • PENDING APPROVAL
  • AUTHORIZATION REQUESTED
  • CAPTURE REQUESTED
  • REFUND REQUESTED
  • PAYOUT REQUESTED
  • CAPTURED
  • PAID
  • ACCOUNT CREDITED
  • REVERSED
  • CHARGEBACK_NOTIFICATION
  • CHARGEBACKED
  • REFUNDED
  • STATUS_UNKNOWN - The status of the payment is unknown at this moment. This category groups the following statuses:
  • REDIRECTED
Please see Statuses <https://epayments-api.developer-ingenico.com/s2sapi/v1/en_US/python/statuses.html> for a full overview of possible values.

Type: str

Deprecated; Use Payment.statusOutput.statusCategory instead

to_dictionary()[source]
tokenization_succeeded
If the payment was attempted to be tokenized, indicates if tokenization was successful or not.

Type: bool

tokens
This property contains the tokens that are associated with the hosted checkout session/customer. You can use the tokens listed in this list for a future checkout of the same customer.

Type: str

class ingenico.connect.sdk.domain.hostedcheckout.definitions.displayed_data.DisplayedData[source]

Bases: ingenico.connect.sdk.data_object.DataObject

displayed_data_type
Action merchants needs to take in the online payment process. Possible values are:
  • SHOW_INSTRUCTIONS - The customer needs to be shown payment instruction using the details found in showData. Alternatively the instructions can be rendered by us using the renderingData
  • SHOW_TRANSACTION_RESULTS - The customer needs to be shown the transaction results using the details found in showData. Alternatively the instructions can be rendered by us using the renderingData

Type: str

from_dictionary(dictionary)[source]
rendering_data
This property contains the blob with data for the instructions rendering service.
This service will be available at the following endpoint:http(s)://{{merchant specific subdomain}}.{{base MyCheckout hosted payment pages domain}}/instructions/{{merchantId}}/{{clientSessionId}}
This instructions page rendering service accepts the following parameters:
  • renderingData (required, the content of this property)
  • locale (optional, if present overrides default locale, e.g. “en_GB”)
  • variant (optional, code of a variant, if present overrides default variant, e.g. “100”)
You can offer a link to a customer to see an instructions page for a payment done earlier. Because of the size of the renderingData this will need to be set in a web form as a value of a hidden field. Before presenting the link you need to obtain a clientSessionId by creating a session using the S2S API. You will need to use the MyCheckout hosted payment pages domain hosted in the same region as the API domain used for the createClientSession call.
The renderingData is a String blob that is presented to you via the Server API as part of the merchantAction (if available, and non-redirect) in the JSON return values for the createPayment call or the getHostedCheckoutStatus call (merchantAction inside createdPaymentOutput when available).You are responsible to store the renderingData blob in order to be able to present the instructions page at a later time, when this information might no longer be available through Server API calls.

Type: str

show_data
Array of key value pairs of data that needs to be shown to the customer. This is returned for both the SHOW_INSTRUCTION as well as the SHOW_TRANSACTION_RESULTS actionType.
Note: The returned value for the key BARCODE is a base64 encoded gif image. By prepending ‘data:image/gif;base64,’ this value can be used as the source of an HTML inline image.

Type: list[ingenico.connect.sdk.domain.definitions.key_value_pair.KeyValuePair]

to_dictionary()[source]
class ingenico.connect.sdk.domain.hostedcheckout.definitions.hosted_checkout_specific_input.HostedCheckoutSpecificInput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
is_recurring
  • true - Only payment products that support recurring payments will be shown. Any transactions created will also be tagged as being a first of a recurring sequence.
  • false - Only payment products that support one-off payments will be shown.
The default value for this property is false.

Type: bool

locale
Locale to use to present the MyCheckout payment pages to the customer. Please make sure that a language pack is configured for the locale you are submitting. If you submit a locale that is not setup on your account we will use the default language pack for your account. You can easily upload additional language packs and set the default language pack in the Configuration Center.

Type: str

payment_product_filters
Contains the payment product ids and payment product groups that will be used for manipulating the payment products available for the payment to the customer.

Type: ingenico.connect.sdk.domain.hostedcheckout.definitions.payment_product_filters_hosted_checkout.PaymentProductFiltersHostedCheckout

return_cancel_state
This flag affects the status of a Hosted Checkout when a customer presses the cancel button and is returned to you as a result.
If set to true, then the status will be CANCELLED_BY_CONSUMER. If set to false, then the status will be IN_PROGRESS.
The default value is false. This flag was added to introduce the additional CANCELLED_BY_CONSUMER state as a non-breaking change.

Type: bool

return_url
The URL that the customer is redirect to after the payment flow has finished. You can add any number of key value pairs in the query string that, for instance help you to identify the customer when they return to your site. Please note that we will also append some additional key value pairs that will also help you with this identification process.
Note: The provided URL should be absolute and contain the protocol to use, e.g. http:// or https://. For use on mobile devices a custom protocol can be used in the form of protocol://. This protocol must be registered on the device first.
URLs without a protocol will be rejected.

Type: str

show_result_page
  • true - MyCheckout will show a result page to the customer when applicable. Default.
  • false - MyCheckout will redirect the customer back to the provided returnUrl when this is possible.
The default value for this property is true.

Type: bool

to_dictionary()[source]
tokens
String containing comma separated tokens (no spaces) associated with the customer of this hosted checkout. Valid tokens will be used to present the customer the option to re-use previously used payment details. This means the customer for instance does not have to re-enter their card details again, which a big plus when the customer is using their mobile phone to complete the checkout.

Type: str

validate_shopping_cart
By default, validation is done for all the information required to display the shopping cart. Set this value to false if you would like to turn that feature off for a hosted checkout on the Ogone Payment Platform, in which case the rendering of the shopping cart will be skipped if any required information is missing. Use this when you want fraud-checks to be performed on the shopping cart, but do not want to suply all data needed for displaying it in the hosted checkout. The default value for this property is true.

Type: bool

variant
Using the Configuration Center it is possible to create multiple variations of your MyCheckout payment pages. By specifying a specific variant you can force the use of another variant then the default. This allows you to test out the effect of certain changes to your MyCheckout payment pages in a controlled manner. Please note that you need to specify the ID of the variant.

Type: str

class ingenico.connect.sdk.domain.hostedcheckout.definitions.mobile_payment_method_specific_input_hosted_checkout.MobilePaymentMethodSpecificInputHostedCheckout[source]

Bases: ingenico.connect.sdk.domain.definitions.abstract_payment_method_specific_input.AbstractPaymentMethodSpecificInput

from_dictionary(dictionary)[source]
payment_product320_specific_input
Object containing information specific to Google Pay

Type: ingenico.connect.sdk.domain.hostedcheckout.definitions.mobile_payment_product320_specific_input_hosted_checkout.MobilePaymentProduct320SpecificInputHostedCheckout

to_dictionary()[source]
class ingenico.connect.sdk.domain.hostedcheckout.definitions.mobile_payment_product320_specific_input_hosted_checkout.MobilePaymentProduct320SpecificInputHostedCheckout[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
merchant_name
Used as an input for the Google Pay payment sheet. Provide your company name in a human readable form.

Type: str

merchant_origin
Used as an input for the Google Pay payment sheet. Provide the url of your webshop. For international (non-ASCII) domains, please use Punycode <https://en.wikipedia.org/wiki/Punycode>.

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.hostedcheckout.definitions.payment_product_filters_hosted_checkout.PaymentProductFiltersHostedCheckout[source]

Bases: ingenico.connect.sdk.data_object.DataObject

exclude
Contains the payment product ids and payment product groups that should be excluded from the payment products available for the payment. Note that excluding a payment product will ensure exclusion, even if the payment product is also present in the restrictTo filter, and that excluding a payment product group will exclude all payment products that are a part of that group, even if one or more of them are present in the restrictTo filters.

Type: ingenico.connect.sdk.domain.definitions.payment_product_filter.PaymentProductFilter

from_dictionary(dictionary)[source]
restrict_to
Contains the payment product ids and payment product groups that should be at most contained in the payment products available for completing the payment. Note that the list of payment products available for completing the payment will only contain payment products present in these filters, but not all payment products in these filters might be present in the list. Some of them might not be allowed in context or they might be present in the exclude filters.

Type: ingenico.connect.sdk.domain.definitions.payment_product_filter.PaymentProductFilter

to_dictionary()[source]
tokens_only
  • true - The customer may only complete the payment using one of the provided accounts on file.
  • false -The customer can complete the payment using any way they like, as long as it is allowed in the payment context. Default.
Note that the request must contain at least one valid account on file with an allowed payment product (not excluded and allowed in context) if this property is set to true, else the request will fail.

Type: bool

class ingenico.connect.sdk.domain.hostedmandatemanagement.create_hosted_mandate_management_request.CreateHostedMandateManagementRequest[source]

Bases: ingenico.connect.sdk.data_object.DataObject

create_mandate_info
Object containing partial information needed for the creation of the mandate. The recurrencetype, signature type of the mandate and reference to the customer are mandatory. You can also supply any personal information you already know about the customer so they have to fill in less details.

Type: ingenico.connect.sdk.domain.hostedmandatemanagement.definitions.hosted_mandate_info.HostedMandateInfo

from_dictionary(dictionary)[source]
hosted_mandate_management_specific_input
Object containing hosted mandate management specific data

Type: ingenico.connect.sdk.domain.hostedmandatemanagement.definitions.hosted_mandate_management_specific_input.HostedMandateManagementSpecificInput

to_dictionary()[source]
class ingenico.connect.sdk.domain.hostedmandatemanagement.create_hosted_mandate_management_response.CreateHostedMandateManagementResponse[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
hosted_mandate_management_id
This is the ID under which the data for this mandate management can be retrieved.

Type: str

partial_redirect_url
The partial URL as generated by our system. You will need to add the protocol and the relevant subdomain to this URL, before redirecting your customer to this URL. A special ‘payment’ subdomain will always work so you can always add ‘https://payment.’ at the beginning of this response value to view your hosted mandate management pages.

Type: str

returnmac
When the customer is returned to your site we will append this property and value to the query-string. You should store this data, so you can identify the returning customer.

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.hostedmandatemanagement.get_hosted_mandate_management_response.GetHostedMandateManagementResponse[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
mandate
When a mandate has been created during the hosted mandate management session this object will return the details.

Type: ingenico.connect.sdk.domain.mandates.definitions.mandate_response.MandateResponse

status
This is the status of the hosted mandate management. Possible values are:
  • IN_PROGRESS - The session has been created, but no mandate has been created yet.
  • MANDATE_CREATED - A mandate has been created, the customer might still need to sign the mandate.
  • FAILED - There was an error while creating the mandate, the session can not continue.
  • CANCELLED_BY_CONSUMER - The session was cancelled before a mandate was created
.

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.hostedmandatemanagement.definitions.hosted_mandate_info.HostedMandateInfo[source]

Bases: ingenico.connect.sdk.data_object.DataObject

alias
An alias for the mandate. This can be used to visually represent the mandate.
Do not include any unobfuscated sensitive data in the alias.
Default value if not provided is the obfuscated IBAN of the customer.

Type: str

customer
Customer object containing customer specific inputs

Type: ingenico.connect.sdk.domain.mandates.definitions.mandate_customer.MandateCustomer

customer_reference
The unique identifier of a customer

Type: str

from_dictionary(dictionary)[source]
recurrence_type
Specifies whether the mandate is for one-off or recurring payments. Possible values are:

  • UNIQUE
  • RECURRING

Type: str

signature_type
Specifies whether the mandate is unsigned or singed by SMS. Possible values are:

  • UNSIGNED
  • SMS

Type: str

to_dictionary()[source]
unique_mandate_reference
The unique identifier of the mandate

Type: str

class ingenico.connect.sdk.domain.hostedmandatemanagement.definitions.hosted_mandate_management_specific_input.HostedMandateManagementSpecificInput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
locale
Locale to use to present the hosted mandate pages to the customer. Please make sure that a language pack is configured for the locale you are submitting. If you submit a locale that is not setup on your account we will use the default language pack for your account. You can easily upload additional language packs and set the default language pack in the Configuration Center.

Type: str

return_url
The URL that the customer is redirect to after the mandate flow has finished. You can add any number of key value pairs in the query string that, for instance help you to identify the customer when they return to your site. Please note that we will also append some additional key value pairs that will also help you with this identification process.
Note: The provided URL should be absolute and contain the protocol to use, e.g. http:// or https://. For use on mobile devices a custom protocol can be used in the form of protocol://. This protocol must be registered on the device first.
URLs without a protocol will be rejected.

Type: str

show_result_page
  • true - MyMandate will show a result page to the customer when applicable. Default.
  • false - MyMandate will redirect the customer back to the provided returnUrl when this is possible.
The default value for this property is true.

Type: bool

to_dictionary()[source]
variant
The ID of the variant used to create the Hosted Mandate Management Session in which the payment was made.

Type: str

class ingenico.connect.sdk.domain.mandates.create_mandate_request.CreateMandateRequest[source]

Bases: ingenico.connect.sdk.domain.mandates.definitions.create_mandate_with_return_url.CreateMandateWithReturnUrl

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.mandates.create_mandate_response.CreateMandateResponse[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
mandate
Object containing information on a mandate

Type: ingenico.connect.sdk.domain.mandates.definitions.mandate_response.MandateResponse

merchant_action
Object that contains the action, including the needed data, that you should perform next, showing the redirect to a third party to complete the payment or like showing instructions

Type: ingenico.connect.sdk.domain.mandates.definitions.mandate_merchant_action.MandateMerchantAction

to_dictionary()[source]
class ingenico.connect.sdk.domain.mandates.get_mandate_response.GetMandateResponse[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
mandate
Object containing information on a mandate.

Type: ingenico.connect.sdk.domain.mandates.definitions.mandate_response.MandateResponse

to_dictionary()[source]
class ingenico.connect.sdk.domain.mandates.definitions.create_mandate_base.CreateMandateBase[source]

Bases: ingenico.connect.sdk.data_object.DataObject

alias
An alias for the mandate. This can be used to visually represent the mandate.
Do not include any unobfuscated sensitive data in the alias.
Default value if not provided is the obfuscated IBAN of the customer.

Type: str

customer
Customer object containing customer specific inputs

Type: ingenico.connect.sdk.domain.mandates.definitions.mandate_customer.MandateCustomer

customer_reference
The unique identifier of a customer

Type: str

from_dictionary(dictionary)[source]
language
The language code of the customer, one of de, en, es, fr, it, nl, si, sk, sv.

Type: str

recurrence_type
Specifies whether the mandate is for one-off or recurring payments. Possible values are:

  • UNIQUE
  • RECURRING

Type: str

signature_type
Specifies whether the mandate is unsigned or singed by SMS. Possible values are:

  • UNSIGNED
  • SMS

Type: str

to_dictionary()[source]
unique_mandate_reference
The unique identifier of the mandate. If you do not provide one, we will generate one for you.

Type: str

class ingenico.connect.sdk.domain.mandates.definitions.create_mandate_with_return_url.CreateMandateWithReturnUrl[source]

Bases: ingenico.connect.sdk.domain.mandates.definitions.create_mandate_base.CreateMandateBase

from_dictionary(dictionary)[source]
return_url
Return URL to use if the mandate signing requires redirection.

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.mandates.definitions.mandate_address.MandateAddress[source]

Bases: ingenico.connect.sdk.data_object.DataObject

Address details of the consumer
city
City

Type: str

country_code
ISO 3166-1 alpha-2 country code

Type: str

from_dictionary(dictionary)[source]
house_number
House number

Type: str

street
Streetname

Type: str

to_dictionary()[source]
zip
Zip code

Type: str

class ingenico.connect.sdk.domain.mandates.definitions.mandate_contact_details.MandateContactDetails[source]

Bases: ingenico.connect.sdk.data_object.DataObject

Contact details of the consumer
email_address
Email address of the customer

Type: str

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.mandates.definitions.mandate_customer.MandateCustomer[source]

Bases: ingenico.connect.sdk.data_object.DataObject

bank_account_iban
Object containing IBAN information

Type: ingenico.connect.sdk.domain.definitions.bank_account_iban.BankAccountIban

company_name
Name of company, as a customer

Type: str

contact_details
Object containing contact details like email address and phone number

Type: ingenico.connect.sdk.domain.mandates.definitions.mandate_contact_details.MandateContactDetails

from_dictionary(dictionary)[source]
mandate_address
Object containing billing address details

Type: ingenico.connect.sdk.domain.mandates.definitions.mandate_address.MandateAddress

personal_information
Object containing personal information of the customer

Type: ingenico.connect.sdk.domain.mandates.definitions.mandate_personal_information.MandatePersonalInformation

to_dictionary()[source]
class ingenico.connect.sdk.domain.mandates.definitions.mandate_merchant_action.MandateMerchantAction[source]

Bases: ingenico.connect.sdk.data_object.DataObject

action_type
Action merchants needs to take in the online mandate process. Possible values are:
  • REDIRECT - The customer needs to be redirected using the details found in redirectData

Type: str

from_dictionary(dictionary)[source]
redirect_data
Object containing all data needed to redirect the customer

Type: ingenico.connect.sdk.domain.mandates.definitions.mandate_redirect_data.MandateRedirectData

to_dictionary()[source]
class ingenico.connect.sdk.domain.mandates.definitions.mandate_personal_information.MandatePersonalInformation[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
name
Object containing the name details of the customer

Type: ingenico.connect.sdk.domain.mandates.definitions.mandate_personal_name.MandatePersonalName

title
Object containing the title of the customer (Mr, Miss or Mrs)

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.mandates.definitions.mandate_personal_name.MandatePersonalName[source]

Bases: ingenico.connect.sdk.data_object.DataObject

first_name
Given name(s) or first name(s) of the customer

Type: str

from_dictionary(dictionary)[source]
surname
Surname(s) or last name(s) of the customer

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.mandates.definitions.mandate_redirect_data.MandateRedirectData[source]

Bases: ingenico.connect.sdk.domain.definitions.redirect_data_base.RedirectDataBase

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.mandates.definitions.mandate_response.MandateResponse[source]

Bases: ingenico.connect.sdk.data_object.DataObject

alias
An alias for the mandate. This can be used to visually represent the mandate.
Do not include any unobfuscated sensitive data in the alias.
Default value if not provided is the obfuscated IBAN of the customer.

Type: str

customer
Customer object containing customer specific inputs

Type: ingenico.connect.sdk.domain.mandates.definitions.mandate_customer.MandateCustomer

customer_reference
The unique identifier of the customer to which this mandate is applicable

Type: str

from_dictionary(dictionary)[source]
recurrence_type
Specifieds whether the mandate is for one-off or recurring payments.

Type: str

status
The status of the mandate. Possible values are:
  • ACTIVE
  • EXPIRED
  • CREATED
  • REVOKED
  • WAITING_FOR_REFERENCE
  • BLOCKED
  • USED

Type: str

to_dictionary()[source]
unique_mandate_reference
The unique identifier of the mandate

Type: str

class ingenico.connect.sdk.domain.metadata.shopping_cart_extension.ShoppingCartExtension(creator, name, version, extension_id=None)[source]

Bases: ingenico.connect.sdk.data_object.DataObject

static create_from_dictionary(dictionary)[source]
creator
extension_id
from_dictionary(dictionary)[source]
name
to_dictionary()[source]
version
class ingenico.connect.sdk.domain.payment.approve_payment_request.ApprovePaymentRequest[source]

Bases: ingenico.connect.sdk.data_object.DataObject

amount
In case you want to approve the capture of a different lower amount you can specify this here (specified in cents, where single digit currencies are presumed to have 2 digits)

Type: long

direct_debit_payment_method_specific_input
Object that holds non-SEPA Direct Debit specific input data

Type: ingenico.connect.sdk.domain.payment.definitions.approve_payment_non_sepa_direct_debit_payment_method_specific_input.ApprovePaymentNonSepaDirectDebitPaymentMethodSpecificInput

from_dictionary(dictionary)[source]
order
Object that holds the order data

Type: ingenico.connect.sdk.domain.payment.definitions.order_approve_payment.OrderApprovePayment

sepa_direct_debit_payment_method_specific_input
Object that holds SEPA Direct Debit specific input data

Type: ingenico.connect.sdk.domain.payment.definitions.approve_payment_sepa_direct_debit_payment_method_specific_input.ApprovePaymentSepaDirectDebitPaymentMethodSpecificInput

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.cancel_approval_payment_response.CancelApprovalPaymentResponse[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
payment
Object that holds the payment related properties

Type: ingenico.connect.sdk.domain.payment.definitions.payment.Payment

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.cancel_payment_response.CancelPaymentResponse[source]

Bases: ingenico.connect.sdk.data_object.DataObject

Response to the cancelation of a payment
card_payment_method_specific_output
Object that holds specific information on cancelled card payments

Type: ingenico.connect.sdk.domain.payment.definitions.cancel_payment_card_payment_method_specific_output.CancelPaymentCardPaymentMethodSpecificOutput

from_dictionary(dictionary)[source]
mobile_payment_method_specific_output
Object that holds specific information on cancelled mobile payments

Type: ingenico.connect.sdk.domain.payment.definitions.cancel_payment_mobile_payment_method_specific_output.CancelPaymentMobilePaymentMethodSpecificOutput

payment
Object that holds the payment related properties

Type: ingenico.connect.sdk.domain.payment.definitions.payment.Payment

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.capture_payment_request.CapturePaymentRequest[source]

Bases: ingenico.connect.sdk.data_object.DataObject

amount
Here you can specify the amount that you want to capture (specified in cents, where single digit currencies are presumed to have 2 digits).
The amount can be lower than the amount that was authorized, but not higher.
If left empty, the full amount will be captured and the request will be final.
If the full amount is captured, the request will also be final.

Type: long

from_dictionary(dictionary)[source]
is_final
This property indicates whether this will be the final capture of this transaction.
The default value for this property is false.

Type: bool

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.complete_payment_request.CompletePaymentRequest[source]

Bases: ingenico.connect.sdk.data_object.DataObject

card_payment_method_specific_input
Object containing the specific input details for card payments

Type: ingenico.connect.sdk.domain.payment.definitions.complete_payment_card_payment_method_specific_input.CompletePaymentCardPaymentMethodSpecificInput

from_dictionary(dictionary)[source]
merchant
Object containing information on you, the merchant

Type: ingenico.connect.sdk.domain.payment.definitions.merchant.Merchant

order
Order object containing order related data

Type: ingenico.connect.sdk.domain.payment.definitions.order.Order

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.complete_payment_response.CompletePaymentResponse[source]

Bases: ingenico.connect.sdk.domain.payment.definitions.create_payment_result.CreatePaymentResult

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.create_payment_request.CreatePaymentRequest[source]

Bases: ingenico.connect.sdk.data_object.DataObject

bank_transfer_payment_method_specific_input
Object containing the specific input details for bank transfer payments

Type: ingenico.connect.sdk.domain.payment.definitions.bank_transfer_payment_method_specific_input.BankTransferPaymentMethodSpecificInput

card_payment_method_specific_input
Object containing the specific input details for card payments

Type: ingenico.connect.sdk.domain.payment.definitions.card_payment_method_specific_input.CardPaymentMethodSpecificInput

cash_payment_method_specific_input
Object containing the specific input details for cash payments

Type: ingenico.connect.sdk.domain.payment.definitions.cash_payment_method_specific_input.CashPaymentMethodSpecificInput

direct_debit_payment_method_specific_input
Object containing the specific input details for direct debit payments

Type: ingenico.connect.sdk.domain.payment.definitions.non_sepa_direct_debit_payment_method_specific_input.NonSepaDirectDebitPaymentMethodSpecificInput

e_invoice_payment_method_specific_input
Object containing the specific input details for e-invoice payments.

Type: ingenico.connect.sdk.domain.payment.definitions.e_invoice_payment_method_specific_input.EInvoicePaymentMethodSpecificInput

encrypted_customer_input
Data that was encrypted client side containing all customer entered data elements like card data.
Note: Because this data can only be submitted once to our system and contains encrypted card data you should not store it. As the data was captured within the context of a client session you also need to submit it to us before the session has expired.

Type: str

fraud_fields
Object containing additional data that will be used to assess the risk of fraud

Type: ingenico.connect.sdk.domain.definitions.fraud_fields.FraudFields

from_dictionary(dictionary)[source]
invoice_payment_method_specific_input
Object containing the specific input details for invoice payments

Type: ingenico.connect.sdk.domain.payment.definitions.invoice_payment_method_specific_input.InvoicePaymentMethodSpecificInput

merchant
Object containing information on you, the merchant

Type: ingenico.connect.sdk.domain.payment.definitions.merchant.Merchant

mobile_payment_method_specific_input
Object containing the specific input details for mobile payments.
Mobile payments produce the required payment data in encrypted form.

Type: ingenico.connect.sdk.domain.payment.definitions.mobile_payment_method_specific_input.MobilePaymentMethodSpecificInput

order
Order object containing order related data
Please note that this object is required to be able to submit the amount.

Type: ingenico.connect.sdk.domain.payment.definitions.order.Order

redirect_payment_method_specific_input
Object containing the specific input details for payments that involve redirects to 3rd parties to complete, like iDeal and PayPal

Type: ingenico.connect.sdk.domain.payment.definitions.redirect_payment_method_specific_input.RedirectPaymentMethodSpecificInput

sepa_direct_debit_payment_method_specific_input
Object containing the specific input details for SEPA direct debit payments

Type: ingenico.connect.sdk.domain.payment.definitions.sepa_direct_debit_payment_method_specific_input.SepaDirectDebitPaymentMethodSpecificInput

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.create_payment_response.CreatePaymentResponse[source]

Bases: ingenico.connect.sdk.domain.payment.definitions.create_payment_result.CreatePaymentResult

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.find_payments_response.FindPaymentsResponse[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
limit
The limit you used in the request.

Type: int

offset
The offset you used in the request.

Type: int

payments
A list of payments that matched your filter, starting at the given offset and limited to the given limit.

Type: list[ingenico.connect.sdk.domain.payment.definitions.payment.Payment]

to_dictionary()[source]
total_count
The total number of payments that matched your filter.

Type: int

class ingenico.connect.sdk.domain.payment.payment_approval_response.PaymentApprovalResponse[source]

Bases: ingenico.connect.sdk.data_object.DataObject

card_payment_method_specific_output
Object containing additional card payment method specific details

Type: ingenico.connect.sdk.domain.payment.definitions.approve_payment_card_payment_method_specific_output.ApprovePaymentCardPaymentMethodSpecificOutput

from_dictionary(dictionary)[source]
mobile_payment_method_specific_output
Object containing additional mobile payment method specific details

Type: ingenico.connect.sdk.domain.payment.definitions.approve_payment_mobile_payment_method_specific_output.ApprovePaymentMobilePaymentMethodSpecificOutput

payment
Object that holds the payment data

Type: ingenico.connect.sdk.domain.payment.definitions.payment.Payment

payment_method_specific_output
Object containing additional payment method specific details
Deprecated: this property does not support different outputs for payment methods other than cards. Please use cardPaymentMethodSpecificOutput instead.

Type: ingenico.connect.sdk.domain.payment.definitions.approve_payment_card_payment_method_specific_output.ApprovePaymentCardPaymentMethodSpecificOutput

Deprecated; Use cardPaymentMethodSpecificOutput instead

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.payment_error_response.PaymentErrorResponse[source]

Bases: ingenico.connect.sdk.data_object.DataObject

error_id
Unique reference, for debugging purposes, of this error response

Type: str

errors
List of one or more errors

Type: list[ingenico.connect.sdk.domain.errors.definitions.api_error.APIError]

from_dictionary(dictionary)[source]
payment_result
Object that contains details on the created payment in case one has been created

Type: ingenico.connect.sdk.domain.payment.definitions.create_payment_result.CreatePaymentResult

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.payment_response.PaymentResponse[source]

Bases: ingenico.connect.sdk.domain.payment.definitions.payment.Payment

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.third_party_status_response.ThirdPartyStatusResponse[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
third_party_status
The status returned by the third party.Possible values:
  • WAITING - The customer has not connected to the third party
  • INITIALIZED - Authentication in progress
  • AUTHORIZED - Payment in progress
  • COMPLETED - The customer has completed the payment at the third party

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.tokenize_payment_request.TokenizePaymentRequest[source]

Bases: ingenico.connect.sdk.data_object.DataObject

alias
An alias for the token. This can be used to visually represent the token.
If no alias is given, a payment product specific default is used, e.g. the obfuscated card number for card payment products.
Do not include any unobfuscated sensitive data in the alias.

Type: str

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.abstract_bank_transfer_payment_method_specific_input.AbstractBankTransferPaymentMethodSpecificInput[source]

Bases: ingenico.connect.sdk.domain.definitions.abstract_payment_method_specific_input.AbstractPaymentMethodSpecificInput

additional_reference

Type: str

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.abstract_card_payment_method_specific_input.AbstractCardPaymentMethodSpecificInput[source]

Bases: ingenico.connect.sdk.domain.definitions.abstract_payment_method_specific_input.AbstractPaymentMethodSpecificInput

authorization_mode

Type: str

customer_reference

Type: str

from_dictionary(dictionary)[source]
initial_scheme_transaction_id

Type: str

recurring

Type: ingenico.connect.sdk.domain.payment.definitions.card_recurrence_details.CardRecurrenceDetails

recurring_payment_sequence_indicator

Type: str

Deprecated; Use recurring.recurringPaymentSequenceIndicator instead

requires_approval

Type: bool

skip_authentication

Type: bool

Deprecated; Use threeDSecure.skipAuthentication instead

skip_fraud_service

Type: bool

to_dictionary()[source]
token

Type: str

tokenize

Type: bool

transaction_channel

Type: str

unscheduled_card_on_file_indicator

Type: str

Deprecated; Use unscheduledCardOnFileSequenceIndicator instead

unscheduled_card_on_file_requestor

Type: str

unscheduled_card_on_file_sequence_indicator

Type: str

class ingenico.connect.sdk.domain.payment.definitions.abstract_cash_payment_method_specific_input.AbstractCashPaymentMethodSpecificInput[source]

Bases: ingenico.connect.sdk.domain.definitions.abstract_payment_method_specific_input.AbstractPaymentMethodSpecificInput

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.abstract_e_invoice_payment_method_specific_input.AbstractEInvoicePaymentMethodSpecificInput[source]

Bases: ingenico.connect.sdk.domain.definitions.abstract_payment_method_specific_input.AbstractPaymentMethodSpecificInput

from_dictionary(dictionary)[source]
requires_approval

Type: bool

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.abstract_payment_method_specific_output.AbstractPaymentMethodSpecificOutput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
payment_product_id
Payment product identifier
Please see payment products <https://epayments-api.developer-ingenico.com/s2sapi/v1/en_US/python/paymentproducts.html> for a full overview of possible values.

Type: int

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.abstract_redirect_payment_method_specific_input.AbstractRedirectPaymentMethodSpecificInput[source]

Bases: ingenico.connect.sdk.domain.definitions.abstract_payment_method_specific_input.AbstractPaymentMethodSpecificInput

expiration_period

Type: int

from_dictionary(dictionary)[source]
recurring_payment_sequence_indicator

Type: str

requires_approval

Type: bool

to_dictionary()[source]
token

Type: str

tokenize

Type: bool

class ingenico.connect.sdk.domain.payment.definitions.abstract_redirect_payment_product840_specific_input.AbstractRedirectPaymentProduct840SpecificInput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

address_selection_at_pay_pal

Type: bool

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.abstract_sepa_direct_debit_payment_method_specific_input.AbstractSepaDirectDebitPaymentMethodSpecificInput[source]

Bases: ingenico.connect.sdk.domain.definitions.abstract_payment_method_specific_input.AbstractPaymentMethodSpecificInput

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.abstract_sepa_direct_debit_payment_product771_specific_input.AbstractSepaDirectDebitPaymentProduct771SpecificInput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
mandate_reference

Type: str

Deprecated; Use existingUniqueMandateReference or mandate.uniqueMandateReference instead

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.abstract_three_d_secure.AbstractThreeDSecure[source]

Bases: ingenico.connect.sdk.data_object.DataObject

authentication_flow

Type: str

challenge_canvas_size

Type: str

challenge_indicator

Type: str

exemption_request

Type: str

from_dictionary(dictionary)[source]
prior_three_d_secure_data

Type: ingenico.connect.sdk.domain.payment.definitions.three_d_secure_data.ThreeDSecureData

sdk_data

Type: ingenico.connect.sdk.domain.payment.definitions.sdk_data_input.SdkDataInput

skip_authentication

Type: bool

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.additional_order_input.AdditionalOrderInput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

airline_data
Object that holds airline specific data

Type: ingenico.connect.sdk.domain.definitions.airline_data.AirlineData

from_dictionary(dictionary)[source]
level3_summary_data
Object that holds Level3 summary data

Type: ingenico.connect.sdk.domain.payment.definitions.level3_summary_data.Level3SummaryData

Deprecated; Use Order.shoppingCart.amountBreakdown instead

loan_recipient
Object containing specific data regarding the recipient of a loan in the UK

Type: ingenico.connect.sdk.domain.payment.definitions.loan_recipient.LoanRecipient

number_of_installments
The number of installments

Type: long

order_date
Date and time of order
Format: YYYYMMDDHH24MISS

Type: str

to_dictionary()[source]
type_information
Object that holds the purchase and usage type indicators

Type: ingenico.connect.sdk.domain.payment.definitions.order_type_information.OrderTypeInformation

class ingenico.connect.sdk.domain.payment.definitions.address_personal.AddressPersonal[source]

Bases: ingenico.connect.sdk.domain.definitions.address.Address

from_dictionary(dictionary)[source]
name
Object that holds the name elements

Type: ingenico.connect.sdk.domain.payment.definitions.personal_name.PersonalName

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.amount_breakdown.AmountBreakdown[source]

Bases: ingenico.connect.sdk.data_object.DataObject

amount
Amount in cents and always having 2 decimals

Type: long

from_dictionary(dictionary)[source]
to_dictionary()[source]
type
Type of the amount. Each type is only allowed to be provided once. Allowed values:
  • AIRPORT_TAX - The amount of tax paid for the airport, with the last 2 digits implied as decimal places.
  • CONSUMPTION_TAX - The amount of consumption tax paid by the customer, with the last 2 digits implied as decimal places.
  • DISCOUNT - Discount on the entire transaction, with the last 2 digits implied as decimal places.
  • DUTY - Duty on the entire transaction, with the last 2 digits implied as decimal places.
  • HANDLING - Handling cost on the entire transaction, with the last 2 digits implied as decimal places.
  • SHIPPING - Shipping cost on the entire transaction, with the last 2 digits implied as decimal places.
  • TAX - Total tax paid on the entire transaction, with the last 2 digits implied as decimal places.
  • VAT - Total amount of VAT paid on the transaction, with the last 2 digits implied as decimal places.
  • BASE_AMOUNT - Order amount excluding all taxes, discount & shipping costs, with the last 2 digits implied as decimal places.Note: BASE_AMOUNT is only supported by the Ogone Payment Platform.

Type: str

class ingenico.connect.sdk.domain.payment.definitions.approve_payment_card_payment_method_specific_output.ApprovePaymentCardPaymentMethodSpecificOutput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
to_dictionary()[source]
void_response_id
Result of the authorization reversal request
Possible values are:
  • 00 - Successful reversal
  • 0, 8 or 11 - Reversal request submitted
  • 5 or 55 - Reversal request declined or referred
  • empty or 98 - The provider did not provide a response

Type: str

class ingenico.connect.sdk.domain.payment.definitions.approve_payment_direct_debit_payment_method_specific_input.ApprovePaymentDirectDebitPaymentMethodSpecificInput[source]

Bases: ingenico.connect.sdk.domain.payment.definitions.approve_payment_payment_method_specific_input.ApprovePaymentPaymentMethodSpecificInput

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.approve_payment_mobile_payment_method_specific_output.ApprovePaymentMobilePaymentMethodSpecificOutput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

Mobile payment specific response data
from_dictionary(dictionary)[source]
to_dictionary()[source]
void_response_id
Result of the authorization reversal request
Possible values are:
  • 00 - Successful reversal
  • 0, 8 or 11 - Reversal request submitted
  • 5 or 55 - Reversal request declined or referred
  • empty or 98 - The provider did not provide a response

Type: str

class ingenico.connect.sdk.domain.payment.definitions.approve_payment_non_sepa_direct_debit_payment_method_specific_input.ApprovePaymentNonSepaDirectDebitPaymentMethodSpecificInput[source]

Bases: ingenico.connect.sdk.domain.payment.definitions.approve_payment_direct_debit_payment_method_specific_input.ApprovePaymentDirectDebitPaymentMethodSpecificInput

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.approve_payment_payment_method_specific_input.ApprovePaymentPaymentMethodSpecificInput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

date_collect
The desired date for the collection
Format: YYYYMMDD

Type: str

from_dictionary(dictionary)[source]
to_dictionary()[source]
token
Token containing tokenized bank account details

Type: str

class ingenico.connect.sdk.domain.payment.definitions.approve_payment_sepa_direct_debit_payment_method_specific_input.ApprovePaymentSepaDirectDebitPaymentMethodSpecificInput[source]

Bases: ingenico.connect.sdk.domain.payment.definitions.approve_payment_direct_debit_payment_method_specific_input.ApprovePaymentDirectDebitPaymentMethodSpecificInput

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.bank_transfer_payment_method_specific_input.BankTransferPaymentMethodSpecificInput[source]

Bases: ingenico.connect.sdk.domain.payment.definitions.abstract_bank_transfer_payment_method_specific_input.AbstractBankTransferPaymentMethodSpecificInput

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.bank_transfer_payment_method_specific_input_base.BankTransferPaymentMethodSpecificInputBase[source]

Bases: ingenico.connect.sdk.domain.payment.definitions.abstract_bank_transfer_payment_method_specific_input.AbstractBankTransferPaymentMethodSpecificInput

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.bank_transfer_payment_method_specific_output.BankTransferPaymentMethodSpecificOutput[source]

Bases: ingenico.connect.sdk.domain.payment.definitions.abstract_payment_method_specific_output.AbstractPaymentMethodSpecificOutput

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.browser_data.BrowserData[source]

Bases: ingenico.connect.sdk.data_object.DataObject

Object containing information regarding the browser of the customer
color_depth
ColorDepth in bits. Value is returned from the screen.colorDepth property.
If you use the latest version of our JavaScript Client SDK, we will collect this data and include it in the encryptedCustomerInput property. We will then automatically populate this data if available.
Note: This data can only be collected if JavaScript is enabled in the browser. This means that 3-D Secure version 2.1 requires the use of JavaScript to enabled. In the upcoming version 2.2 of the specification this is no longer a requirement. As we currently support version 2.1 it means that this property is required when cardPaymentMethodSpecifInput.threeDSecure.authenticationFlow is set to “browser”.

Type: int

from_dictionary(dictionary)[source]
inner_height
The innerHeight of the frame in case you are capturing your payments in a frame. We will use this to validate if the height provided in the cardPaymentMethodSpecifInput.threeDSecure.challengeCanvasSize will actually fit in the iFrame you use.

Type: str

inner_width
The innerWidth of the frame in case you are capturing your payments in a frame. We will use this to validate if the width provided in the cardPaymentMethodSpecifInput.threeDSecure.challengeCanvasSize will actually fit in the iFrame you use.

Type: str

java_enabled
true =Java is enabled in the browser
false = Java is not enabled in the browser
Value is returned from the navigator.javaEnabled property.
If you use the latest version of our JavaScript Client SDK, we will collect this data and include it in the encryptedCustomerInput property. We will then automatically populate this data if available.
Note: This data can only be collected if JavaScript is enabled in the browser. This means that 3-D Secure version 2.1 requires the use of JavaScript to enabled. In the upcoming version 2.2 of the specification this is no longer a requirement. As we currently support version 2.1 it means that this property is required when cardPaymentMethodSpecifInput.threeDSecure.authenticationFlow is set to “browser”.

Type: bool

java_script_enabled
true = JavaScript is enabled in the browser
false = JavaScript is not enabled in the browser
Note: Required in future 3-D Secure version 2.2.

Type: bool

screen_height
Height of the screen in pixels. Value is returned from the screen.height property.
If you use the latest version of our JavaScript Client SDK, we will collect this data and include it in the encryptedCustomerInput property. We will then automatically populate this data if available.
Note: This data can only be collected if JavaScript is enabled in the browser. This means that 3-D Secure version 2.1 requires the use of JavaScript to enabled. In the upcoming version 2.2 of the specification this is no longer a requirement. As we currently support version 2.1 it means that this property is required when cardPaymentMethodSpecifInput.threeDSecure.authenticationFlow is set to “browser”.

Type: str

screen_width
Width of the screen in pixels. Value is returned from the screen.width property.
If you use the latest version of our JavaScript Client SDK, we will collect this data and include it in the encryptedCustomerInput property. We will then automatically populate this data if available.
Note: This data can only be collected if JavaScript is enabled in the browser. This means that 3-D Secure version 2.1 requires the use of JavaScript to enabled. In the upcoming version 2.2 of the specification this is no longer a requirement. As we currently support version 2.1 it means that this property is required when cardPaymentMethodSpecifInput.threeDSecure.authenticationFlow is set to “browser”.

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.cancel_payment_card_payment_method_specific_output.CancelPaymentCardPaymentMethodSpecificOutput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

Content of the cardPaymentMethodSpecificOutput object from the CancelPaymentResponse
from_dictionary(dictionary)[source]
to_dictionary()[source]
void_response_id
Result of the authorization reversal request
Possible values are:
  • 00 - Successful reversal
  • 0, 8 or 11 - Reversal request submitted
  • 5 or 55 - Reversal request declined or referred
  • empty or 98 - The provider did not provide a response

Type: str

class ingenico.connect.sdk.domain.payment.definitions.cancel_payment_mobile_payment_method_specific_output.CancelPaymentMobilePaymentMethodSpecificOutput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

Content of the mobilePaymentMethodSpecificOutput object from the CancelPaymentResponse
from_dictionary(dictionary)[source]
to_dictionary()[source]
void_response_id
Result of the authorization reversal request
Possible values are:
  • 00 - Successful reversal
  • 0, 8 or 11 - Reversal request submitted
  • 5 or 55 - Reversal request declined or referred
  • empty or 98 - The provider did not provide a response

Type: str

class ingenico.connect.sdk.domain.payment.definitions.card_payment_method_specific_input.CardPaymentMethodSpecificInput[source]

Bases: ingenico.connect.sdk.domain.payment.definitions.abstract_card_payment_method_specific_input.AbstractCardPaymentMethodSpecificInput

card
Object containing card details

Type: ingenico.connect.sdk.domain.definitions.card.Card

external_cardholder_authentication_data
Object containing 3D secure details.

Type: ingenico.connect.sdk.domain.payment.definitions.external_cardholder_authentication_data.ExternalCardholderAuthenticationData

Deprecated; Use threeDSecure.externalCardholderAuthenticationData instead

from_dictionary(dictionary)[source]
is_recurring
Indicates if this transaction is of a one-off or a recurring type
  • true - This is recurring
  • false - This is one-off

Type: bool

merchant_initiated_reason_indicator
Indicates reason behind the merchant initiated transaction. These are industry specific.
Possible values:
  • delayedCharges - Delayed charges are performed to process a supplemental account charge after original services have been rendered and respective payment has been processed. This is typically used in hotel, cruise lines and vehicle rental environments to perform a supplemental payment after the original services are rendered.
  • noShow - Cardholders can use their cards to make a guaranteed reservation with certain merchant segments. A guaranteed reservation ensures that the reservation will be honored and allows a merchant to perform a No Show transaction to charge the cardholder a penalty according to the merchant’s cancellation policy. For merchants that accept token-based payment credentials to guarantee a reservation, it is necessary to perform a customer initiated (Account Verification) at the time of reservation to be able perform a No Show transaction later.

Type: str

return_url
The URL that the customer is redirect to after the payment flow has finished. You can add any number of key value pairs in the query string that, for instance help you to identify the customer when they return to your site. Please note that we will also append some additional key value pairs that will also help you with this identification process.
Note: The provided URL should be absolute and contain the protocol to use, e.g. http:// or https://. For use on mobile devices a custom protocol can be used in the form of protocol://. This protocol must be registered on the device first.
URLs without a protocol will be rejected.

Type: str

Deprecated; Use threeDSecure.redirectionData.returnUrl instead

three_d_secure
Object containing specific data regarding 3-D Secure

Type: ingenico.connect.sdk.domain.payment.definitions.three_d_secure.ThreeDSecure

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.card_payment_method_specific_input_base.CardPaymentMethodSpecificInputBase[source]

Bases: ingenico.connect.sdk.domain.payment.definitions.abstract_card_payment_method_specific_input.AbstractCardPaymentMethodSpecificInput

from_dictionary(dictionary)[source]
three_d_secure
Object containing specific data regarding 3-D Secure

Type: ingenico.connect.sdk.domain.payment.definitions.three_d_secure_base.ThreeDSecureBase

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.card_payment_method_specific_output.CardPaymentMethodSpecificOutput[source]

Bases: ingenico.connect.sdk.domain.payment.definitions.abstract_payment_method_specific_output.AbstractPaymentMethodSpecificOutput

Card payment specific response data
authorisation_code
Card Authorization code as returned by the acquirer

Type: str

card
Object containing card details

Type: ingenico.connect.sdk.domain.definitions.card_essentials.CardEssentials

fraud_results
Fraud results contained in the CardFraudResults object

Type: ingenico.connect.sdk.domain.definitions.card_fraud_results.CardFraudResults

from_dictionary(dictionary)[source]
initial_scheme_transaction_id
The unique scheme transactionId of the initial transaction that was performed with SCA.
Should be stored by the merchant to allow it to be submitted in future transactions.

Type: str

scheme_transaction_id
The unique scheme transactionId of this transaction.
Should be stored by the merchant to allow it to be submitted in future transactions. Use this value in case the initialSchemeTransactionId property is empty.

Type: str

three_d_secure_results
3D Secure results object

Type: ingenico.connect.sdk.domain.payment.definitions.three_d_secure_results.ThreeDSecureResults

to_dictionary()[source]
token
If a token was used for or created during the payment, then the ID of that token.

Type: str

class ingenico.connect.sdk.domain.payment.definitions.card_recurrence_details.CardRecurrenceDetails[source]

Bases: ingenico.connect.sdk.data_object.DataObject

end_date
Date in YYYYMMDD after which there will be no further charges.

Type: str

from_dictionary(dictionary)[source]
min_frequency
Minimum number of days between authorizations.

Type: int

recurring_payment_sequence_indicator
  • first = This transaction is the first of a series of recurring transactions
  • recurring = This transaction is a subsequent transaction in a series of recurring transactions
Note: For any first of a recurring the system will automatically create a token as you will need to use a token for any subsequent recurring transactions. In case a token already exists this is indicated in the response with a value of False for the isNewToken property in the response.

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.cash_payment_method_specific_input.CashPaymentMethodSpecificInput[source]

Bases: ingenico.connect.sdk.domain.payment.definitions.abstract_cash_payment_method_specific_input.AbstractCashPaymentMethodSpecificInput

from_dictionary(dictionary)[source]
payment_product1503_specific_input
Object that holds the specific data for Boleto Bancario in Brazil (payment product 1503)

Type: ingenico.connect.sdk.domain.payment.definitions.cash_payment_product1503_specific_input.CashPaymentProduct1503SpecificInput

Deprecated; No replacement

payment_product1504_specific_input
Object that holds the specific data for Konbini in Japan (payment product 1504)

Type: ingenico.connect.sdk.domain.payment.definitions.cash_payment_product1504_specific_input.CashPaymentProduct1504SpecificInput

payment_product1521_specific_input
Object that holds the specific data for e-Pay (payment product 1521).

Type: ingenico.connect.sdk.domain.payment.definitions.cash_payment_product1521_specific_input.CashPaymentProduct1521SpecificInput

payment_product1522_specific_input
Object that holds the specific data for Tesco - Paysbuy Cash (payment product 1522).

Type: ingenico.connect.sdk.domain.payment.definitions.cash_payment_product1522_specific_input.CashPaymentProduct1522SpecificInput

payment_product1523_specific_input
Object that holds the specific data for ATM Transfers Indonesia(payment product 1523).

Type: ingenico.connect.sdk.domain.payment.definitions.cash_payment_product1523_specific_input.CashPaymentProduct1523SpecificInput

payment_product1524_specific_input
Object that holds the specific data for DragonPay (payment product 1524).

Type: ingenico.connect.sdk.domain.payment.definitions.cash_payment_product1524_specific_input.CashPaymentProduct1524SpecificInput

payment_product1526_specific_input
Object that holds the specific data for 7-11 MOLPay Cash (payment product 1526).

Type: ingenico.connect.sdk.domain.payment.definitions.cash_payment_product1526_specific_input.CashPaymentProduct1526SpecificInput

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.cash_payment_method_specific_input_base.CashPaymentMethodSpecificInputBase[source]

Bases: ingenico.connect.sdk.domain.payment.definitions.abstract_cash_payment_method_specific_input.AbstractCashPaymentMethodSpecificInput

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.cash_payment_method_specific_output.CashPaymentMethodSpecificOutput[source]

Bases: ingenico.connect.sdk.domain.payment.definitions.abstract_payment_method_specific_output.AbstractPaymentMethodSpecificOutput

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.cash_payment_product1503_specific_input.CashPaymentProduct1503SpecificInput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

Deprecated; No replacement

from_dictionary(dictionary)[source]
return_url
The URL that the customer is redirect to after the payment flow has finished. You can add any number of key value pairs in the query string that, for instance help you to identify the customer when they return to your site. Please note that we will also append some additional key value pairs that will also help you with this identification process.
Note: The provided URL should be absolute and contain the protocol to use, e.g. http:// or https://. For use on mobile devices a custom protocol can be used in the form of protocol://. This protocol must be registered on the device first.
URLs without a protocol will be rejected.

Type: str

Deprecated; No replacement, since Boleto Bancario no longer needs a return URL

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.cash_payment_product1504_specific_input.CashPaymentProduct1504SpecificInput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
return_url
The URL that the customer is redirect to after the payment flow has finished. You can add any number of key value pairs in the query string that, for instance help you to identify the customer when they return to your site. Please note that we will also append some additional key value pairs that will also help you with this identification process.
Note: The provided URL should be absolute and contain the protocol to use, e.g. http:// or https://. For use on mobile devices a custom protocol can be used in the form of protocol://. This protocol must be registered on the device first.
URLs without a protocol will be rejected.

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.cash_payment_product1521_specific_input.CashPaymentProduct1521SpecificInput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
return_url
The URL that the customer is redirect to after the payment flow has finished. You can add any number of key value pairs in the query string that, for instance help you to identify the customer when they return to your site. Please note that we will also append some additional key value pairs that will also help you with this identification process.
Note: The provided URL should be absolute and contain the protocol to use, e.g. http:// or https://. For use on mobile devices a custom protocol can be used in the form of protocol://. This protocol must be registered on the device first.
URLs without a protocol will be rejected.

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.cash_payment_product1522_specific_input.CashPaymentProduct1522SpecificInput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
return_url
The URL that the customer is redirect to after the payment flow has finished. You can add any number of key value pairs in the query string that, for instance help you to identify the customer when they return to your site. Please note that we will also append some additional key value pairs that will also help you with this identification process.
Note: The provided URL should be absolute and contain the protocol to use, e.g. http:// or https://. For use on mobile devices a custom protocol can be used in the form of protocol://. This protocol must be registered on the device first.
URLs without a protocol will be rejected.

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.cash_payment_product1523_specific_input.CashPaymentProduct1523SpecificInput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
return_url
The URL that the customer is redirect to after the payment flow has finished. You can add any number of key value pairs in the query string that, for instance help you to identify the customer when they return to your site. Please note that we will also append some additional key value pairs that will also help you with this identification process.
Note: The provided URL should be absolute and contain the protocol to use, e.g. http:// or https://. For use on mobile devices a custom protocol can be used in the form of protocol://. This protocol must be registered on the device first.
URLs without a protocol will be rejected.

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.cash_payment_product1524_specific_input.CashPaymentProduct1524SpecificInput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
return_url
The URL that the customer is redirect to after the payment flow has finished. You can add any number of key value pairs in the query string that, for instance help you to identify the customer when they return to your site. Please note that we will also append some additional key value pairs that will also help you with this identification process.
Note: The provided URL should be absolute and contain the protocol to use, e.g. http:// or https://. For use on mobile devices a custom protocol can be used in the form of protocol://. This protocol must be registered on the device first.
URLs without a protocol will be rejected.

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.cash_payment_product1526_specific_input.CashPaymentProduct1526SpecificInput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
return_url
The URL that the customer is redirect to after the payment flow has finished. You can add any number of key value pairs in the query string that, for instance help you to identify the customer when they return to your site. Please note that we will also append some additional key value pairs that will also help you with this identification process.
Note: The provided URL should be absolute and contain the protocol to use, e.g. http:// or https://. For use on mobile devices a custom protocol can be used in the form of protocol://. This protocol must be registered on the device first.
URLs without a protocol will be rejected.

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.complete_payment_card_payment_method_specific_input.CompletePaymentCardPaymentMethodSpecificInput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

card
Object containing card details

Type: ingenico.connect.sdk.domain.definitions.card_without_cvv.CardWithoutCvv

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.contact_details.ContactDetails[source]

Bases: ingenico.connect.sdk.domain.definitions.contact_details_base.ContactDetailsBase

fax_number
Fax number of the customer

Type: str

from_dictionary(dictionary)[source]
mobile_phone_number
International version of the mobile phone number of the customer including the leading + (i.e. +16127779311)

Type: str

phone_number
Phone number of the customer

Type: str

to_dictionary()[source]
work_phone_number
International version of the work phone number of the customer including the leading + (i.e. +31235671500)

Type: str

class ingenico.connect.sdk.domain.payment.definitions.create_payment_result.CreatePaymentResult[source]

Bases: ingenico.connect.sdk.data_object.DataObject

creation_output
Object containing the details of the created payment

Type: ingenico.connect.sdk.domain.payment.definitions.payment_creation_output.PaymentCreationOutput

from_dictionary(dictionary)[source]
merchant_action
Object that contains the action, including the needed data, that you should perform next, like showing instruction, showing the transaction results or redirect to a third party to complete the payment

Type: ingenico.connect.sdk.domain.payment.definitions.merchant_action.MerchantAction

payment
Object that holds the payment related properties

Type: ingenico.connect.sdk.domain.payment.definitions.payment.Payment

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.customer.Customer[source]

Bases: ingenico.connect.sdk.domain.definitions.customer_base.CustomerBase

Object containing data related to the customer
account
Object containing data related to the account the customer has with you

Type: ingenico.connect.sdk.domain.payment.definitions.customer_account.CustomerAccount

account_type
Type of the customer account that is used to place this order. Can have one of the following values:
  • none - The account that was used to place the order with is a guest account or no account was used at all
  • created - The customer account was created during this transaction
  • existing - The customer account was an already existing account prior to this transaction

Type: str

billing_address
Object containing billing address details

Type: ingenico.connect.sdk.domain.definitions.address.Address

contact_details
Object containing contact details like email address and phone number

Type: ingenico.connect.sdk.domain.payment.definitions.contact_details.ContactDetails

device
Object containing information on the device and browser of the customer

Type: ingenico.connect.sdk.domain.payment.definitions.customer_device.CustomerDevice

fiscal_number
Fiscal registration number of the customer or the tax registration number of the company for a business customer. Please find below specifics per country:
  • Brazil - Consumer (CPF) with a length of 11 digits
  • Brazil - Company (CNPJ) with a length of 14 digits
  • Denmark - Consumer (CPR-nummer or personnummer) with a length of 10 digits
  • Finland - Consumer (Finnish: henkilötunnus (abbreviated as HETU), Swedish: personbeteckning) with a length of 11 characters
  • Norway - Consumer (fødselsnummer) with a length of 11 digits
  • Sweden - Consumer (personnummer) with a length of 10 or 12 digits

Type: str

from_dictionary(dictionary)[source]
is_previous_customer
Specifies if the customer has a history of online shopping with the merchant
  • true - The customer is a known returning customer
  • false - The customer is new/unknown customer

Type: bool

locale
The locale that the customer should be addressed in (for 3rd parties). Note that some 3rd party providers only support the languageCode part of the locale, in those cases we will only use part of the locale provided.

Type: str

personal_information
Object containing personal information like name, date of birth and gender.

Type: ingenico.connect.sdk.domain.payment.definitions.personal_information.PersonalInformation

shipping_address
Object containing shipping address details

Type: ingenico.connect.sdk.domain.payment.definitions.address_personal.AddressPersonal

Deprecated; Use Order.shipping.address instead

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.customer_account.CustomerAccount[source]

Bases: ingenico.connect.sdk.data_object.DataObject

Object containing data related to the account the customer has with you
authentication
Object containing data on the authentication used by the customer to access their account

Type: ingenico.connect.sdk.domain.payment.definitions.customer_account_authentication.CustomerAccountAuthentication

change_date
The last date (YYYYMMDD) on which the customer made changes to their account with you. These are changes to billing & shipping address details, new payment account (tokens), or new users(s) added.

Type: str

changed_during_checkout
true = the customer made changes to their account during this checkout
false = the customer didn’t change anything to their account during this checkout/n
The changes ment here are changes to billing & shipping address details, new payment account (tokens), or new users(s) added.

Type: bool

create_date
The date (YYYYMMDD) on which the customer created their account with you

Type: str

from_dictionary(dictionary)[source]
had_suspicious_activity
Specifies if you have experienced suspicious activity on the account of the customer
true = you have experienced suspicious activity (including previous fraud) on the customer account used for this transaction
false = you have experienced no suspicious activity (including previous fraud) on the customer account used for this transaction

Type: bool

has_forgotten_password
Specifies if the customer (initially) had forgotten their password
  • true - The customer has forgotten their password
  • false - The customer has not forgotten their password

Type: bool

has_password
Specifies if the customer entered a password to gain access to an account registered with the you
  • true - The customer has used a password to gain access
  • false - The customer has not used a password to gain access

Type: bool

password_change_date
The last date (YYYYMMDD) on which the customer changed their password for the account used in this transaction

Type: str

password_changed_during_checkout
Indicates if the password of an account is changed during this checkout
true = the customer made changes to their password of the account used during this checkout
alse = the customer didn’t change anything to their password of the account used during this checkout

Type: bool

payment_account_on_file
Object containing information on the payment account data on file (tokens)

Type: ingenico.connect.sdk.domain.payment.definitions.payment_account_on_file.PaymentAccountOnFile

payment_account_on_file_type
Indicates the type of account. For example, for a multi-account card product.
  • not-applicable = the card used doesn’t support multiple card products
  • credit = the card used is a credit card
  • debit = the card used is a debit card

Type: str

payment_activity
Object containing data on the purchase history of the customer with you

Type: ingenico.connect.sdk.domain.payment.definitions.customer_payment_activity.CustomerPaymentActivity

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.customer_account_authentication.CustomerAccountAuthentication[source]

Bases: ingenico.connect.sdk.data_object.DataObject

Object containing data on the authentication used by the customer to access their account
from_dictionary(dictionary)[source]
method
Authentication used by the customer on your website
Possible values :
  • guest = no login occurred, customer is ‘logged in’ as guest
  • merchant-credentials = the customer logged in using credentials that are specific to you
  • federated-id = the customer logged in using a federated ID
  • issuer-credentials = the customer logged in using credentials from the card issuer (of the card used in this transaction)
  • third-party-authentication = the customer logged in using third-party authentication
  • fido-authentication = the customer logged in using a FIDO authenticator

Type: str

to_dictionary()[source]
utc_timestamp
Timestamp (YYYYMMDDHHmm) of the authentication of the customer to their account with you

Type: str

class ingenico.connect.sdk.domain.payment.definitions.customer_approve_payment.CustomerApprovePayment[source]

Bases: ingenico.connect.sdk.data_object.DataObject

account_type
Type of the customer account that is used to place this order. Can have one of the following values:
  • none - The account that was used to place the order is a guest account or no account was used at all
  • created - The customer account was created during this transaction
  • existing - The customer account was an already existing account prior to this transaction

Type: str

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.customer_device.CustomerDevice[source]

Bases: ingenico.connect.sdk.data_object.DataObject

Object containing information on the device and browser of the customer
accept_header
The accept-header of the customer client from the HTTP Headers.

Type: str

browser_data
Object containing information regarding the browser of the customer

Type: ingenico.connect.sdk.domain.payment.definitions.browser_data.BrowserData

default_form_fill
Degree of default form fill, with the following possible values:
  • automatically - All fields filled automatically
  • automatically-but-modified - All fields filled automatically, but some fields were modified manually
  • manually - All fields were entered manually

Type: str

device_fingerprint_transaction_id
One must set the deviceFingerprintTransactionId received by the response of the endpoint /{merchant}/products/{paymentProductId}/deviceFingerprint

Type: str

from_dictionary(dictionary)[source]
ip_address
The IP address of the customer client from the HTTP Headers.

Type: str

locale
Locale of the client device/browser. Returned in the browser from the navigator.language property.
If you use the latest version of our JavaScript Client SDK, we will collect this data and include it in the encryptedCustomerInput property. We will then automatically populate this data if available.

Type: str

timezone_offset_utc_minutes
Offset in minutes of timezone of the client versus the UTC. Value is returned by the JavaScript getTimezoneOffset() Method.
If you use the latest version of our JavaScript Client SDK, we will collect this data and include it in the encryptedCustomerInput property. We will then automatically populate this data if available.

Type: str

to_dictionary()[source]
user_agent
User-Agent of the client device/browser from the HTTP Headers.
As a fall-back we will use the userAgent that might be included in the encryptedCustomerInput, but this is captured client side using JavaScript and might be different.

Type: str

class ingenico.connect.sdk.domain.payment.definitions.customer_payment_activity.CustomerPaymentActivity[source]

Bases: ingenico.connect.sdk.data_object.DataObject

Object containing data on the purchase history of the customer with you
from_dictionary(dictionary)[source]
number_of_payment_attempts_last24_hours
Number of payment attempts (so including unsuccessful ones) made by this customer with you in the last 24 hours

Type: int

number_of_payment_attempts_last_year
Number of payment attempts (so including unsuccessful ones) made by this customer with you in the last 12 months

Type: int

number_of_purchases_last6_months
Number of successful purchases made by this customer with you in the last 6 months

Type: int

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.decrypted_payment_data.DecryptedPaymentData[source]

Bases: ingenico.connect.sdk.data_object.DataObject

cardholder_name
Card holder’s name on the card.
  • For Apple Pay, maps to the cardholderName property in the encrypted payment data.
  • For Google Pay this is not available in the encrypted payment data, and can be omitted.

Type: str

cryptogram
The 3D secure online payment cryptogram.
  • For Apple Pay, maps to the paymentData.onlinePaymentCryptogram property in the encrypted payment data.
  • For Google Pay, maps to the paymentMethodDetails.3dsCryptogram property in the encrypted payment data.
Not allowed for Google Pay if the paymentMethod is CARD.

Type: str

dpan
The device specific PAN.
  • For Apple Pay, maps to the applicationPrimaryAccountNumber property in the encrypted payment data.
  • For Google Pay, maps to the paymentMethodDetails.dpan property in the encrypted payment data.
Not allowed for Google Pay if the paymentMethod is CARD.

Type: str

eci
Electronic Commerce Indicator.
  • For Apple Pay, maps to the paymentData.eciIndicator property in the encrypted payment data.
  • For Google Pay, maps to the paymentMethodDetails.3dsEciIndicator property in the encryted payment data.
Not allowed for Google Pay if the paymentMethod is CARD.

Type: int

expiry_date
Expiry date of the card
Format: MMYY.
  • For Apple Pay, maps to the applicationExpirationDate property in the encrypted payment data. This property is formatted as YYMMDD, so this needs to be converted to get a correctly formatted expiry date.
  • For Google Pay, maps to the paymentMethodDetails.expirationMonth and paymentMethodDetails.expirationYear properties in the encrypted payment data. These need to be combined to get a correctly formatted expiry date.

Type: str

from_dictionary(dictionary)[source]
pan
The non-device specific complete credit/debit card number (also know as the PAN).
  • For Apple Pay this is not available in the encrypted payment data, and must be omitted.
  • For Google Pay, maps to the paymentMethodDetails.pan property in the encrypted payment data.
Not allowed for Google Pay if the paymentMethod is TOKENIZED_CARD.

Type: str

payment_method
The type of the payment credential: either CARD or TOKENIZED_CARD.
  • For Apple Pay this is not available in the encrypted payment data, and must be omitted.
  • For Google Pay, maps to the paymentMethod property in the encrypted payment data.

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.device_render_options.DeviceRenderOptions[source]

Bases: ingenico.connect.sdk.data_object.DataObject

Object containing rendering options of the device
from_dictionary(dictionary)[source]
sdk_interface
Lists all of the SDK Interface types that the device supports for displaying specific challenge user interfaces within the SDK.
  • native = The app supports only a native user interface
  • html = The app supports only an HTML user interface
  • both = Both Native and HTML user interfaces are supported by the app

Type: str

sdk_ui_type
Lists all UI types that the device supports for displaying specific challenge user interfaces within the SDK.
  • text = Text interface
  • single-select = Select a single option
  • multi-select = Select multiple options
  • oob = Out of ounds
  • html-other = HTML Other (only valid when cardPaymentMethodSpecificInput.threeDSecure.sdkData.deviceRenderOptions.sdkInterface is set to html)

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.e_invoice_payment_method_specific_input.EInvoicePaymentMethodSpecificInput[source]

Bases: ingenico.connect.sdk.domain.payment.definitions.abstract_e_invoice_payment_method_specific_input.AbstractEInvoicePaymentMethodSpecificInput

accepted_terms_and_conditions
Indicates that the customer has read and accepted the terms and conditions of the product before proceeding with the payment. This must be done before the payment can continue. An URL to the terms and conditions can be retrieved with Get payment product <https://epayments-api.developer-ingenico.com/s2sapi/v1/en_US/python/products/get.html>.

Type: bool

from_dictionary(dictionary)[source]
payment_product9000_specific_input
Object that holds the specific data for AfterPay Installments (payment product 9000).

Type: ingenico.connect.sdk.domain.payment.definitions.e_invoice_payment_product9000_specific_input.EInvoicePaymentProduct9000SpecificInput

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.e_invoice_payment_method_specific_input_base.EInvoicePaymentMethodSpecificInputBase[source]

Bases: ingenico.connect.sdk.domain.payment.definitions.abstract_e_invoice_payment_method_specific_input.AbstractEInvoicePaymentMethodSpecificInput

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.e_invoice_payment_method_specific_output.EInvoicePaymentMethodSpecificOutput[source]

Bases: ingenico.connect.sdk.domain.payment.definitions.abstract_payment_method_specific_output.AbstractPaymentMethodSpecificOutput

E-invoice payment specific response data
from_dictionary(dictionary)[source]
payment_product9000_specific_output
AfterPay Installments (payment product 9000) specific details

Type: ingenico.connect.sdk.domain.payment.definitions.e_invoice_payment_product9000_specific_output.EInvoicePaymentProduct9000SpecificOutput

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.e_invoice_payment_product9000_specific_input.EInvoicePaymentProduct9000SpecificInput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

bank_account_iban
Object containing the bank account details of the customer.

Type: ingenico.connect.sdk.domain.definitions.bank_account_iban.BankAccountIban

from_dictionary(dictionary)[source]
installment_id
The ID of the installment plan selected by the customer. Installment plans can be retrieved with Get payment product <https://epayments-api.developer-ingenico.com/s2sapi/v1/en_US/python/products/get.html>.

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.e_invoice_payment_product9000_specific_output.EInvoicePaymentProduct9000SpecificOutput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
installment_id
The ID of the installment plan used for the payment.

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.external_cardholder_authentication_data.ExternalCardholderAuthenticationData[source]

Bases: ingenico.connect.sdk.data_object.DataObject

Object containing 3D secure details.
cavv
The CAVV (cardholder authentication verification value) or AAV (accountholder authentication value) provides an authentication validation value.

Type: str

cavv_algorithm
The algorithm, from your 3D Secure provider, used to generate the authentication CAVV.

Type: str

directory_server_transaction_id
The 3-D Secure Directory Server transaction ID that is used for the 3D Authentication

Type: str

eci
Electronic Commerce Indicator provides authentication validation results returned after AUTHENTICATIONVALIDATION
  • 0 = No authentication, Internet (no liability shift, not a 3D Secure transaction)
  • 1 = Authentication attempted (MasterCard)
  • 2 = Successful authentication (MasterCard)
  • 5 = Successful authentication (Visa, Diners Club, Amex)
  • 6 = Authentication attempted (Visa, Diners Club, Amex)
  • 7 = No authentication, Internet (no liability shift, not a 3D Secure transaction)
  • (empty) = Not checked or not enrolled

Type: int

from_dictionary(dictionary)[source]
three_d_secure_version
The 3-D Secure version used for the authentication. Possible values:
  • v1
  • v2
  • 1.0.2
  • 2.1.0
  • 2.2.0

Type: str

three_d_server_transaction_id
The 3-D Secure Server transaction ID that is used for the 3-D Secure version 2 Authentication.

Type: str

to_dictionary()[source]
validation_result
The 3D Secure authentication result from your 3D Secure provider.

Type: str

xid
The transaction ID that is used for the 3D Authentication

Type: str

class ingenico.connect.sdk.domain.payment.definitions.gift_card_purchase.GiftCardPurchase[source]

Bases: ingenico.connect.sdk.data_object.DataObject

Object containing information on purchased gift card(s)
amount_of_money
Object containing information on an amount of money

Type: ingenico.connect.sdk.domain.definitions.amount_of_money.AmountOfMoney

from_dictionary(dictionary)[source]
number_of_gift_cards
Number of gift cards that are purchased through this transaction

Type: int

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.hosted_checkout_specific_output.HostedCheckoutSpecificOutput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
hosted_checkout_id
The ID of the Hosted Checkout Session in which the payment was made.

Type: str

to_dictionary()[source]
variant
Using the Configuration Center it is possible to create multiple variations of your MyCheckout payment pages. By specifying a specific variant you can force the use of another variant then the default. This allows you to test out the effect of certain changes to your hosted mandate pages in a controlled manner. Please note that you need to specify the ID of the variant.

Type: str

class ingenico.connect.sdk.domain.payment.definitions.invoice_payment_method_specific_input.InvoicePaymentMethodSpecificInput[source]

Bases: ingenico.connect.sdk.domain.definitions.abstract_payment_method_specific_input.AbstractPaymentMethodSpecificInput

additional_reference
Your (additional) reference identifier for this transaction. Data supplied in this property will also be returned in our report files, allowing you to reconcile the incoming funds.

Type: str

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.invoice_payment_method_specific_output.InvoicePaymentMethodSpecificOutput[source]

Bases: ingenico.connect.sdk.domain.payment.definitions.abstract_payment_method_specific_output.AbstractPaymentMethodSpecificOutput

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.level3_summary_data.Level3SummaryData[source]

Bases: ingenico.connect.sdk.data_object.DataObject

Deprecated; Use ShoppingCart.amountBreakdown instead

discount_amount
Discount on the entire transaction, with the last 2 digits are implied decimal places

Type: long

Deprecated; Use ShoppingCart.amountBreakdown with type DISCOUNT instead

duty_amount
Duty on the entire transaction, with the last 2 digits are implied decimal places

Type: long

Deprecated; Use ShoppingCart.amountBreakdown with type DUTY instead

from_dictionary(dictionary)[source]
shipping_amount
Shippingcost on the entire transaction, with the last 2 digits are implied decimal places

Type: long

Deprecated; Use ShoppingCart.amountBreakdown with type SHIPPING instead

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.line_item.LineItem[source]

Bases: ingenico.connect.sdk.data_object.DataObject

amount_of_money
Object containing amount and ISO currency code attributes
Note: make sure you submit the amount and currency code for each line item

Type: ingenico.connect.sdk.domain.definitions.amount_of_money.AmountOfMoney

from_dictionary(dictionary)[source]
invoice_data
Object containing the line items of the invoice or shopping cart

Type: ingenico.connect.sdk.domain.payment.definitions.line_item_invoice_data.LineItemInvoiceData

level3_interchange_information
Object containing additional information that when supplied can have a beneficial effect on the discountrates

Type: ingenico.connect.sdk.domain.payment.definitions.line_item_level3_interchange_information.LineItemLevel3InterchangeInformation

Deprecated; Use orderLineDetails instead

order_line_details
Object containing additional information that when supplied can have a beneficial effect on the discountrates

Type: ingenico.connect.sdk.domain.payment.definitions.order_line_details.OrderLineDetails

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.line_item_invoice_data.LineItemInvoiceData[source]

Bases: ingenico.connect.sdk.data_object.DataObject

description
Shopping cart item description

Type: str

from_dictionary(dictionary)[source]
merchant_linenumber
Line number for printed invoice or order of items in the cart
Should be a numeric string

Type: str

merchant_pagenumber
Page number for printed invoice
Should be a numeric string

Type: str

nr_of_items
Quantity of the item

Type: str

price_per_item
Price per item

Type: long

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.line_item_level3_interchange_information.LineItemLevel3InterchangeInformation[source]

Bases: ingenico.connect.sdk.data_object.DataObject

discount_amount
Discount on the line item, with the last two digits are implied decimal places

Type: long

from_dictionary(dictionary)[source]
line_amount_total
Total amount for the line item

Type: long

product_code
Product or UPC Code, left justified
Note: Must not be all spaces or all zeros

Type: str

product_price
The price of one unit of the product, the value should be zero or greater

Type: long

product_type
Code used to classify items that are purchased
Note: Must not be all spaces or all zeros

Type: str

quantity
Quantity of the units being purchased, should be greater than zero
Note: Must not be all spaces or all zeros

Type: long

tax_amount
Tax on the line item, with the last two digits are implied decimal places

Type: long

to_dictionary()[source]
unit
Indicates the line item unit of measure; for example: each, kit, pair, gallon, month, etc.

Type: str

class ingenico.connect.sdk.domain.payment.definitions.loan_recipient.LoanRecipient[source]

Bases: ingenico.connect.sdk.data_object.DataObject

account_number
Should be filled with the last 10 digits of the bank account number of the recipient of the loan.

Type: str

date_of_birth
The date of birth of the customer of the recipient of the loan.
Format: YYYYMMDD

Type: str

from_dictionary(dictionary)[source]
partial_pan
Should be filled with the first 6 and last 4 digits of the PAN number of the recipient of the loan.

Type: str

surname
Surname of the recipient of the loan.

Type: str

to_dictionary()[source]
zip
Zip code of the recipient of the loan

Type: str

class ingenico.connect.sdk.domain.payment.definitions.merchant.Merchant[source]

Bases: ingenico.connect.sdk.data_object.DataObject

contact_website_url
URL to find contact or support details to contact in case of questions.

Type: str

from_dictionary(dictionary)[source]
seller
Object containing seller details

Type: ingenico.connect.sdk.domain.payment.definitions.seller.Seller

to_dictionary()[source]
website_url
The website from which the purchase was made

Type: str

class ingenico.connect.sdk.domain.payment.definitions.merchant_action.MerchantAction[source]

Bases: ingenico.connect.sdk.data_object.DataObject

action_type
Action merchants needs to take in the online payment process. Possible values are:
  • REDIRECT - The customer needs to be redirected using the details found in redirectData
  • SHOW_FORM - The customer needs to be shown a form with the fields found in formFields. You can submit the data entered by the user in a Complete payment <https://epayments-api.developer-ingenico.com/s2sapi/v1/en_US/python/payments/complete.html> request. Additionally:
  • for payment product 3012 (Bancontact), to support payments via the Bancontact app, showData contains a QR code and URL intent.
  • for payment product 863 (WeChat Pay), to support payments via the WeChat app, showData contains a QR code, URL intent, or signature and nonce combination. The showData property describes when each of these values can be returned.
Note that WeChat Pay does not support completing payments.
  • SHOW_INSTRUCTIONS - The customer needs to be shown payment instruction using the details found in showData. Alternatively the instructions can be rendered by us using the instructionsRenderingData
  • SHOW_TRANSACTION_RESULTS - The customer needs to be shown the transaction results using the details found in showData. Alternatively the instructions can be rendered by us using the instructionsRenderingData
  • MOBILE_THREEDS_CHALLENGE - The customer needs to complete a challenge as part of the 3D Secure authentication inside your mobile app. The details contained in mobileThreeDSecureChallengeParameters need to be provided to the EMVco certified Mobile SDK as a challengeParameters object.
  • CALL_THIRD_PARTY - The merchant needs to call a third party using the data found in thirdPartyData

Type: str

form_fields
Populated only when the actionType of the merchantAction is SHOW_FORM. In this case, this property contains the list of fields to render, in the format that is also used in the response of Get payment product <https://epayments-api.developer-ingenico.com/s2sapi/v1/en_US/python/products/get.html>.

Type: list[ingenico.connect.sdk.domain.product.definitions.payment_product_field.PaymentProductField]

from_dictionary(dictionary)[source]
mobile_three_d_secure_challenge_parameters
Populated only when the actionType of the merchantAction is MOBILE_THREEDS_CHALLENGE. In this case, this object contains the list of properties to provide to the EMVco certified Mobile SDK as a challengeParameters object.

Type: ingenico.connect.sdk.domain.payment.definitions.mobile_three_d_secure_challenge_parameters.MobileThreeDSecureChallengeParameters

redirect_data
Object containing all data needed to redirect the customer

Type: ingenico.connect.sdk.domain.payment.definitions.redirect_data.RedirectData

rendering_data
This property contains the blob with data for the instructions rendering service.
This service will be available at the following endpoint:http(s)://{{merchant specific subdomain}}.{{base MyCheckout hosted payment pages domain}}/instructions/{{merchantId}}/{{clientSessionId}}
This instructions page rendering service accepts the following parameters:
  • instructionsRenderingData (required, the content of this property)
  • locale (optional, if present overrides default locale, e.g. “en_GB”)
  • variant (optional, code of a variant, if present overrides default variant, e.g. “100”)
You can offer a link to a customer to see an instructions page for a payment done earlier. Because of the size of the instructionsRenderingData this will need to be set in a web form as a value of a hidden field. Before presenting the link you need to obtain a clientSessionId by creating a session using the S2S API. You will need to use the MyCheckout hosted payment pages domain hosted in the same region as the API domain used for the createClientSession call.
The instructionsRenderingData is a String blob that is presented to you via the Server API as part of the merchantAction (if available, and non-redirect) in the JSON return values for the createPayment call or the getHostedCheckoutStatus call (merchantAction inside createdPaymentOutput when available).You are responsible to store the instructionsRenderingData blob in order to be able to present the instructions page at a later time, when this information might no longer be available through Server API calls.

Type: str

show_data
This is returned for the SHOW_INSTRUCTION, the SHOW_TRANSACTION_RESULTS and the SHOW_FORM actionType.
When returned for SHOW_TRANSACTION_RESULTS or SHOW_FORM, this contains an array of key value pairs of data that needs to be shown to the customer.
Note: The returned value for the key BARCODE is a base64 encoded gif image. By prepending ‘data:image/gif;base64,’ this value can be used as the source of an HTML inline image.
For SHOW_FORM, for payment product 3012 (Bancontact), this contains a QR code and a URL intent that can be used to complete the payment in the Bancontact app.
In this case, the key QRCODE contains a base64 encoded PNG image. By prepending ‘data:image/png;base64,’ this value can be used as the source of an HTML inline image on a desktop or tablet (intended to be scanned by an Android device with the Bancontact app). The key URLINTENT contains a URL intent that can be used as the link of an ‘open the app’ button on an Android device.
For SHOW_FORM, for payment product 863 (WeChat Pay), this contains the PaymentId that WeChat has assigned to the payment. In this case, the key WECHAT_PAYMENTID contains this PaymentId. In addition, this can contain different values depending on the integration type:
  • desktopQRCode - contains a QR code that can be used to complete the payment in the WeChat app. In this case, the key QRCODE contains a base64 encoded PNG image. By prepending ‘data:image/png;base64,’ this value can be used as the source of an HTML inline image on a desktop or tablet (intended to be scanned by a mobile device with the WeChat app).
  • urlIntent - contains a URL intent that can be used to complete the payment in the WeChat app. In this case, the key URLINTENT contains a URL intent that can be used as the link of an ‘open the app’ button on a mobile device.

Type: list[ingenico.connect.sdk.domain.definitions.key_value_pair.KeyValuePair]

third_party_data
This is returned for the CALL_THIRD_PARTY actionType.
The payment product specific field of the payment product used for the payment will be populated with the third party data that should be used when calling the third party.

Type: ingenico.connect.sdk.domain.payment.definitions.third_party_data.ThirdPartyData

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.mobile_payment_data.MobilePaymentData[source]

Bases: ingenico.connect.sdk.data_object.DataObject

dpan
The obfuscated DPAN. Only the last four digits are visible.

Type: str

expiry_date
Expiry date of the tokenized card
Format: MMYY

Type: str

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.mobile_payment_method_specific_input.MobilePaymentMethodSpecificInput[source]

Bases: ingenico.connect.sdk.domain.definitions.abstract_payment_method_specific_input.AbstractPaymentMethodSpecificInput

authorization_mode
Determines the type of the authorization that will be used. Allowed values:
  • FINAL_AUTHORIZATION - The payment creation results in an authorization that is ready for capture. Final authorizations can’t be reversed and need to be captured for the full amount within 7 days.
  • PRE_AUTHORIZATION - The payment creation results in a pre-authorization that is ready for capture. Pre-authortizations can be reversed and can be captured within 30 days. The capture amount can be lower than the authorized amount.
  • SALE - The payment creation results in an authorization that is already captured at the moment of approval.
Only used with some acquirers, ingnored for acquirers that don’t support this. In case the acquirer doesn’t allow this to be specified the authorizationMode is ‘unspecified’, which behaves similar to a final authorization.

Type: str

decrypted_payment_data
The payment data if you do the decryption of the encrypted payment data yourself.

Type: ingenico.connect.sdk.domain.payment.definitions.decrypted_payment_data.DecryptedPaymentData

encrypted_payment_data
The payment data if we will do the decryption of the encrypted payment data.
Typically you’d use encryptedCustomerInput in the root of the create payment request to provide the encrypted payment data instead.

Type: str

from_dictionary(dictionary)[source]
requires_approval

Type: bool

skip_fraud_service
  • true = Fraud scoring will be skipped for this transaction
  • false = Fraud scoring will not be skipped for this transaction
Note: This is only possible if your account in our system is setup for Fraud scoring and if your configuration in our system allows you to override it per transaction.

Type: bool

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.mobile_payment_method_specific_output.MobilePaymentMethodSpecificOutput[source]

Bases: ingenico.connect.sdk.domain.payment.definitions.abstract_payment_method_specific_output.AbstractPaymentMethodSpecificOutput

authorisation_code
Card Authorization code as returned by the acquirer

Type: str

fraud_results
Fraud results contained in the CardFraudResults object

Type: ingenico.connect.sdk.domain.definitions.card_fraud_results.CardFraudResults

from_dictionary(dictionary)[source]
network
The network that was used for the refund

Type: str

payment_data
Object containing payment details

Type: ingenico.connect.sdk.domain.payment.definitions.mobile_payment_data.MobilePaymentData

three_d_secure_results
3D Secure results object

Type: ingenico.connect.sdk.domain.payment.definitions.three_d_secure_results.ThreeDSecureResults

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.mobile_three_d_secure_challenge_parameters.MobileThreeDSecureChallengeParameters[source]

Bases: ingenico.connect.sdk.data_object.DataObject

acs_reference_number
The unique identifier assigned by the EMVCo Secretariat upon testing and approval.

Type: str

acs_signed_content
Contains the JWS object created by the ACS for the challenge (ARes).

Type: str

acs_transaction_id
The ACS Transaction ID for a prior 3-D Secure authenticated transaction (for example, the first recurring transaction that was authenticated with the customer).

Type: str

from_dictionary(dictionary)[source]
three_d_server_transaction_id
The 3-D Secure version 2 transaction ID that is used for the 3D Authentication

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.non_sepa_direct_debit_payment_method_specific_input.NonSepaDirectDebitPaymentMethodSpecificInput[source]

Bases: ingenico.connect.sdk.domain.definitions.abstract_payment_method_specific_input.AbstractPaymentMethodSpecificInput

date_collect
Direct Debit payment collection date
Format: YYYYMMDD

Type: str

direct_debit_text
Descriptor intended to identify the transaction on the customer’s bank statement

Type: str

from_dictionary(dictionary)[source]
is_recurring
Indicates if this transaction is of a one-off or a recurring type
  • true - This is recurring
  • false - This is one-off

Type: bool

payment_product705_specific_input
Object containing UK Direct Debit specific details

Type: ingenico.connect.sdk.domain.payment.definitions.non_sepa_direct_debit_payment_product705_specific_input.NonSepaDirectDebitPaymentProduct705SpecificInput

payment_product730_specific_input
Object containing ACH specific details

Type: ingenico.connect.sdk.domain.payment.definitions.non_sepa_direct_debit_payment_product730_specific_input.NonSepaDirectDebitPaymentProduct730SpecificInput

recurring_payment_sequence_indicator
  • first = This transaction is the first of a series of recurring transactions
  • recurring = This transaction is a subsequent transaction in a series of recurring transactions
  • last = This transaction is the last transaction of a series of recurring transactions

Type: str

to_dictionary()[source]
token
ID of the stored token that contains the bank account details to be debited

Type: str

tokenize
Indicates if this transaction should be tokenized
  • true - Tokenize the transaction
  • false - Do not tokenize the transaction, unless it would be tokenized by other means such as auto-tokenization of recurring payments.

Type: bool

class ingenico.connect.sdk.domain.payment.definitions.non_sepa_direct_debit_payment_method_specific_output.NonSepaDirectDebitPaymentMethodSpecificOutput[source]

Bases: ingenico.connect.sdk.domain.payment.definitions.abstract_payment_method_specific_output.AbstractPaymentMethodSpecificOutput

fraud_results
Object containing the results of the fraud screening

Type: ingenico.connect.sdk.domain.definitions.fraud_results.FraudResults

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.non_sepa_direct_debit_payment_product705_specific_input.NonSepaDirectDebitPaymentProduct705SpecificInput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

UK Direct Debit specific input fields
authorisation_id
Core reference number for the direct debit instruction in UK

Type: str

bank_account_bban
Object containing account holder name and bank account information

Type: ingenico.connect.sdk.domain.definitions.bank_account_bban.BankAccountBban

from_dictionary(dictionary)[source]
to_dictionary()[source]
transaction_type
  • first-payment - First payment direct debit
  • nth-payment - Direct Debit (n-th payment)
  • re-presented - Re-presented direct debit (after failed attempt)
  • final-payment - Final payment direct debit
  • new-or-reinstated - (zero N) New or reinstated direct debit instruction
  • cancellation - (zero C) Cancellation of direct debit instruction
  • conversion-of-paper-DDI-to-electronic-DDI - (zero S) Conversion of paper DDI to electronic DDI (only used once, when migrating from traditional direct debit to AUDDIS

Type: str

class ingenico.connect.sdk.domain.payment.definitions.non_sepa_direct_debit_payment_product730_specific_input.NonSepaDirectDebitPaymentProduct730SpecificInput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

ACH specific input fields
bank_account_bban
Object containing account holder name and bank account information

Type: ingenico.connect.sdk.domain.definitions.bank_account_bban.BankAccountBban

from_dictionary(dictionary)[source]
to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.order.Order[source]

Bases: ingenico.connect.sdk.data_object.DataObject

additional_input
Object containing additional input on the order

Type: ingenico.connect.sdk.domain.payment.definitions.additional_order_input.AdditionalOrderInput

amount_of_money
Object containing amount and ISO currency code attributes

Type: ingenico.connect.sdk.domain.definitions.amount_of_money.AmountOfMoney

customer
Object containing the details of the customer

Type: ingenico.connect.sdk.domain.payment.definitions.customer.Customer

from_dictionary(dictionary)[source]
items
Shopping cart data

Type: list[ingenico.connect.sdk.domain.payment.definitions.line_item.LineItem]

Deprecated; Use shoppingCart.items instead

references
Object that holds all reference properties that are linked to this transaction

Type: ingenico.connect.sdk.domain.payment.definitions.order_references.OrderReferences

seller
Object containing seller details

Type: ingenico.connect.sdk.domain.payment.definitions.seller.Seller

Deprecated; Use Merchant.seller instead

shipping
Object containing information regarding shipping / delivery

Type: ingenico.connect.sdk.domain.payment.definitions.shipping.Shipping

shopping_cart
Shopping cart data, including items and specific amounts.

Type: ingenico.connect.sdk.domain.payment.definitions.shopping_cart.ShoppingCart

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.order_approve_payment.OrderApprovePayment[source]

Bases: ingenico.connect.sdk.data_object.DataObject

additional_input
Object containing additional input on the order

Type: ingenico.connect.sdk.domain.definitions.additional_order_input_airline_data.AdditionalOrderInputAirlineData

customer
Object containing data related to the customer

Type: ingenico.connect.sdk.domain.payment.definitions.customer_approve_payment.CustomerApprovePayment

from_dictionary(dictionary)[source]
references
Object that holds all reference properties that are linked to this transaction

Type: ingenico.connect.sdk.domain.payment.definitions.order_references_approve_payment.OrderReferencesApprovePayment

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.order_invoice_data.OrderInvoiceData[source]

Bases: ingenico.connect.sdk.data_object.DataObject

additional_data
Additional data for printed invoices

Type: str

from_dictionary(dictionary)[source]
invoice_date
Date and time on invoice
Format: YYYYMMDDHH24MISS

Type: str

invoice_number
Your invoice number (on printed invoice) that is also returned in our report files

Type: str

text_qualifiers
Array of 3 text qualifiers, each with a max length of 10 characters

Type: list[str]

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.order_line_details.OrderLineDetails[source]

Bases: ingenico.connect.sdk.data_object.DataObject

discount_amount
Discount on the line item, with the last two digits implied as decimal places

Type: long

from_dictionary(dictionary)[source]
google_product_category_id
The Google product category ID for the item.

Type: long

line_amount_total
Total amount for the line item

Type: long

product_category
The category of the product (i.e. home appliance). This property can be used for fraud screening on the Ogone Platform.

Type: str

product_code
Product or UPC Code, left justified
Note: Must not be all spaces or all zeros

Type: str

product_name
The name of the product.

Type: str

product_price
The price of one unit of the product, the value should be zero or greater

Type: long

product_type
Code used to classify items that are purchased
Note: Must not be all spaces or all zeros

Type: str

quantity
Quantity of the units being purchased, should be greater than zero
Note: Must not be all spaces or all zeros

Type: long

tax_amount
Tax on the line item, with the last two digits implied as decimal places

Type: long

to_dictionary()[source]
unit
Indicates the line item unit of measure; for example: each, kit, pair, gallon, month, etc.

Type: str

class ingenico.connect.sdk.domain.payment.definitions.order_output.OrderOutput[source]

Bases: ingenico.connect.sdk.data_object.DataObject

amount_of_money
Object containing amount and ISO currency code attributes

Type: ingenico.connect.sdk.domain.definitions.amount_of_money.AmountOfMoney

from_dictionary(dictionary)[source]
references
Object that holds all reference properties that are linked to this transaction

Type: ingenico.connect.sdk.domain.payment.definitions.payment_references.PaymentReferences

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.order_references.OrderReferences[source]

Bases: ingenico.connect.sdk.data_object.DataObject

descriptor
Descriptive text that is used towards to customer, either during an online checkout at a third party and/or on the statement of the customer. For card transactions this is usually referred to as a Soft Descriptor. The maximum allowed length varies per card acquirer:
  • AIB - 22 characters
  • American Express - 25 characters
  • Atos Origin BNP - 15 characters
  • Barclays - 25 characters
  • Catella - 22 characters
  • CBA - 20 characters
  • Elavon - 25 characters
  • First Data - 25 characters
  • INICIS (INIPAY) - 22-30 characters
  • JCB - 25 characters
  • Merchant Solutions - 22-25 characters
  • Payvision (EU & HK) - 25 characters
  • SEB Euroline - 22 characters
  • Sub1 Argentina - 15 characters
  • Wells Fargo - 25 characters
Note that we advise you to use 22 characters as the max length as beyond this our experience is that issuers will start to truncate. We currently also only allow per API call overrides for AIB and Barclays
For alternative payment products the maximum allowed length varies per payment product:
  • 402 e-Przelewy - 30 characters
  • 404 INICIS - 80 characters
  • 802 Nordea ePayment Finland - 234 characters
  • 809 iDeal - 32 characters
  • 836 SOFORT - 42 characters
  • 840 PayPal - 127 characters
  • 841 WebMoney - 175 characters
  • 849 Yandex - 64 characters
  • 861 Alipay - 256 characters
  • 863 WeChat Pay - 32 characters
  • 880 BOKU - 20 characters
  • 8580 Qiwi - 255 characters
  • 1504 Konbini - 80 characters
All other payment products don’t support a descriptor.

Type: str

from_dictionary(dictionary)[source]
invoice_data
Object containing additional invoice data

Type: ingenico.connect.sdk.domain.payment.definitions.order_invoice_data.OrderInvoiceData

merchant_order_id
Your order identifier
Note: This does not need to have a unique value for each transaction. This allows your to link multiple transactions to the same logical order in your system.

Type: long

merchant_reference
Note that the maximum length of this field for transactions processed on the GlobalCollect platform is 30. Your unique reference of the transaction that is also returned in our report files. This is almost always used for your reconciliation of our report files.

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.order_references_approve_payment.OrderReferencesApprovePayment[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
merchant_reference
Your (unique) reference for the transaction that you can use to reconcile our report files

Type: str

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.order_type_information.OrderTypeInformation[source]

Bases: ingenico.connect.sdk.data_object.DataObject

from_dictionary(dictionary)[source]
purchase_type
Possible values are:
  • physical
  • digital

Type: str

to_dictionary()[source]
transaction_type
Identifies the type of transaction being authenticated.Possible values are:
  • purchase = The purpose of the transaction is to purchase goods or services
  • check-acceptance = The purpose of the transaction is to accept a ‘check’/’cheque’
  • account-funding = The purpose of the transaction is to fund an account
  • quasi-cash = The purpose of the transaction is to buy a quasi cash type product that is representative of actual cash such as money orders, traveler’s checks, foreign currency, lottery tickets or casino gaming chips
  • prepaid-activation-or-load = The purpose of the transaction is to activate or load a prepaid card

Type: str

usage_type
Possible values are:
  • private
  • commercial

Type: str

class ingenico.connect.sdk.domain.payment.definitions.payment.Payment[source]

Bases: ingenico.connect.sdk.domain.definitions.abstract_order_status.AbstractOrderStatus

from_dictionary(dictionary)[source]
hosted_checkout_specific_output
Hosted Checkout specific information. Populated if the payment was created on the GlobalCollect platform through a Hosted Checkout.

Type: ingenico.connect.sdk.domain.payment.definitions.hosted_checkout_specific_output.HostedCheckoutSpecificOutput

payment_output
Object containing payment details

Type: ingenico.connect.sdk.domain.payment.definitions.payment_output.PaymentOutput

status
Current high-level status of the payment in a human-readable form. Possible values are :
  • ACCOUNT_VERIFIED - The account has been verified using a validation services like 0$ auth
  • CREATED - The transaction has been created. This is the initial state once a new payment is created.
  • REDIRECTED - The customer has been redirected to a 3rd party to complete the authentication/payment
  • PENDING_PAYMENT - Instructions have been provided and we are now waiting for the money to come in
  • PENDING_FRAUD_APPROVAL - The transaction has been marked for manual review after an automatic fraud screening
  • PENDING_APPROVAL - The transaction is awaiting approval from you to proceed with the capturing of the funds
  • PENDING_COMPLETION - The transaction needs to be completed.
  • PENDING_CAPTURE - The transaction is waiting for you to request one or more captures of the funds.
  • REJECTED - The transaction has been rejected
  • AUTHORIZATION_REQUESTED - we have requested an authorization against an asynchronous system and is awaiting its response
  • CAPTURE_REQUESTED - The transaction is in the queue to be captured
  • CAPTURED - The transaction has been captured and we have received online confirmation
  • PAID - We have matched the incoming funds to the transaction
  • CANCELLED - You have cancelled the transaction
  • REJECTED_CAPTURE - We or one of our downstream acquirers/providers have rejected the capture request
  • REVERSED - The transaction has been reversed
  • CHARGEBACK_NOTIFICATION - We have received a notification of chargeback and this status informs you that your account will be debited for a particular transaction
  • CHARGEBACKED - The transaction has been chargebacked
  • REFUNDED - The transaction has been refunded
Please see Statuses <https://epayments-api.developer-ingenico.com/s2sapi/v1/en_US/python/statuses.html> for a full overview of possible values.

Type: str

status_output
This object has the numeric representation of the current payment status, timestamp of last status change and performable action on the current payment resource.
In case of failed payments and negative scenarios, detailed error information is listed.

Type: ingenico.connect.sdk.domain.payment.definitions.payment_status_output.PaymentStatusOutput

to_dictionary()[source]
class ingenico.connect.sdk.domain.payment.definitions.payment_account_on_file.PaymentAccountOnFile[source]

Bases: ingenico.connect.sdk.data_object.DataObject

Object containing information on the payment account data on file (tokens)
create_date
The date (YYYYMMDD) when the payment account on file was first created.
In case a token is used for the transaction we will use the creation date of the token in our system in case you leave this property empty.

Type: str

from_dictionary(dictionary)