namespace POSGkSwaggerModel
{
    /// <summary>
    /// ExternalRetailPriceModifier &lt;p&gt;External retail price modifier object.&lt;/p&gt;
    /// </summary>
    public record comGkSoftwarePosApiModelDomAppServicesTransactionExternalRetailPriceModifier	{
        /// <summary>
        /// &lt;p&gt;Retail price modifier line item sequence number.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Retail price modifier line item sequence number.&lt;/p&gt;</value>
        public int? retailPriceModifierSequenceNumber { get; init; }
        /// <summary>
        /// &lt;p&gt;The percentage value in case of percentage price modifiers.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The percentage value in case of percentage price modifiers.&lt;/p&gt;</value>
        public double? percent { get; init; }
        /// <summary>
        /// &lt;p&gt;The monetary value of the price modification that was given.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The monetary value of the price modification that was given.&lt;/p&gt;</value>
        public double? amount { get; init; }
        /// <summary>
        /// &lt;p&gt;The retail sale total price of the transaction before applying the current price modification line item.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The retail sale total price of the transaction before applying the current price modification line item.&lt;/p&gt;</value>
        public double? extendedAmountBeforeModification { get; init; }
        /// <summary>
        /// &lt;p&gt;The retail sale total price of the line item after applying the current price modifier.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The retail sale total price of the line item after applying the current price modifier.&lt;/p&gt;</value>
        public double? extendedAmountAfterModification { get; init; }
        /// <summary>
        /// &lt;p&gt;The quantity the price modifier applies to.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The quantity the price modifier applies to.&lt;/p&gt;</value>
        public double? appliedQuantity { get; init; }
        /// <summary>
        /// &lt;p&gt;The identification of the manual trigger (because one line item can have more than one trigger).&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The identification of the manual trigger (because one line item can have more than one trigger).&lt;/p&gt;</value>
        public int? triggerSequenceNumber { get; init; }
        /// <summary>
        /// &lt;p&gt;A monetary amount which results from applying a price modifier but does not affect the line item total.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;A monetary amount which results from applying a price modifier but does not affect the line item total.&lt;/p&gt;</value>
        public double? extraAmount { get; init; }
        /// <summary>
        /// &lt;p&gt;The monetary amount that the price modifier was adjusted by.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The monetary amount that the price modifier was adjusted by.&lt;/p&gt;</value>
        public double? roundingAmount { get; init; }
        /// <summary>
        /// &lt;p&gt;The amount which was used as base for calculation of the price modification.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The amount which was used as base for calculation of the price modification.&lt;/p&gt;</value>
        public double? calculationBaseAmount { get; init; }
        /// <summary>
        /// &lt;p&gt;Retail transaction price derivation rule.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Retail transaction price derivation rule.&lt;/p&gt;</value>
        public ComGkSoftwarePosApiModelDomAppServicesTransactionretailTransactionPriceDerivationRule retailTransactionPriceDerivationRule { get; init; }
        /// <summary>
        /// &lt;p&gt;List of sale return line item promotion triggers.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;List of sale return line item promotion triggers.&lt;/p&gt;</value>
        public List<comGkSoftwarePosApiModelDomAppServicesTransactionSaleReturnLineItemPromotionTrigger> SaleReturnLineItemPromotionTriggerList { 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; }
	}
}
