namespace POSGkSwaggerModel
{
    /// <summary>
    /// SearchSuspendedTransactionsRequest &lt;p&gt;Request object for the search suspended transactions operation.&lt;/p&gt;
    /// </summary>
    public record comGkSoftwarePosApiServiceTransactionSearchSuspendedTransactionsRequest	{
        /// <summary>
        /// &lt;p&gt;The business unit identifier.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The business unit identifier.&lt;/p&gt;</value>
        public string businessUnitId { get; init; }
        /// <summary>
        /// &lt;p&gt;The suspend number.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The suspend number.&lt;/p&gt;</value>
        public string suspendNumber { get; init; }
        /// <summary>
        /// &lt;p&gt;A list of parent customer identifiers.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;A list of parent customer identifiers.&lt;/p&gt;</value>
        public List<string> ParentCustomerIds { get; init; }
        /// <summary>
        /// &lt;p&gt;A list of customer identifiers.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;A list of customer identifiers.&lt;/p&gt;</value>
        public List<string> CustomerIds { get; init; }
        /// <summary>
        /// &lt;p&gt;A flag to indicate if a customer assignment is required. If the list of customer identifiers is not used but this flag is set to true, then the customer assignment of the current active transaction is used (if there is one).&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;A flag to indicate if a customer assignment is required. If the list of customer identifiers is not used but this flag is set to true, then the customer assignment of the current active transaction is used (if there is one).&lt;/p&gt;</value>
        public bool? customerRequired { get; init; }
        /// <summary>
        /// &lt;p&gt;A flag to indicate that only suspended transaction with workstation type code for self scanning are wanted.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;A flag to indicate that only suspended transaction with workstation type code for self scanning are wanted.&lt;/p&gt;</value>
        public bool? onlySSCTransactions { get; init; }
        /// <summary>
        /// &lt;p&gt;A flag to indicate that the customer assignment from the suspended transaction should be taken over to the current transaction.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;A flag to indicate that the customer assignment from the suspended transaction should be taken over to the current transaction.&lt;/p&gt;</value>
        public bool? overtakeCustomerFromOriginalReceipt { get; init; }
        /// <summary>
        /// &lt;p&gt;The end date timestamp from. If set only suspended transactions with matching criteria are searched.&lt;/p&gt; Date format &#39;yyyy-MM-dd&#39;T&#39;HH:mm:ss.SSS&#39; (no timezone)
        /// </summary>
        /// <value>&lt;p&gt;The end date timestamp from. If set only suspended transactions with matching criteria are searched.&lt;/p&gt; Date format &#39;yyyy-MM-dd&#39;T&#39;HH:mm:ss.SSS&#39; (no timezone)</value>
        public string endDateTimestampFrom { get; init; }
        /// <summary>
        /// &lt;p&gt;A card type which has to be used for the customer identification.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;A card type which has to be used for the customer identification.&lt;/p&gt;</value>
        public string customerAddressTypeCode { get; init; }
        /// <summary>
        /// &lt;p&gt;The ISO currency code. If set only suspended transactions with matching criteria are searched.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The ISO currency code. If set only suspended transactions with matching criteria are searched.&lt;/p&gt;</value>
        public string iSOCurrencyCode { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom08 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom10 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom09 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom07 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom05 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom06 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom11 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom12 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom13 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom14 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom15 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom03 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom02 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom04 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom01 { get; init; }
	}
}
