/// <summary>
 /// Initializes a new instance of the <see cref="Ptsv2paymentsOrderInformation" /> class.
 /// </summary>
 /// <param name="AmountDetails">AmountDetails.</param>
 /// <param name="BillTo">BillTo.</param>
 /// <param name="ShipTo">ShipTo.</param>
 /// <param name="LineItems">LineItems.</param>
 /// <param name="InvoiceDetails">InvoiceDetails.</param>
 /// <param name="ShippingDetails">ShippingDetails.</param>
 /// <param name="ReturnsAccepted">This is only needed when you are requesting both payment and DM service at same time.  Boolean that indicates whether returns are accepted for this order. This field can contain one of the following values: - true: Returns are accepted for this order. - false: Returns are not accepted for this order. .</param>
 /// <param name="IsCryptocurrencyPurchase">#### Visa Platform Connect : This API will contain the Flag that specifies whether the payment is for the purchase of cryptocurrency. Additional values to add : This API will contain the Flag that specifies whether the payment is for the purchase of cryptocurrency. valid values are - Y/y, true - N/n, false .</param>
 /// <param name="PreOrder">Indicates whether cardholder is placing an order with a future availability or release date. This field can contain one of these values: - MERCHANDISE_AVAILABLE: Merchandise available - FUTURE_AVAILABILITY: Future availability .</param>
 /// <param name="PreOrderDate">Expected date that a pre-ordered purchase will be available. Format: YYYYMMDD .</param>
 /// <param name="Reordered">Indicates whether the cardholder is reordering previously purchased merchandise. This field can contain one of these values: - false: First time ordered - true: Reordered .</param>
 /// <param name="TotalOffersCount">Total number of articles/items in the order as a numeric decimal count. Possible values: 00 - 99 .</param>
 public Ptsv2paymentsOrderInformation(Ptsv2paymentsOrderInformationAmountDetails AmountDetails = default(Ptsv2paymentsOrderInformationAmountDetails), Ptsv2paymentsOrderInformationBillTo BillTo = default(Ptsv2paymentsOrderInformationBillTo), Ptsv2paymentsOrderInformationShipTo ShipTo = default(Ptsv2paymentsOrderInformationShipTo), List <Ptsv2paymentsOrderInformationLineItems> LineItems = default(List <Ptsv2paymentsOrderInformationLineItems>), Ptsv2paymentsOrderInformationInvoiceDetails InvoiceDetails = default(Ptsv2paymentsOrderInformationInvoiceDetails), Ptsv2paymentsOrderInformationShippingDetails ShippingDetails = default(Ptsv2paymentsOrderInformationShippingDetails), bool?ReturnsAccepted = default(bool?), string IsCryptocurrencyPurchase = default(string), string PreOrder = default(string), string PreOrderDate = default(string), bool?Reordered = default(bool?), string TotalOffersCount = default(string))
 {
     this.AmountDetails            = AmountDetails;
     this.BillTo                   = BillTo;
     this.ShipTo                   = ShipTo;
     this.LineItems                = LineItems;
     this.InvoiceDetails           = InvoiceDetails;
     this.ShippingDetails          = ShippingDetails;
     this.ReturnsAccepted          = ReturnsAccepted;
     this.IsCryptocurrencyPurchase = IsCryptocurrencyPurchase;
     this.PreOrder                 = PreOrder;
     this.PreOrderDate             = PreOrderDate;
     this.Reordered                = Reordered;
     this.TotalOffersCount         = TotalOffersCount;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="Ptsv2paymentsOrderInformation" /> class.
 /// </summary>
 /// <param name="AmountDetails">AmountDetails.</param>
 /// <param name="BillTo">BillTo.</param>
 /// <param name="ShipTo">ShipTo.</param>
 /// <param name="LineItems">LineItems.</param>
 /// <param name="InvoiceDetails">InvoiceDetails.</param>
 /// <param name="ShippingDetails">ShippingDetails.</param>
 public Ptsv2paymentsOrderInformation(Ptsv2paymentsOrderInformationAmountDetails AmountDetails = default(Ptsv2paymentsOrderInformationAmountDetails), Ptsv2paymentsOrderInformationBillTo BillTo = default(Ptsv2paymentsOrderInformationBillTo), Ptsv2paymentsOrderInformationShipTo ShipTo = default(Ptsv2paymentsOrderInformationShipTo), List <Ptsv2paymentsOrderInformationLineItems> LineItems = default(List <Ptsv2paymentsOrderInformationLineItems>), Ptsv2paymentsOrderInformationInvoiceDetails InvoiceDetails = default(Ptsv2paymentsOrderInformationInvoiceDetails), Ptsv2paymentsOrderInformationShippingDetails ShippingDetails = default(Ptsv2paymentsOrderInformationShippingDetails))
 {
     this.AmountDetails   = AmountDetails;
     this.BillTo          = BillTo;
     this.ShipTo          = ShipTo;
     this.LineItems       = LineItems;
     this.InvoiceDetails  = InvoiceDetails;
     this.ShippingDetails = ShippingDetails;
 }