import type { AddressCreate } from './AddressCreate'; import type { CustomersPresence } from './CustomersPresence'; import type { LineItemCreate } from './LineItemCreate'; import type { TransactionEnvironmentSelectionStrategy } from './TransactionEnvironmentSelectionStrategy'; import type { TokenizationMode } from './TokenizationMode'; import type { TransactionCompletionBehavior } from './TransactionCompletionBehavior'; import type { Environment } from './Environment'; /** * * @export * @interface TransactionCreate */ export interface TransactionCreate { /** * The customer's email address. * @type {string} * @memberof TransactionCreate */ customerEmailAddress?: string; /** * The name of the shipping method used to ship the products. * @type {string} * @memberof TransactionCreate */ shippingMethod?: string; /** * The merchant's reference used to identify the invoice. * @type {string} * @memberof TransactionCreate */ invoiceMerchantReference?: string; /** * The URL to redirect the customer back to after they successfully authenticated their payment. * @type {string} * @memberof TransactionCreate */ successUrl?: string; /** * The customer's time zone, which affects how dates and times are formatted when communicating with the customer. * @type {string} * @memberof TransactionCreate */ timeZone?: string; /** * The language that is linked to the object. * @type {string} * @memberof TransactionCreate */ language?: string; /** * * @type {TokenizationMode} * @memberof TransactionCreate */ tokenizationMode?: TokenizationMode; /** * The payment method brands that can be used to authorize the transaction. * @type {Array} * @memberof TransactionCreate */ allowedPaymentMethodBrands?: Array; /** * * @type {TransactionCompletionBehavior} * @memberof TransactionCreate */ completionBehavior?: TransactionCompletionBehavior; /** * The payment token that should be used to charge the customer. * @type {number} * @memberof TransactionCreate */ token?: number; /** * The line items purchased by the customer. * @type {Array} * @memberof TransactionCreate */ lineItems: Array; /** * Allow to store additional information about the object. * @type {{ [key: string]: string; }} * @memberof TransactionCreate */ metaData?: { [key: string]: string; }; /** * The unique identifier of the customer in the external system. * @type {string} * @memberof TransactionCreate */ customerId?: string; /** * * @type {AddressCreate} * @memberof TransactionCreate */ shippingAddress?: AddressCreate; /** * The three-letter code (ISO 4217 format) of the transaction's currency. * @type {string} * @memberof TransactionCreate */ currency?: string; /** * * @type {AddressCreate} * @memberof TransactionCreate */ billingAddress?: AddressCreate; /** * The merchant's reference used to identify the transaction. * @type {string} * @memberof TransactionCreate */ merchantReference?: string; /** * The payment method configurations that can be used to authorize the transaction. * @type {Array} * @memberof TransactionCreate */ allowedPaymentMethodConfigurations?: Array; /** * The URL to redirect the customer back to after they canceled or failed to authenticated their payment. * @type {string} * @memberof TransactionCreate */ failedUrl?: string; /** * Whether the customer can make further payment attempts if the first one has failed. Default is true. * @type {boolean} * @memberof TransactionCreate */ chargeRetryEnabled?: boolean; /** * Whether email sending is deactivated for the transaction. Default is false. * @type {boolean} * @memberof TransactionCreate */ emailsDisabled?: boolean; /** * * @type {Environment} * @memberof TransactionCreate */ environment?: Environment; /** * * @type {TransactionEnvironmentSelectionStrategy} * @memberof TransactionCreate */ environmentSelectionStrategy?: TransactionEnvironmentSelectionStrategy; /** * Allows to link the transaction to the data collected from the customer's device. * @type {string} * @memberof TransactionCreate */ deviceSessionIdentifier?: string; /** * Whether the transaction can be confirmed automatically or whether this must be done explicitly via the API. Default is true. * @type {boolean} * @memberof TransactionCreate */ autoConfirmationEnabled?: boolean; /** * The ID of the space view this object is linked to. * @type {number} * @memberof TransactionCreate */ spaceViewId?: number; /** * * @type {CustomersPresence} * @memberof TransactionCreate */ customersPresence?: CustomersPresence; } /** * Check if a given object implements the TransactionCreate interface. */ export declare function instanceOfTransactionCreate(value: object): value is TransactionCreate; export declare function TransactionCreateFromJSON(json: any): TransactionCreate; export declare function TransactionCreateFromJSONTyped(json: any, ignoreDiscriminator: boolean): TransactionCreate; export declare function TransactionCreateToJSON(json: any): TransactionCreate; export declare function TransactionCreateToJSONTyped(value?: TransactionCreate | null, ignoreDiscriminator?: boolean): any;