namespace POSGkSwaggerModel
{
    /// <summary>
    /// GiftCertificateRegistrationRequest &lt;p&gt;Request object for operations which create a SaleReturnLineItem on active transaction.&lt;/p&gt;
    /// </summary>
    public record comGkSoftwarePosApiServiceTransactionGiftCertificateGiftCertificateRegistrationRequest	{
        /// <summary>
        /// &lt;p&gt;PositionOperationConfig : position operation config&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;PositionOperationConfig : position operation config&lt;/p&gt;</value>
        public ComGkSoftwarePosApiModelConfigProcessActionpositionOperationConfig positionOperationConfig { get; init; }
        /// <summary>
        /// &lt;p&gt;String : gift certificate number&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;String : gift certificate number&lt;/p&gt;</value>
        public string gcNumber { get; init; }
        /// <summary>
        /// &lt;p&gt;String : gift certificate item number&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;String : gift certificate item number&lt;/p&gt;</value>
        public string gcItemNumber { get; init; }
        /// <summary>
        /// &lt;p&gt;String : gift certificate amount&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;String : gift certificate amount&lt;/p&gt;</value>
        public ComGkSoftwarePosApiModelDomAppAmountAmount gcAmount { get; init; }
        /// <summary>
        /// &lt;p&gt;GiftCertServiceResult : service result&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;GiftCertServiceResult : service result&lt;/p&gt;</value>
        public ComGkSoftwarePosApiModelDomAppGiftCertificateServiceGiftCertserviceResult serviceResult { get; init; }
        /// <summary>
        /// &lt;p&gt;String : gift certificate description&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;String : gift certificate description&lt;/p&gt;</value>
        public string gcDescription { get; init; }
        /// <summary>
        /// &lt;p&gt;boolean : online&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;boolean : online&lt;/p&gt;</value>
        public bool? online { get; init; }
        /// <summary>
        /// &lt;p&gt;Specifies if a return receipt should be created.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Specifies if a return receipt should be created.&lt;/p&gt;</value>
        public bool? createReturnReceipt { get; init; }
        /// <summary>
        /// &lt;p&gt;String : external system adapter name&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;String : external system adapter name&lt;/p&gt;</value>
        public string externalSystemAdapterName { get; init; }
        /// <summary>
        /// &lt;p&gt;String : gc class&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;String : gc class&lt;/p&gt;</value>
        public string gcClass { get; init; }
        /// <summary>
        /// &lt;p&gt;Date : expiry date&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 : expiry date&lt;/p&gt; Date format &#39;yyyy-MM-dd&#39;T&#39;HH:mm:ss.SSS&#39; (no timezone)</value>
        public string expiryDate { get; init; }
        /// <summary>
        /// &lt;p&gt;int : quantity&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;int : quantity&lt;/p&gt;</value>
        public int? quantity { get; init; }
        /// <summary>
        /// &lt;p&gt;String : action code&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;String : action code&lt;/p&gt;</value>
        public string actionCode { get; init; }
        /// <summary>
        /// &lt;p&gt;String : gift certificate type&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;String : gift certificate type&lt;/p&gt;</value>
        public string gcType { get; init; }
        /// <summary>
        /// &lt;p&gt;boolean : gcs usage&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;boolean : gcs usage&lt;/p&gt;</value>
        public bool? gcsUsage { get; init; }
        /// <summary>
        /// &lt;p&gt;String : tax group iD&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;String : tax group iD&lt;/p&gt;</value>
        public string taxGroupID { get; init; }
        /// <summary>
        /// &lt;p&gt;The alternative tax infos for updating the tax group.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The alternative tax infos for updating the tax group.&lt;/p&gt;</value>
        public ComGkSoftwarePosApiModelConfigProcessFlowsalternativeTaxInfos alternativeTaxInfos { get; init; }
        /// <summary>
        /// &lt;p&gt;Track2 data.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Track2 data.&lt;/p&gt;</value>
        public string track2 { get; init; }
        /// <summary>
        /// &lt;p&gt;Contains additional information.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Contains additional information.&lt;/p&gt;</value>
        public List<comGkSoftwarePosApiModelDomAppGiftCertificateServiceAttributeValue> AdditionalInfo { get; init; }
        /// <summary>
        /// &lt;p&gt;The sales person number request&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The sales person number request&lt;/p&gt;</value>
        public ComGkSoftwarePosApiServiceTransactionsalesPersonNumberRequest salesPersonNumberRequest { get; init; }
        /// <summary>
        /// &lt;p&gt;Indicates whether the take away sale mode is active.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Indicates whether the take away sale mode is active.&lt;/p&gt;</value>
        public bool? takeAwaySaleMode { get; init; }
        /// <summary>
        /// &lt;p&gt;Contains the method with which the item was registered (keyed in, scanned through bar code, etc).&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Contains the method with which the item was registered (keyed in, scanned through bar code, etc).&lt;/p&gt;</value>
        public string entryMethodCode { 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; }
	}
}
