Purchase orders
Describes how to work with RESTful operations for purchase orders in the Optimizely Service API.
Example models
public class PropertyItem
{
public string Key { get; set; }
public string Value { get; set; }
}
public class Discount
{
public int DiscountId { get; set; }
public decimal DiscountAmount { get; set; }
public string DiscountCode { get; set; }
public string DiscountName { get; set; }
public string DisplayMessage { get; set; }
public decimal DiscountValue { get; set; }
}
public class Shipment
{
public Discount[] Discounts { get; set; }
public int ShipmentId { get; set; }
public Guid ShippingMethodId { get; set; }
public string ShippingMethodName { get; set; }
public decimal ShippingTax { get; set; }
public string ShippingAddressId { get; set; }
public string ShipmentTrackingNumber { get; set; }
public decimal ShippingDiscountAmount { get; set; }
public decimal ShippingSubTotal { get; set; }
public decimal ShippingTotal { get; set; }
public string Status { get; set; }
public string PrevStatus { get; set; }
public int? PickListId { get; set; }
public decimal SubTotal { get; set; }
public string WarehouseCode { get; set; }
public LineItem[] LineItems { get; set; }
public List<PropertyItem> Properties { get; set; }
}
public class OrderForm
{
public Shipment[] Shipments { get; set; }
public LineItem[] LineItems { get; set; }
public Discount[] Discounts { get; set; }
public string ReturnComment { get; set; }
public string ReturnType { get; set; }
public string ReturnAuthCode { get; set; }
public int OrderFormId { get; set; }
public string Name { get; set; }
public string BillingAddressId { get; set; }
public decimal ShippingTotal { get; set; }
public decimal HandlingTotal { get; set; }
public decimal TaxTotal { get; set; }
public decimal DiscountAmount { get; set; }
public decimal SubTotal { get; set; }
public decimal Total { get; set; }
public string Status { get; set; }
public string RmaNumber { get; set; }
public decimal AuthorizedPaymentTotal { get; set; }
public decimal CapturedPaymentTotal { get; set; }
public List<PropertyItem> Properties { get; set; }
}
public class OrderNote
{
public int? OrderNoteId { get; set; }
public DateTime Created { get; set; }
public Guid CustomerId { get; set; }
public string Detail { get; set; }
public string Title { get; set; }
public string Type { get; set; }
public int? LineItemId { get; set; }
}
public class LineItem
{
public int LineItemId { get; set; }
public string Code { get; set; }
public string DisplayName { get; set; }
public decimal PlacedPrice { get; set; }
public decimal ExtendedPrice { get; set; }
public decimal DiscountedPrice { get; set; }
public decimal Quantity { get; set; }
public decimal ReturnQuantity { get; set; }
/*Values can be "Disabled" or "Enabled"*/
public string InventoryTrackingStatus { get; set; }
public bool IsInventoryAllocated { get; set; }
public bool IsGift { get; set; }
}
public class OrderAddress
{
public int OrderGroupAddressId { get; set; }
public string Name { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string Organization { get; set; }
public string Line1 { get; set; }
public string Line2 { get; set; }
public string City { get; set; }
public string State { get; set; }
public string CountryCode { get; set; }
public string CountryName { get; set; }
public string PostalCode { get; set; }
public string RegionCode { get; set; }
public string RegionName { get; set; }
public string DaytimePhoneNumber { get; set; }
public string EveningPhoneNumber { get; set; }
public string FaxNumber { get; set; }
public string Email { get; set; }
}
public class PurchaseOrder
{
public string AddressId { get; set; }
public Guid AffiliateId { get; set; }
public string BillingCurrency { get; set; }
public Guid CustomerId { get; set; }
public string CustomerName { get; set; }
public decimal HandlingTotal { get; set; }
public Guid InstanceId { get; set; }
public string MarketId { get; set; }
public string Name { get; set; }
public string OrderNumber { get; set; }
public OrderAddress[] OrderAddresses { get; set; }
public OrderForm[] OrderForms { get; set; }
public int OrderGroupId { get; set; }
public OrderNote[] OrderNotes { get; set; }
public string Owner { get; set; }
public string OwnerOrg { get; set; }
public string ProviderId { get; set; }
public decimal ShippingTotal { get; set; }
public string Status { get; set; }
public decimal SubTotal { get; set; }
public decimal TaxTotal { get; set; }
public decimal Total { get; set; }
public DateTime Modified { get; set; }
public DateTime Created { get; set; }
public List<PropertyItem> Properties { get; set; }
}
Get orders by ordergroupid
GET | get/episerverapi/commerce/orders/{orderGroupId} | Get orders by ordergroupid |
JSON response type
var client = new HttpClient()
{
BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
};
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);
var result = client.GetAsync("episerverapi/commerce/orders/{ordergroupid}").Result.Content.ReadAsStringAsync().Result
XML response type
var client = new HttpClient()
{
BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
};
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("text/xml"));
var result = client.GetAsync("/episerverapi/commerce/orders/{ordergroupid}").Result.Content.ReadAsStringAsync().Result
Response
<?xml version="1.0" encoding="UTF-8"?>
<PurchaseOrder>
<AddressId />
<AffiliateId>00000000-0000-0000-0000-000000000000</AffiliateId>
<BillingCurrency>USD</BillingCurrency>
<CustomerId>d7ede6ff-8e35-4e0e-94d7-5e1a1ba8adae</CustomerId>
<CustomerName>admin</CustomerName>
<HandlingTotal>0.000000000</HandlingTotal>
<InstanceId>b654e3ff-3b2f-4901-9295-57ed095b07f8</InstanceId>
<MarketId>DEFAULT</MarketId>
<Name>Default</Name>
<OrderAddresses />
<OrderForms>
<OrderForm>
<Shipments>
<Shipment>
<Discounts />
<ShipmentId>2</ShipmentId>
<ShippingMethodId>00000000-0000-0000-0000-000000000000</ShippingMethodId>
<ShippingMethodName />
<ShippingTax>0.000000000</ShippingTax>
<ShippingAddressId />
<ShipmentTrackingNumber />
<ShippingDiscountAmount>0.000000000</ShippingDiscountAmount>
<ShippingSubTotal>0.000000000</ShippingSubTotal>
<ShippingTotal>0.000000000</ShippingTotal>
<Status />
<PrevStatus />
<PickListId />
<SubTotal>1000.000000000</SubTotal>
<WarehouseCode />
<LineItems>
<LineItem>
<LineItemId>2</LineItemId>
<Code>Tops-Tunics-CowlNeck-Black-Small</Code>
<DisplayName>Tops-Tunics-CowlNeck-Black-Small</DisplayName>
<PlacedPrice>1000.000000000</PlacedPrice>
<ExtendedPrice>1000.000000000</ExtendedPrice>
<DiscountedPrice>1000.000000000</DiscountedPrice>
<Quantity>1</Quantity>
<ReturnQuantity>0.000000000</ReturnQuantity>
<InventoryTrackingStatus>Enabled</InventoryTrackingStatus>
<IsInventoryAllocated>false</IsInventoryAllocated>
<IsGift>false</IsGift>
</LineItem>
</LineItems>
<Properties>
<PropertyItem>
<Key>PrevStatus</Key>
</PropertyItem>
</Properties>
</Shipment>
</Shipments>
<LineItems>
<LineItem>
<LineItemId>2</LineItemId>
<Code>Tops-Tunics-CowlNeck-Black-Small</Code>
<DisplayName>Tops-Tunics-CowlNeck-Black-Small</DisplayName>
<PlacedPrice>1000.000000000</PlacedPrice>
<ExtendedPrice>1000.000000000000000000</ExtendedPrice>
<DiscountedPrice>1000.000000000000000000</DiscountedPrice>
<Quantity>1.000000000</Quantity>
<ReturnQuantity>0.000000000</ReturnQuantity>
<InventoryTrackingStatus>Enabled</InventoryTrackingStatus>
<IsInventoryAllocated>false</IsInventoryAllocated>
<IsGift>false</IsGift>
</LineItem>
</LineItems>
<Discounts />
<ReturnComment />
<ReturnType />
<ReturnAuthCode />
<OrderFormId>2</OrderFormId>
<Name>Default</Name>
<BillingAddressId />
<ShippingTotal>0.000000000</ShippingTotal>
<HandlingTotal>0.000000000</HandlingTotal>
<TaxTotal>0.000000000</TaxTotal>
<DiscountAmount>0.000000000</DiscountAmount>
<SubTotal>1000.000000000</SubTotal>
<Total>1000.000000000</Total>
<Status />
<RmaNumber />
<AuthorizedPaymentTotal>0.000000000</AuthorizedPaymentTotal>
<CapturedPaymentTotal>0.000000000</CapturedPaymentTotal>
<Properties>
<PropertyItem>
<Key>Epi_CouponCodes</Key>
</PropertyItem>
<PropertyItem>
<Key>RMANumber</Key>
</PropertyItem>
</Properties>
</OrderForm>
</OrderForms>
<OrderGroupId>2</OrderGroupId>
<OrderNotes />
<Owner />
<OwnerOrg />
<ProviderId />
<ShippingTotal>0.000000000</ShippingTotal>
<Status />
<SubTotal>1000.000000000</SubTotal>
<TaxTotal>0.000000000</TaxTotal>
<Total>1000.000000000</Total>
<Modified>2017-09-08T08:47:40.977Z</Modified>
<Created>2017-09-08T08:47:40.91Z</Created>
<Properties />
</PurchaseOrder>
Get orders by customeridÂ
GET | get/episerverapi/commerce/orders/{customerId}/all | Get orders by customerid |
JSON response type
var client = new HttpClient()
{
BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
};
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);
var result = client.GetAsync("/episerverapi/commerce/orders/{customerId}/all").Result.Content.ReadAsStringAsync().Result
XML response type
var client = new HttpClient()
{
BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
};
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);
var result = client.GetAsync("/episerverapi/commerce/orders/{customerId}/all").Result.Content.ReadAsStringAsync().Result
Response
<?xml version="1.0" encoding="UTF-8"?>
<ArrayOfPurchaseOrder>
<PurchaseOrder>
<AddressId />
<AffiliateId>00000000-0000-0000-0000-000000000000</AffiliateId>
<BillingCurrency>USD</BillingCurrency>
<CustomerId>d7ede6ff-8e35-4e0e-94d7-5e1a1ba8adae</CustomerId>
<CustomerName>admin</CustomerName>
<HandlingTotal>0.000000000</HandlingTotal>
<InstanceId>b654e3ff-3b2f-4901-9295-57ed095b07f8</InstanceId>
<MarketId>DEFAULT</MarketId>
<Name>Default</Name>
<OrderAddresses />
<OrderForms>
<OrderForm>
<Shipments>
<Shipment>
<Discounts />
<ShipmentId>2</ShipmentId>
<ShippingMethodId>00000000-0000-0000-0000-000000000000</ShippingMethodId>
<ShippingMethodName />
<ShippingTax>0.000000000</ShippingTax>
<ShippingAddressId />
<ShipmentTrackingNumber />
<ShippingDiscountAmount>0.000000000</ShippingDiscountAmount>
<ShippingSubTotal>0.000000000</ShippingSubTotal>
<ShippingTotal>0.000000000</ShippingTotal>
<Status />
<PrevStatus />
<PickListId />
<SubTotal>1000.000000000</SubTotal>
<WarehouseCode />
<LineItems>
<LineItem>
<LineItemId>2</LineItemId>
<Code>Tops-Tunics-CowlNeck-Black-Small</Code>
<DisplayName>Tops-Tunics-CowlNeck-Black-Small</DisplayName>
<PlacedPrice>1000.000000000</PlacedPrice>
<ExtendedPrice>1000.000000000</ExtendedPrice>
<DiscountedPrice>1000.000000000</DiscountedPrice>
<Quantity>1</Quantity>
<ReturnQuantity>0.000000000</ReturnQuantity>
<InventoryTrackingStatus>Enabled</InventoryTrackingStatus>
<IsInventoryAllocated>false</IsInventoryAllocated>
<IsGift>false</IsGift>
</LineItem>
</LineItems>
<Properties>
<PropertyItem>
<Key>PrevStatus</Key>
</PropertyItem>
</Properties>
</Shipment>
</Shipments>
<LineItems>
<LineItem>
<LineItemId>2</LineItemId>
<Code>Tops-Tunics-CowlNeck-Black-Small</Code>
<DisplayName>Tops-Tunics-CowlNeck-Black-Small</DisplayName>
<PlacedPrice>1000.000000000</PlacedPrice>
<ExtendedPrice>1000.000000000000000000</ExtendedPrice>
<DiscountedPrice>1000.000000000000000000</DiscountedPrice>
<Quantity>1.000000000</Quantity>
<ReturnQuantity>0.000000000</ReturnQuantity>
<InventoryTrackingStatus>Enabled</InventoryTrackingStatus>
<IsInventoryAllocated>false</IsInventoryAllocated>
<IsGift>false</IsGift>
</LineItem>
</LineItems>
<Discounts />
<ReturnComment />
<ReturnType />
<ReturnAuthCode />
<OrderFormId>2</OrderFormId>
<Name>Default</Name>
<BillingAddressId />
<ShippingTotal>0.000000000</ShippingTotal>
<HandlingTotal>0.000000000</HandlingTotal>
<TaxTotal>0.000000000</TaxTotal>
<DiscountAmount>0.000000000</DiscountAmount>
<SubTotal>1000.000000000</SubTotal>
<Total>1000.000000000</Total>
<Status />
<RmaNumber />
<AuthorizedPaymentTotal>0.000000000</AuthorizedPaymentTotal>
<CapturedPaymentTotal>0.000000000</CapturedPaymentTotal>
<Properties>
<PropertyItem>
<Key>Epi_CouponCodes</Key>
</PropertyItem>
<PropertyItem>
<Key>RMANumber</Key>
</PropertyItem>
</Properties>
</OrderForm>
</OrderForms>
<OrderGroupId>2</OrderGroupId>
<OrderNotes />
<Owner />
<OwnerOrg />
<ProviderId />
<ShippingTotal>0.000000000</ShippingTotal>
<Status />
<SubTotal>1000.000000000</SubTotal>
<TaxTotal>0.000000000</TaxTotal>
<Total>1000.000000000</Total>
<Modified>2017-09-08T08:47:40.977Z</Modified>
<Created>2017-09-08T08:47:40.91Z</Created>
<Properties />
</PurchaseOrder>
</ArrayOfPurchaseOrder>
Search ordersÂ
GET | get/episerverapi/commerce/orders/{start}/{maxCount}/all | Search orders |
GET | get/episerverapi/commerce/orders/search/{start}/{maxCount} | Gets purchase orders with paging. |
JSON response type
var client = new HttpClient()
{
BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
};
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);
var result = client.GetAsync("/episerverapi/commerce/orders/search/{start}/{maxCount}").Result.Content.ReadAsStringAsync().Result
XML response type
var client = new HttpClient()
{
BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
};
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("text/xml"));
var result = client.GetAsync("/episerverapi/commerce/orders/search/{start}/{maxCount}").Result.Content.ReadAsStringAsync().Result
Response
<?xml version="1.0" encoding="UTF-8"?>
<ArrayOfPurchaseOrder>
<PurchaseOrder>
<AddressId />
<AffiliateId>00000000-0000-0000-0000-000000000000</AffiliateId>
<BillingCurrency>USD</BillingCurrency>
<CustomerId>d7ede6ff-8e35-4e0e-94d7-5e1a1ba8adae</CustomerId>
<CustomerName>admin</CustomerName>
<HandlingTotal>0.000000000</HandlingTotal>
<InstanceId>b654e3ff-3b2f-4901-9295-57ed095b07f8</InstanceId>
<MarketId>DEFAULT</MarketId>
<Name>Default</Name>
<OrderAddresses />
<OrderForms>
<OrderForm>
<Shipments>
<Shipment>
<Discounts />
<ShipmentId>2</ShipmentId>
<ShippingMethodId>00000000-0000-0000-0000-000000000000</ShippingMethodId>
<ShippingMethodName />
<ShippingTax>0.000000000</ShippingTax>
<ShippingAddressId />
<ShipmentTrackingNumber />
<ShippingDiscountAmount>0.000000000</ShippingDiscountAmount>
<ShippingSubTotal>0.000000000</ShippingSubTotal>
<ShippingTotal>0.000000000</ShippingTotal>
<Status />
<PrevStatus />
<PickListId />
<SubTotal>1000.000000000</SubTotal>
<WarehouseCode />
<LineItems>
<LineItem>
<LineItemId>2</LineItemId>
<Code>Tops-Tunics-CowlNeck-Black-Small</Code>
<DisplayName>Tops-Tunics-CowlNeck-Black-Small</DisplayName>
<PlacedPrice>1000.000000000</PlacedPrice>
<ExtendedPrice>1000.000000000</ExtendedPrice>
<DiscountedPrice>1000.000000000</DiscountedPrice>
<Quantity>1</Quantity>
<ReturnQuantity>0.000000000</ReturnQuantity>
<InventoryTrackingStatus>Enabled</InventoryTrackingStatus>
<IsInventoryAllocated>false</IsInventoryAllocated>
<IsGift>false</IsGift>
</LineItem>
</LineItems>
<Properties>
<PropertyItem>
<Key>PrevStatus</Key>
</PropertyItem>
</Properties>
</Shipment>
</Shipments>
<LineItems>
<LineItem>
<LineItemId>2</LineItemId>
<Code>Tops-Tunics-CowlNeck-Black-Small</Code>
<DisplayName>Tops-Tunics-CowlNeck-Black-Small</DisplayName>
<PlacedPrice>1000.000000000</PlacedPrice>
<ExtendedPrice>1000.000000000000000000</ExtendedPrice>
<DiscountedPrice>1000.000000000000000000</DiscountedPrice>
<Quantity>1.000000000</Quantity>
<ReturnQuantity>0.000000000</ReturnQuantity>
<InventoryTrackingStatus>Enabled</InventoryTrackingStatus>
<IsInventoryAllocated>false</IsInventoryAllocated>
<IsGift>false</IsGift>
</LineItem>
</LineItems>
<Discounts />
<ReturnComment />
<ReturnType />
<ReturnAuthCode />
<OrderFormId>2</OrderFormId>
<Name>Default</Name>
<BillingAddressId />
<ShippingTotal>0.000000000</ShippingTotal>
<HandlingTotal>0.000000000</HandlingTotal>
<TaxTotal>0.000000000</TaxTotal>
<DiscountAmount>0.000000000</DiscountAmount>
<SubTotal>1000.000000000</SubTotal>
<Total>1000.000000000</Total>
<Status />
<RmaNumber />
<AuthorizedPaymentTotal>0.000000000</AuthorizedPaymentTotal>
<CapturedPaymentTotal>0.000000000</CapturedPaymentTotal>
<Properties>
<PropertyItem>
<Key>Epi_CouponCodes</Key>
</PropertyItem>
<PropertyItem>
<Key>RMANumber</Key>
</PropertyItem>
</Properties>
</OrderForm>
</OrderForms>
<OrderGroupId>2</OrderGroupId>
<OrderNotes />
<Owner />
<OwnerOrg />
<ProviderId />
<ShippingTotal>0.000000000</ShippingTotal>
<Status />
<SubTotal>1000.000000000</SubTotal>
<TaxTotal>0.000000000</TaxTotal>
<Total>1000.000000000</Total>
<Modified>2017-09-08T08:47:40.977Z</Modified>
<Created>2017-09-08T08:47:40.91Z</Created>
<Properties />
</PurchaseOrder>
</ArrayOfPurchaseOrder>
Orders can also be searched for using other criteria as decribed in the following.
Status
/episerverapi/commerce/orders/search/{start}/{maxCount}?Status={statusparams}.
Note
Multiple statuses can be used.
Date
/episerverapi/commerce/orders/search/{start}/{maxCount}?modifiedFrom={modified date}
Shipment status
/episerverapi/commerce/orders/search/{start}/{maxCount}?OrderShipmentStatus={Shipment status}
Shipping method ID
/episerverapi/commerce/orders/search/{start}/{maxCount}?ShippingMethodId={Shipping method id}
Shipment status and shipping method ID
/episerverapi/commerce/orders/search/{start}/{maxCount}?OrderShipmentStatus={ShipmentStatus}&ShippingMethodId={ShippingMethodID}
Create order
POST | post/episerverapi/commerce/orders | Create order |
JSON response type
var json = JsonConvert.SerializeObject(model);
var client = new HttpClient()
{
BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
};
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);
var result = client.PostAsync("/episerverapi/commerce/orders", new StringContent(json, Encoding.UTF8, "application/json")).Result.Content.ReadAsStringAsync().Result
XML response type
var client = new HttpClient()
{
BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
};
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);
var serializer = new XmlSerializer(typeof(PurchaseOrder));
var xml = String.Empty;
using (var ms = new MemoryStream())
{
serializer.Serialize(ms, model);
xml = Encoding.Default.GetString(ms.ToArray());
}
var result = client.PostAsync("/episerverapi/commerce/orders",
new StringContent(xml, Encoding.UTF8, "text/xml")).Result.Content.ReadAsStringAsync().Result
Response
<?xml version="1.0" encoding="UTF-8"?>
<PurchaseOrder>
<AddressId />
<AffiliateId>00000000-0000-0000-0000-000000000000</AffiliateId>
<BillingCurrency>USD</BillingCurrency>
<CustomerId>d7ede6ff-8e35-4e0e-94d7-5e1a1ba8adae</CustomerId>
<CustomerName>admin</CustomerName>
<HandlingTotal>0.000000000</HandlingTotal>
<InstanceId>b654e3ff-3b2f-4901-9295-57ed095b07f8</InstanceId>
<MarketId>DEFAULT</MarketId>
<Name>Default</Name>
<OrderAddresses />
<OrderForms>
<OrderForm>
<Shipments>
<Shipment>
<Discounts />
<ShipmentId>2</ShipmentId>
<ShippingMethodId>00000000-0000-0000-0000-000000000000</ShippingMethodId>
<ShippingMethodName />
<ShippingTax>0.000000000</ShippingTax>
<ShippingAddressId />
<ShipmentTrackingNumber />
<ShippingDiscountAmount>0.000000000</ShippingDiscountAmount>
<ShippingSubTotal>0.000000000</ShippingSubTotal>
<ShippingTotal>0.000000000</ShippingTotal>
<Status />
<PrevStatus />
<PickListId />
<SubTotal>1000.000000000</SubTotal>
<WarehouseCode />
<LineItems>
<LineItem>
<LineItemId>2</LineItemId>
<Code>Tops-Tunics-CowlNeck-Black-Small</Code>
<DisplayName>Tops-Tunics-CowlNeck-Black-Small</DisplayName>
<PlacedPrice>1000.000000000</PlacedPrice>
<ExtendedPrice>1000.000000000</ExtendedPrice>
<DiscountedPrice>1000.000000000</DiscountedPrice>
<Quantity>1</Quantity>
<ReturnQuantity>0.000000000</ReturnQuantity>
<InventoryTrackingStatus>Enabled</InventoryTrackingStatus>
<IsInventoryAllocated>false</IsInventoryAllocated>
<IsGift>false</IsGift>
</LineItem>
</LineItems>
<Properties>
<PropertyItem>
<Key>PrevStatus</Key>
</PropertyItem>
</Properties>
</Shipment>
</Shipments>
<LineItems>
<LineItem>
<LineItemId>2</LineItemId>
<Code>Tops-Tunics-CowlNeck-Black-Small</Code>
<DisplayName>Tops-Tunics-CowlNeck-Black-Small</DisplayName>
<PlacedPrice>1000.000000000</PlacedPrice>
<ExtendedPrice>1000.000000000000000000</ExtendedPrice>
<DiscountedPrice>1000.000000000000000000</DiscountedPrice>
<Quantity>1.000000000</Quantity>
<ReturnQuantity>0.000000000</ReturnQuantity>
<InventoryTrackingStatus>Enabled</InventoryTrackingStatus>
<IsInventoryAllocated>false</IsInventoryAllocated>
<IsGift>false</IsGift>
</LineItem>
</LineItems>
<Discounts />
<ReturnComment />
<ReturnType />
<ReturnAuthCode />
<OrderFormId>2</OrderFormId>
<Name>Default</Name>
<BillingAddressId />
<ShippingTotal>0.000000000</ShippingTotal>
<HandlingTotal>0.000000000</HandlingTotal>
<TaxTotal>0.000000000</TaxTotal>
<DiscountAmount>0.000000000</DiscountAmount>
<SubTotal>1000.000000000</SubTotal>
<Total>1000.000000000</Total>
<Status />
<RmaNumber />
<AuthorizedPaymentTotal>0.000000000</AuthorizedPaymentTotal>
<CapturedPaymentTotal>0.000000000</CapturedPaymentTotal>
<Properties>
<PropertyItem>
<Key>Epi_CouponCodes</Key>
</PropertyItem>
<PropertyItem>
<Key>RMANumber</Key>
</PropertyItem>
</Properties>
</OrderForm>
</OrderForms>
<OrderGroupId>2</OrderGroupId>
<OrderNotes />
<Owner />
<OwnerOrg />
<ProviderId />
<ShippingTotal>0.000000000</ShippingTotal>
<Status />
<SubTotal>1000.000000000</SubTotal>
<TaxTotal>0.000000000</TaxTotal>
<Total>1000.000000000</Total>
<Modified>2017-09-08T08:47:40.977Z</Modified>
<Created>2017-09-08T08:47:40.91Z</Created>
<Properties />
</PurchaseOrder>
Update order
PUT | put/episerverapi/commerce/orders/{orderGroupId} | Update order |
JSON response type
var json = JsonConvert.SerializeObject(model);
var client = new HttpClient()
{
BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
};
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);
var result = client.PutAsync("/episerverapi/commerce/orders/{orderGroupId}", new StringContent(json, Encoding.UTF8, "application/json")).Result.Content.ReadAsStringAsync().Result
XML response types
var client = new HttpClient()
{
BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
};
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);
var serializer = new XmlSerializer(typeof(PurchaseOrder));
var xml = String.Empty;
using (var ms = new MemoryStream())
{
serializer.Serialize(ms, model);
xml = Encoding.Default.GetString(ms.ToArray());
}
var result = client.PutAsync("/episerverapi/commerce/orders/{orderGroupId}",
new StringContent(xml, Encoding.UTF8, "text/xml")).Result.Content.ReadAsStringAsync().Result
Response
200 No Content
Delete order
DELETE | delete/episerverapi/commerce/orders/{orderGroupId} | Delete order |
JSON response type
var client = new HttpClient()
{
BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
};
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);
var result = client.DeleteAsync("/episerverapi/commerce/orders/{orderGroupId}").Result.Content.ReadAsStringAsync().Result
XML response type
var client = new HttpClient()
{
BaseAddress = new Uri(ConfigurationManager.AppSettings["integrationUrl"])
};
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.AccessToken);
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("text/xml"));
var result = client.DeleteAsync("/episerverapi/commerce/orders/{orderGroupId}").Result.Content.ReadAsStringAsync().Result
Response
<?xml version="1.0" encoding="UTF-8"?>
<PurchaseOrder>
<AddressId />
<AffiliateId>00000000-0000-0000-0000-000000000000</AffiliateId>
<BillingCurrency>USD</BillingCurrency>
<CustomerId>d7ede6ff-8e35-4e0e-94d7-5e1a1ba8adae</CustomerId>
<CustomerName>admin</CustomerName>
<HandlingTotal>0.000000000</HandlingTotal>
<InstanceId>b654e3ff-3b2f-4901-9295-57ed095b07f8</InstanceId>
<MarketId>DEFAULT</MarketId>
<Name>Default</Name>
<OrderAddresses />
<OrderForms>
<OrderForm>
<Shipments>
<Shipment>
<Discounts />
<ShipmentId>2</ShipmentId>
<ShippingMethodId>00000000-0000-0000-0000-000000000000</ShippingMethodId>
<ShippingMethodName />
<ShippingTax>0.000000000</ShippingTax>
<ShippingAddressId />
<ShipmentTrackingNumber />
<ShippingDiscountAmount>0.000000000</ShippingDiscountAmount>
<ShippingSubTotal>0.000000000</ShippingSubTotal>
<ShippingTotal>0.000000000</ShippingTotal>
<Status />
<PrevStatus />
<PickListId />
<SubTotal>1000.000000000</SubTotal>
<WarehouseCode />
<LineItems>
<LineItem>
<LineItemId>2</LineItemId>
<Code>Tops-Tunics-CowlNeck-Black-Small</Code>
<DisplayName>Tops-Tunics-CowlNeck-Black-Small</DisplayName>
<PlacedPrice>1000.000000000</PlacedPrice>
<ExtendedPrice>1000.000000000</ExtendedPrice>
<DiscountedPrice>1000.000000000</DiscountedPrice>
<Quantity>1</Quantity>
<ReturnQuantity>0.000000000</ReturnQuantity>
<InventoryTrackingStatus>Enabled</InventoryTrackingStatus>
<IsInventoryAllocated>false</IsInventoryAllocated>
<IsGift>false</IsGift>
</LineItem>
</LineItems>
<Properties>
<PropertyItem>
<Key>PrevStatus</Key>
</PropertyItem>
</Properties>
</Shipment>
</Shipments>
<LineItems>
<LineItem>
<LineItemId>2</LineItemId>
<Code>Tops-Tunics-CowlNeck-Black-Small</Code>
<DisplayName>Tops-Tunics-CowlNeck-Black-Small</DisplayName>
<PlacedPrice>1000.000000000</PlacedPrice>
<ExtendedPrice>1000.000000000000000000</ExtendedPrice>
<DiscountedPrice>1000.000000000000000000</DiscountedPrice>
<Quantity>1.000000000</Quantity>
<ReturnQuantity>0.000000000</ReturnQuantity>
<InventoryTrackingStatus>Enabled</InventoryTrackingStatus>
<IsInventoryAllocated>false</IsInventoryAllocated>
<IsGift>false</IsGift>
</LineItem>
</LineItems>
<Discounts />
<ReturnComment />
<ReturnType />
<ReturnAuthCode />
<OrderFormId>2</OrderFormId>
<Name>Default</Name>
<BillingAddressId />
<ShippingTotal>0.000000000</ShippingTotal>
<HandlingTotal>0.000000000</HandlingTotal>
<TaxTotal>0.000000000</TaxTotal>
<DiscountAmount>0.000000000</DiscountAmount>
<SubTotal>1000.000000000</SubTotal>
<Total>1000.000000000</Total>
<Status />
<RmaNumber />
<AuthorizedPaymentTotal>0.000000000</AuthorizedPaymentTotal>
<CapturedPaymentTotal>0.000000000</CapturedPaymentTotal>
<Properties>
<PropertyItem>
<Key>Epi_CouponCodes</Key>
</PropertyItem>
<PropertyItem>
<Key>RMANumber</Key>
</PropertyItem>
</Properties>
</OrderForm>
</OrderForms>
<OrderGroupId>2</OrderGroupId>
<OrderNotes />
<Owner />
<OwnerOrg />
<ProviderId />
<ShippingTotal>0.000000000</ShippingTotal>
<Status />
<SubTotal>1000.000000000</SubTotal>
<TaxTotal>0.000000000</TaxTotal>
<Total>1000.000000000</Total>
<Modified>2017-09-08T08:47:40.977Z</Modified>
<Created>2017-09-08T08:47:40.91Z</Created>
<Properties />
</PurchaseOrder>
Updated over 1 year ago
Next