namespace POSGkSwaggerModel
{
    /// <summary>
    /// ExchangeRateDO &lt;p&gt;A exchange rate expresses the quantitative conversion factor between two kinds of currency, one which must be the store&#39;s home currency.&lt;br /&gt;&lt;/p&gt;
    /// </summary>
    public record comGkSoftwareGkrApiServerMdExchangeRateDtoDomExchangeRateDO	{
        /// <summary>
        /// &lt;p&gt;Type of origin.&lt;br /&gt; OriginCode:&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;pre&gt; PARENT_COPY &#x3D; &#39;00&#39;&lt;br /&gt; IMPORT &#x3D; &#39;01&#39;&lt;br /&gt; MANUAL &#x3D; &#39;02&#39;&lt;br /&gt;&lt;/pre&gt;
        /// </summary>
        /// <value>&lt;p&gt;Type of origin.&lt;br /&gt; OriginCode:&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;pre&gt; PARENT_COPY &#x3D; &#39;00&#39;&lt;br /&gt; IMPORT &#x3D; &#39;01&#39;&lt;br /&gt; MANUAL &#x3D; &#39;02&#39;&lt;br /&gt;&lt;/pre&gt;</value>
        public originEnum? origin { get; init; }
        /// <summary>
        /// &lt;p&gt;Getter for inner key class.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Getter for inner key class.&lt;/p&gt;</value>
        public ComGkSoftwareGkrApiServerMdExchangeRateDtoDomExchangeRateDOkey key { get; init; }
        /// <summary>
        /// &lt;p&gt;The unique system assigned identifier of the source currency.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The unique system assigned identifier of the source currency.&lt;br /&gt;&lt;/p&gt;</value>
        public string fromCurrencyID { get; init; }
        /// <summary>
        /// &lt;p&gt;The unique system assigned identifier of the destination currency.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The unique system assigned identifier of the destination currency.&lt;br /&gt;&lt;/p&gt;</value>
        public string toCurrencyID { get; init; }
        /// <summary>
        /// &lt;p&gt;The date on which a specific exchange rate becomes effective.&lt;br /&gt;&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 date on which a specific exchange rate becomes effective.&lt;br /&gt;&lt;/p&gt; Date format &#39;yyyy-MM-dd&#39;T&#39;HH:mm:ss.SSS&#39; (no timezone)</value>
        public string exchangeRateEffectiveDate { get; init; }
        /// <summary>
        /// &lt;p&gt;Date on which the exchange rate expires and is no longer valid.&lt;br /&gt;&lt;/p&gt; Date format &#39;yyyy-MM-dd&#39;T&#39;HH:mm:ss.SSS&#39; (no timezone)
        /// </summary>
        /// <value>&lt;p&gt;Date on which the exchange rate expires and is no longer valid.&lt;br /&gt;&lt;/p&gt; Date format &#39;yyyy-MM-dd&#39;T&#39;HH:mm:ss.SSS&#39; (no timezone)</value>
        public string exchangeRateExpirationDate { get; init; }
        /// <summary>
        /// &lt;p&gt;The buying rate of the tender type, based on the store&#39;s local currency.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The buying rate of the tender type, based on the store&#39;s local currency.&lt;br /&gt;&lt;/p&gt;</value>
        public double? toBuyAmount { get; init; }
        /// <summary>
        /// &lt;p&gt;Determines whether inside the calculation FromCurrencyCode -&amp;gt; ToCurrencyCode the amount is to be multiplied with (true) or divided by (false) the ToBuyAmount / ToSellAmount&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Determines whether inside the calculation FromCurrencyCode -&amp;gt; ToCurrencyCode the amount is to be multiplied with (true) or divided by (false) the ToBuyAmount / ToSellAmount&lt;br /&gt;&lt;/p&gt;</value>
        public bool? multiplyFlag { get; init; }
        /// <summary>
        /// &lt;p&gt;Internal identification of the import package (e.g. IDoc file). The identification is used for monitoring purposes.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Internal identification of the import package (e.g. IDoc file). The identification is used for monitoring purposes.&lt;br /&gt;&lt;/p&gt;</value>
        public string packageID { get; init; }
        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        public string xxcustom05 { get; init; }
        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        public string xxcustom03 { get; init; }
        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        public string xxcustom02 { get; init; }
        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        public string xxcustom04 { get; init; }
        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        public string xxcustom01 { get; init; }
	}
}
