using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.Linq; using System.Text; using System.Threading.Tasks; using gehGassi.Klarna.Checkout; using Newtonsoft.Json; namespace gehGassi.Klarna.OrderManagement { public class Capture { /// /// The capture id. Generated when the capture is created. /// /// The capture id. Generated when the capture is created. [JsonProperty("capture_id")] public string CaptureId { get; set; } /// /// Internal reference to the capture which will be included in the settlement files. Max length is 255 characters. /// /// Internal reference to the capture which will be included in the settlement files. Max length is 255 characters. [StringLength(255, MinimumLength = 0)] [JsonProperty("reference")] public string Reference { get; set; } /// /// Customer friendly reference id, used as a reference when communicating with the customer. /// /// Customer friendly reference id, used as a reference when communicating with the customer. [JsonProperty("klarna_reference")] public string KlarnaReference { get; set; } /// /// The captured amount in minor units. /// /// The captured amount in minor units. [JsonProperty("captured_amount")] public long? CapturedAmount { get; set; } /// /// The time of the capture. Specified in ISO 8601. /// /// The time of the capture. Specified in ISO 8601. [JsonProperty("captured_at")] public DateTime? CapturedAt { get; set; } /// /// Description of the capture shown to the customer. /// /// Description of the capture shown to the customer. [JsonProperty("description")] public string Description { get; set; } /// /// List of order lines for the capture shown to the customer. /// /// List of order lines for the capture shown to the customer. [JsonProperty("order_lines")] public List OrderLines { get; set; } /// /// Refunded amount for this capture in minor units. /// /// Refunded amount for this capture in minor units. [JsonProperty("refunded_amount")] public long? RefundedAmount { get; set; } /// /// Billing address for the capture. /// /// Billing address for the capture. [JsonProperty("billing_address")] public Address BillingAddress { get; set; } /// /// Shipping address for the capture /// /// Shipping address for the capture [JsonProperty("shipping_address")] public Address ShippingAddress { get; set; } /// /// Shipping information for this capture. /// /// Shipping information for this capture. [JsonProperty("shipping_info")] public List ShippingInfo { get; set; } } }