import type { CustomersPresence } from './CustomersPresence'; import type { PaymentConnectorConfiguration } from './PaymentConnectorConfiguration'; import type { WalletType } from './WalletType'; import type { ChargeAttemptState } from './ChargeAttemptState'; import type { ConnectorInvocation } from './ConnectorInvocation'; import type { FailureReason } from './FailureReason'; import type { TransactionCompletionBehavior } from './TransactionCompletionBehavior'; import type { Charge } from './Charge'; import type { Label } from './Label'; import type { PaymentTerminal } from './PaymentTerminal'; import type { TokenVersion } from './TokenVersion'; import type { ChargeAttemptEnvironment } from './ChargeAttemptEnvironment'; /** * * @export * @interface ChargeAttempt */ export interface ChargeAttempt { /** * The language that is linked to the object. * @type {string} * @memberof ChargeAttempt */ readonly language?: string; /** * The sales channel through which the charge attempt was made. * @type {number} * @memberof ChargeAttempt */ readonly salesChannel?: number; /** * The date and time when the object was created. * @type {Date} * @memberof ChargeAttempt */ readonly createdOn?: Date; /** * Whether a new token version is being initialized. * @type {boolean} * @memberof ChargeAttempt */ readonly initializingTokenVersion?: boolean; /** * * @type {TokenVersion} * @memberof ChargeAttempt */ tokenVersion?: TokenVersion; /** * The date and time when the charge attempt succeeded. * @type {Date} * @memberof ChargeAttempt */ readonly succeededOn?: Date; /** * A unique identifier for the object. * @type {number} * @memberof ChargeAttempt */ readonly id?: number; /** * * @type {ChargeAttemptState} * @memberof ChargeAttempt */ state?: ChargeAttemptState; /** * The payment transaction this object is linked to. * @type {number} * @memberof ChargeAttempt */ readonly linkedTransaction?: number; /** * The URL to redirect the customer to after payment processing. * @type {string} * @memberof ChargeAttempt */ readonly redirectionUrl?: string; /** * * @type {Charge} * @memberof ChargeAttempt */ charge?: Charge; /** * * @type {WalletType} * @memberof ChargeAttempt */ wallet?: WalletType; /** * The date and time when the object is planned to be permanently removed. If the value is empty, the object will not be removed. * @type {Date} * @memberof ChargeAttempt */ readonly plannedPurgeDate?: Date; /** * The time zone that this object is associated with. * @type {string} * @memberof ChargeAttempt */ readonly timeZone?: string; /** * The ID of the space view this object is linked to. * @type {number} * @memberof ChargeAttempt */ readonly spaceViewId?: number; /** * * @type {PaymentTerminal} * @memberof ChargeAttempt */ terminal?: PaymentTerminal; /** * The message that can be displayed to the customer explaining why the charge attempt failed, in the customer's language. * @type {string} * @memberof ChargeAttempt */ readonly userFailureMessage?: string; /** * * @type {TransactionCompletionBehavior} * @memberof ChargeAttempt */ completionBehavior?: TransactionCompletionBehavior; /** * The version is used for optimistic locking and incremented whenever the object is updated. * @type {number} * @memberof ChargeAttempt */ readonly version?: number; /** * The labels providing additional information about the object. * @type {Set