namespace POSGkSwaggerModel
{
    /// <summary>
    /// RegisterEmptiesTransactionRequest &lt;p&gt;Request object for the retrieve empties transaction process.&lt;/p&gt;
    /// </summary>
    public record comGkSoftwarePosApiServiceTransactionRegisterEmptiesTransactionRequest	{
        /// <summary>
        /// &lt;p&gt;The deposit type 1.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The deposit type 1.&lt;/p&gt;</value>
        public depositType1Enum? depositType1 { get; init; }
        /// <summary>
        /// &lt;p&gt;The deposit type 2.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The deposit type 2.&lt;/p&gt;</value>
        public depositType2Enum? depositType2 { get; init; }
        /// <summary>
        /// &lt;p&gt;The position operation configuration.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The position operation configuration.&lt;/p&gt;</value>
        public ComGkSoftwarePosApiModelConfigProcessActionpositionOperationConfig positionOperationConfig { get; init; }
        /// <summary>
        /// &lt;p&gt;A flag to indicate that return mode is active.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;A flag to indicate that return mode is active.&lt;/p&gt;</value>
        public bool? returnMode { get; init; }
        /// <summary>
        /// &lt;p&gt;The collective number. When add as one line item is wanted or necessary the item with collective number is used for empties return transaction registration.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The collective number. When add as one line item is wanted or necessary the item with collective number is used for empties return transaction registration.&lt;/p&gt;</value>
        public string collectiveNumber { get; init; }
        /// <summary>
        /// &lt;p&gt;The transaction identifier for the empties return transaction.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The transaction identifier for the empties return transaction.&lt;/p&gt;</value>
        public string transactionIdentifier { get; init; }
        /// <summary>
        /// &lt;p&gt;The amount. In case of collective item usage the unit price amount for the line item registration.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The amount. In case of collective item usage the unit price amount for the line item registration.&lt;/p&gt;</value>
        public double? amount { get; init; }
        /// <summary>
        /// &lt;p&gt;The amount1. In case of collective item usage and amount is not used the unit price amount for the one-way and multi-way returnable deposit type 1 line item registration.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The amount1. In case of collective item usage and amount is not used the unit price amount for the one-way and multi-way returnable deposit type 1 line item registration.&lt;/p&gt;</value>
        public double? amount1 { get; init; }
        /// <summary>
        /// &lt;p&gt;The amount2. In case of collective item usage and amount is not used the unit price amount for the one-way and multi-way returnable deposit type 2 line item registration.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The amount2. In case of collective item usage and amount is not used the unit price amount for the one-way and multi-way returnable deposit type 2 line item registration.&lt;/p&gt;</value>
        public double? amount2 { get; init; }
        /// <summary>
        /// &lt;p&gt;The one-way deposit item number.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The one-way deposit item number.&lt;/p&gt;</value>
        public string oneWayItemNumber { get; init; }
        /// <summary>
        /// &lt;p&gt;The multi-way deposit item number.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The multi-way deposit item number.&lt;/p&gt;</value>
        public string multiWayItemNumber { get; init; }
        /// <summary>
        /// &lt;p&gt;A flag to indicate that the empties return line items should be registered as one collective line item.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;A flag to indicate that the empties return line items should be registered as one collective line item.&lt;/p&gt;</value>
        public bool? addAsOneLineItem { get; init; }
        /// <summary>
        /// &lt;p&gt;A flag to indicate that the status &#39;offline&#39; was confirmed.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;A flag to indicate that the status &#39;offline&#39; was confirmed.&lt;/p&gt;</value>
        public bool? statusOfflineConfirmed { get; init; }
        /// <summary>
        /// &lt;p&gt;A flag to indicate that the status &#39;redeemed&#39; was confirmed.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;A flag to indicate that the status &#39;redeemed&#39; was confirmed.&lt;/p&gt;</value>
        public bool? statusRedeemedConfirmed { get; init; }
        /// <summary>
        /// &lt;p&gt;A flag to indicate that the status &#39;not found&#39; was confirmed.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;A flag to indicate that the status &#39;not found&#39; was confirmed.&lt;/p&gt;</value>
        public bool? statusNotFoundConfirmed { get; init; }
        /// <summary>
        /// &lt;p&gt;A complete transaction holding the retrieved empties return transaction.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;A complete transaction holding the retrieved empties return transaction.&lt;/p&gt;</value>
        public ComGkSoftwareGkrApiTxpoolDtoCompleteTransaction emptiesTransaction { get; init; }
        /// <summary>
        /// &lt;p&gt;The alternative tax information for updating the tax group.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The alternative tax information for updating the tax group.&lt;/p&gt;</value>
        public ComGkSoftwarePosApiModelConfigProcessFlowsalternativeTaxInfos alternativeTaxInfos { get; init; }
        /// <summary>
        /// &lt;p&gt;The retail store identifier.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The retail store identifier.&lt;/p&gt;</value>
        public string storeId { 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; }
	}
}
