102 lines
3.8 KiB
C#

using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
namespace gehGassi.Klarna.Checkout
{
public class ShippingOption
{
/// <summary>
/// id
/// </summary>
/// <value>id</value>
[Required]
[JsonProperty("id")]
public string Id { get; set; }
/// <summary>
/// Name.
/// </summary>
/// <value>Name.</value>
[Required]
[StringLength(255, MinimumLength = 1)]
[JsonProperty("name")]
public string Name { get; set; }
/// <summary>
/// Description.
/// </summary>
/// <value>Description.</value>
[JsonProperty("description")]
public string Description { get; set; }
/// <summary>
/// Promotion name. To be used if this shipping option is promotional.
/// </summary>
/// <value>Promotion name. To be used if this shipping option is promotional.</value>
[JsonProperty("promo")]
public string Promo { get; set; }
/// <summary>
/// Price including tax.
/// </summary>
/// <value>Price including tax.</value>
[Required]
[JsonProperty("price")]
public long? Price { get; set; }
/// <summary>
/// If true, this option will be preselected when checkout loads. Default: false
/// </summary>
/// <value>If true, this option will be preselected when checkout loads. Default: false</value>
[JsonProperty("preselected")]
public bool? Preselected { get; set; }
/// <summary>
/// Tax amount.
/// </summary>
/// <value>Tax amount.</value>
[Required]
[JsonProperty("tax_amount")]
public long? TaxAmount { get; set; }
/// <summary>
/// Non-negative. In percent, two implicit decimals. I.e 2500 &#x3D; 25%.
/// </summary>
/// <value>Non-negative. In percent, two implicit decimals. I.e 2500 &#x3D; 25%.</value>
[Required]
[JsonProperty("tax_rate")]
public long? TaxRate { get; set; }
/// <summary>
/// Shipping method. Possible values:&lt;ul&gt;&lt;li&gt;PickUpStore&lt;/li&gt;&lt;li&gt;Home&lt;/li&gt;&lt;li&gt;BoxReg&lt;/li&gt;&lt;li&gt;BoxUnreg&lt;/li&gt;&lt;li&gt;PickUpPoint&lt;/li&gt;&lt;li&gt;Own&lt;/li&gt;&lt;li&gt;Postal&lt;/li&gt;&lt;li&gt;DHLPackstation&lt;/li&gt;&lt;li&gt;Digital&lt;/li&gt;&lt;/ul&gt; If DHLPackstation is selected the correct form will be displayed.
/// </summary>
/// <value>Shipping method. Possible values:&lt;ul&gt;&lt;li&gt;PickUpStore&lt;/li&gt;&lt;li&gt;Home&lt;/li&gt;&lt;li&gt;BoxReg&lt;/li&gt;&lt;li&gt;BoxUnreg&lt;/li&gt;&lt;li&gt;PickUpPoint&lt;/li&gt;&lt;li&gt;Own&lt;/li&gt;&lt;li&gt;Postal&lt;/li&gt;&lt;li&gt;DHLPackstation&lt;/li&gt;&lt;li&gt;Digital&lt;/li&gt;&lt;/ul&gt; If DHLPackstation is selected the correct form will be displayed.</value>
[JsonProperty("shipping_method")]
public string ShippingMethod { get; set; }
/// <summary>
/// Gets or Sets DeliveryDetails
/// </summary>
[JsonProperty("delivery_details")]
public DeliveryDetailsV1 DeliveryDetails { get; set; }
/// <summary>
/// TMS reference. Required to map completed orders to shipments reserved in TMS.
/// </summary>
/// <value>TMS reference. Required to map completed orders to shipments reserved in TMS.</value>
[JsonProperty("tms_reference")]
public string TmsReference { get; set; }
/// <summary>
/// Gets or Sets SelectedAddons
/// </summary>
[JsonProperty("selected_addons")]
public List<SelectedAddon> SelectedAddons { get; set; }
}
}