namespace POSGkSwaggerModel
{
    /// <summary>
    /// PaymentDetailsRequest &lt;p&gt;Request object to set payment details for the external order&lt;/p&gt;&lt;br /&gt;&lt;pre&gt;   Note: Some external services need credit card informations to satisfy their interfaces. See implementation for details.&lt;br /&gt;&lt;/pre&gt;
    /// </summary>
    public record comGkSoftwarePosApiServiceExternalOrderPaymentDetailsRequest	{
        /// <summary>
        /// &lt;p&gt;The customer&#39;s ID&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The customer&#39;s ID&lt;/p&gt;</value>
        public string customerID { get; init; }
        /// <summary>
        /// Gets or Sets CartID
        /// </summary>
        public string cartID { get; init; }
        /// <summary>
        /// &lt;p&gt;The billing address for the external order&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The billing address for the external order&lt;/p&gt;</value>
        public ComGkSoftwarePosApiServiceExternalOrderAddress billingAddress { get; init; }
        /// <summary>
        /// &lt;p&gt;The account holder of the credit card&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The account holder of the credit card&lt;/p&gt;</value>
        public string accountHolderName { get; init; }
        /// <summary>
        /// &lt;p&gt;The credit card number&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The credit card number&lt;/p&gt;</value>
        public string cardNumber { get; init; }
        /// <summary>
        /// &lt;p&gt;The credit card type.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The credit card type.&lt;/p&gt;</value>
        public string cardType { get; init; }
        /// <summary>
        /// &lt;p&gt;The cards&#39; expiry month&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The cards&#39; expiry month&lt;/p&gt;</value>
        public string expiryMonth { get; init; }
        /// <summary>
        /// &lt;p&gt;The cards&#39; expiry year&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The cards&#39; expiry year&lt;/p&gt;</value>
        public string expiryYear { get; init; }
        /// <summary>
        /// &lt;p&gt;A flag for setting this method as the future default payment&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;A flag for setting this method as the future default payment&lt;/p&gt;</value>
        public string defaultPayment { get; init; }
        /// <summary>
        /// &lt;p&gt;ISO language code&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;ISO language code&lt;/p&gt;</value>
        public string language { get; init; }
        /// <summary>
        /// &lt;p&gt;ISO currency code&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;ISO currency code&lt;/p&gt;</value>
        public string currency { 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; }
	}
}
