Inheritance: IJsonSerializable
        public FulfillmentDetails(string fulfillmentId, DateTime createdAt, FulfillmentStatusCode status, LineItem[] lineItems = null, string trackingCompany = null, string trackingNumbers = null,
            string trackingUrls = null, string message = null, string receipt = null)
        {
            this.FulfillmentId = fulfillmentId;
            this.CreatedAt = createdAt;
            this.Status = status;

            // Optional fields
            this.LineItems = lineItems;
            this.TrackingCompany = trackingCompany;
            this.TrackingNumbers = trackingNumbers;
            this.TrackingUrls = trackingUrls;
            this.Message = message;
            this.Receipt = receipt;
        }
Exemple #2
0
        /// <summary>
        /// Creates a new order
        /// </summary>
        /// <param name="merchantOrderId">The unique id of the order at the merchant systems</param>
        /// <param name="email">The email used for contact in the order</param>
        /// <param name="customer">The customer information</param>
        /// <param name="paymentDetails">The payment details</param>
        /// <param name="billingAddress">Billing address</param>
        /// <param name="shippingAddress">Shipping address</param>
        /// <param name="lineItems">An array of all products in the order</param>
        /// <param name="shippingLines">An array of all shipping details for the order</param>
        /// <param name="gateway">The payment gateway that was used</param>
        /// <param name="customerBrowserIp">The customer browser ip that was used for the order</param>
        /// <param name="currency">A three letter code (ISO 4217) for the currency used for the payment</param>
        /// <param name="totalPrice">The sum of all the prices of all the items in the order, taxes and discounts included</param>
        /// <param name="createdAt">The date and time when the order was created</param>
        /// <param name="updatedAt">The date and time when the order was last modified</param>
        /// <param name="discountCodes">An array of objects, each one containing information about an item in the order (optional)</param>
        /// <param name="totalDiscounts">The total amount of the discounts on the Order (optional)</param>
        /// <param name="cartToken">Unique identifier for a particular cart or session that is attached to a particular order. The same ID should be passed in the Beacon JS (optional)</param>
        /// <param name="totalPriceUsd">The price in USD (optional)</param>
        /// <param name="closedAt">The date and time when the order was closed. If the order was closed (optional)</param>
        /// <param name="financialStatus">The financial status of the order (could be paid/voided/refunded/partly_paid/etc.)</param>
        /// <param name="fulfillmentStatus">The fulfillment status of the order</param>
        /// <param name="source">The source of the order</param>
        /// <param name="noChargeDetails">No charge sums - including all payments made for this order in giftcards, cash, checks or other non chargebackable payment methods</param>
        /// <param name="ClientDetails">Technical information regarding the customer's browsing session</param>
        /// <param name="chargeFreePaymentDetails">Payment sums made using non-chargebackable methods and should be omitted from the Chargeback gurantee sum and Riskified fee</param>
        public Order(string merchantOrderId,
                     string email, 
                     Customer customer,
                     AddressInformation billingAddress, 
                     AddressInformation shippingAddress, 
                     LineItem[] lineItems,
                     ShippingLine[] shippingLines,
                     string gateway, 
                     string customerBrowserIp, 
                     string currency, 
                     double totalPrice, 
                     DateTimeOffset createdAt,
                     DateTimeOffset updatedAt,
                     IPaymentDetails paymentDetails = null, 
                     DiscountCode[] discountCodes = null, 
                     double? totalDiscounts = null, 
                     string cartToken = null, 
                     double? totalPriceUsd = null, 
                     DateTime? closedAt = null,
                     string financialStatus = null,
                     string fulfillmentStatus = null,
                     string source = null, 
                     NoChargeDetails noChargeDetails = null,
                     string[] additionalEmails = null,
                     string vendorId = null,
                     string vendorName = null,
                     DecisionDetails decisionDetails = null,
                     ClientDetails clientDetails = null,
                     ChargeFreePaymentDetails chargeFreePaymentDetails = null,
                     string groupFounderOrderID = null) : base(merchantOrderId)
        {
            LineItems = lineItems;
            ShippingLines = shippingLines;
            BillingAddress = billingAddress;
            ShippingAddress = shippingAddress;
            Customer = customer;
            Email = email;
            CustomerBrowserIp = customerBrowserIp;
            Currency = currency;
            TotalPrice = totalPrice;
            Gateway = gateway;
            CreatedAt = createdAt;
            UpdatedAt = updatedAt;
            
            // optional fields
            PaymentDetails = paymentDetails;
            DiscountCodes = discountCodes;
            TotalPriceUsd = totalPriceUsd;
            TotalDiscounts = totalDiscounts;
            CartToken = cartToken;
            ClosedAt = closedAt;
            FinancialStatus = financialStatus;
            FulfillmentStatus = fulfillmentStatus;
            Source = source;
            NoChargeAmount = noChargeDetails;
            AdditionalEmails = additionalEmails;
            VendorId = vendorId;
            VendorName = vendorName;
            Decision = decisionDetails;
            ClientDetails = clientDetails;
            ChargeFreePaymentDetails = chargeFreePaymentDetails;

            // This field is added for gift card group purchase
            GroupFounderOrderID = groupFounderOrderID;
        }