# Create sales order Successful execution of this method will generate a new shipment order in Wineshipping's system and will return a transaction reference identifier. Store this identifier back into your system for reference later in the event there is an issue with your order. Endpoint: POST /api/SalesOrder/CreateSalesOrder Version: 3.1.3 Security: Authentication ## Request fields (application/json): - `Authentication` (object, required) Credentials are required for all API operations. - `Authentication.UserKey` (string, required) Example: "C445598CB576468EA35FBB22C55584EF" - `Authentication.Password` (string, required) Example: "AF63FDAC1E704DC1AC9460F669ABF107" - `Authentication.CustomerNo` (string, required) Example: "10703" - `OrderInfo` (object, required) test - `OrderInfo.TransmissionId` (string) Example: "TransID-083021" - `OrderInfo.OrderNo` (string, required) Usually the order number in your point of sle system. Example: "TESTORDER-1" - `OrderInfo.PONo` (string) - `OrderInfo.ShipmentKey` (string) - `OrderInfo.OrderType` (string, required) RETAILUsed for daily orders.CLUBUsed for club and subscription orders.DTTUsed for 'Direct-To-Trade' orders that go directly to a retailer.WHOLESALEUsed for orders that go to a distributor.DELIVERY_TO_WINERYUsed for orders that move inventory on behalf of the winery without changing ownership (aka RTW). Enum: "CLUB", "RETAIL", "DTT", "JIT", "DELIVERY_TO_WINERY", "WHOLESALE" - `OrderInfo.OrderSource` (string) Example: "Tasting Room" - `OrderInfo.OrderDate` (string) Example: "2025-08-24T14:15:22Z" - `OrderInfo.GiftCard` (integer) Indicates there is a gift message with this order Enum: 0, 1 - `OrderInfo.GiftCardMessage` (string) Required if GiftCard set to 1 Example: "gift message text" - `OrderInfo.Tags` (string) - `OrderInfo.SpecialInstructions` (string) - `OrderInfo.ConsumerTaxCollected` (string) Total Tax Collected on an Order - useful for compliance - `OrderInfo.ConsumerShippingPrice` (string) Total Shipping cost collected on an Order - useful for compliance - `OrderInfo.BatchId` (string) Example: "TSTORDER" - `OrderInfo.BatchDescription` (string) Example: "Club Mixed Red 3PK" - `RecipientContactInfo` (object) - `RecipientContactInfo.FirstName` (string) Example: "Jane" - `RecipientContactInfo.LastName` (string) Example: "Doe" - `RecipientContactInfo.Company` (string) Example: "Wineshipping" - `RecipientContactInfo.Address` (string) Example: "50 Technology Ct" - `RecipientContactInfo.Address2` (string) - `RecipientContactInfo.City` (string) Example: "Napa" - `RecipientContactInfo.State` (string) Example: "CA" - `RecipientContactInfo.ZipCode` (string) Example: "94558" - `RecipientContactInfo.Country` (string) Example: "US" - `RecipientContactInfo.PhoneNumber` (string) Example: "7079339063" - `RecipientContactInfo.EmailAddress` (string) Example: "someone@wineshipping.com" - `BillingContactInfo` (object) - `ShipmentInfo` (object) - `ShipmentInfo.ShippingCarrier` (string) See [carrier codes](../../../../docs/codes/carriercodes) for possible values. Enum: "FEX", "UPS", "BSW", "GSO", "WIL", "FCC", "TMC", "WST", "WILL" - `ShipmentInfo.ShippingCarrierService` (string) See [carrier codes](../../../../docs/codes/carriercodes) for possible values. Enum: "ONPR", "GRND", "2DAY", "HOME", "ONST", "CALL", "LPDS", "NONE" - `ShipmentInfo.RequestedShipmentDate` (string) RequestedShipmentDate is optional (MM/DD/YYYY format) and is only meaningful to schedule shipment in the future. By default orders will be processed as soon as possible, in-line with your account preferences (cutoff schedules for each site and carrier service) Example: "8/31/2025" - `ShipmentInfo.Insurance` (integer) Enum: 0, 1 - `ShipmentInfo.IcePack` (integer) Enum: 0, 1 - `ShipmentInfo.WineshippingWarehouseLocation` (string) See [warehouse locations](../../../../docs/codes/warehouselocations) for possible values. Enum: "APC01", "APC02", "COB01", "COB02", "ETC01", "MMC01", "PRB02", "PRB04", "SJU01", "TWL01", "VCX01", "WOX01" - `ItemsInfo` (array) - `ItemsInfo.ItemNo` (string, required) Example: "1466-SE" - `ItemsInfo.ItemDescription` (string) Example: "2016 CAB SAUV RESERVE NAPA VALLEY" - `ItemsInfo.ItemQuantity` (integer, required) Example: 6 - `ItemsInfo.QuantityUnit` (string) Specify whether an Item Quantity should be denominated in Retail (i.e. bottles) or Wholesale (i.e. cases) when creating an order. Enum: "RETAIL", "WHOLESALE" - `ItemsInfo.InventoryTaxStatus` (string) Only applicable to non-DTC order types such as Wholesale. See [inventory codes](../../../../docs/inventorycodes) for possible values. - `ItemsInfo.AdditionalFields` (object) These are optional parameters for specific business scenarios - `DeliveryContactInfo` (object) - `DeliveryContactInfo.HoldAtLocation` (integer) Set at 1 for adding Hold At Location specific addresses for the Order (UPS Access Points & FedEx Hold Locations) – it is not necessary to add Delivery Location Info not using Hold at Locations Enum: 0, 1 - `DeliveryContactInfo.LocationCode` (string) - `TransactionReferenceNumber` (string) Unique identifier of the order to be used when cancelling or updating an order. The TransactionReferenceValue is returned by the CreateSalesOrder response. If TransactionReferenceNumber is provided OrderNo is ignored. - `HoldOrder` (boolean) If set to True or 1, the order will be placed on Fulfillment Hold and will not automatically be fulfilled by Wineshipping until either set to false using UpdateSalesOrder or manually fulfilled via ACP