---
title: "Order Service 3.0"
slug: "order-service-30"
updated: 2024-04-08T16:14:48Z
published: 2024-04-08T16:14:48Z
canonical: "docs.winedirect.com/order-service-30"
---
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.winedirect.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Order Service 3.0
If you are using the methods below, we are making stability improvements that may effect you. [Click Here](https://documentation.vin65.com/APIs/stability-updates) for more information.
### WSDL:
[https://webservices.vin65.com/V301/OrderService.cfc?wsdl](https://webservices.vin65.com/V301/OrderService.cfc?wsdl)
[https://webservices.vin65.com/V304/OrderService.cfc?wsdl](https://webservices.vin65.com/V304/OrderService.cfc?wsdl)
#### Australian URL:
[https://webservices.aus.vin65.com/V301/OrderService.cfc?wsdl](https://webservices.aus.vin65.com/V301/OrderService.cfc?wsdl)
[https://webservices.aus.vin65.com/V304/OrderService.cfc?wsdl](https://webservices.aus.vin65.com/V304/OrderService.cfc?wsdl)
### Methods:
**[SearchOrders()](https://documentation.vin65.com/Webservices/Webservices-V3/Order-Service/Search-Orders)** Use this method to search across orders.
[**GetOrderDetail()**](https://documentation.vin65.com/Webservices/Webservices-V3/Order-Service/Get-Order-Detail) Use this method to get a single order.
[**UpsertOrder()**](https://documentation.vin65.com/Webservices/Webservices-V3/Order-Service/Upsert-Order) Use this method to upsert orders.
[Page Top](/developer-docs/docs/order-service-30#)
# SearchOrders()
### Part Of: Order Webservice 3.0
If you are using the 301 **GetOrder()** or **SearchOrders()**, we are making stability improvements that may effect you. [Click Here](https://documentation.vin65.com/APIs/stability-updates) for more information.
### WSDL:
[https://webservices.vin65.com/V301/OrderService.cfc?wsdl](https://webservices.vin65.com/V301/OrderService.cfc?wsdl)
#### Australian URL:
[https://webservices.aus.vin65.com/V301/OrderService.cfc?wsdl](https://webservices.aus.vin65.com/V301/OrderService.cfc?wsdl)
### Description:
Use the SearchOrders() function to get a single order or a list of orders using the search options listed below. Required fields are indicated by a '*'
Webservices V3.0+ date/time stamps are UTC time.
### Parameters:
| Attribute | Data Type | Default | Description |
| --- | --- | --- | --- |
| WebsiteIDs | UUID List | | Available for Enterprise Webservices Comma seperated list of WebsiteIDs in Enterprise Leave blank for all Websites |
| OrderID | UUID | | UUID of the Order |
| OrderNumber | Integer | | |
| OrderStatus | Enumerated ("Submitted", "Quarantine", "Pending", "Completed", "Cancelled","Hold") | | |
| PaymentStatus | Enumerated ("Refunded", "Voided", "Submitted", "Declined", "Paid", Authorized", "Pending") | | |
| ShippingStatus | Enumerated ("PickedUp, "SentToFulfillment", "Shipped", "NoStatus") | | |
| Type | String 50 | | |
| IsAPickupOrder | Boolean | | |
| IsPendingPickup | Boolean | | |
| IsARMSOrder | Boolean | | Is this order from RMS. This element is present in V301 and higher. |
| IncludeExternalOrders | Boolean | 1 | |
| PickupLocationCode | String 50 | | This element is present in V301 and higher. |
| ContactID | UUID | | |
| BillFirstName | String 50 | | |
| BillLastName | String 50 | | |
| ShipFirstName | String 50 | | |
| ShipLastName | String 50 | | |
| ShipStateCode | String 50 | | |
| DateSubmittedFrom | DateTime | | |
| DateSubmittedTo | DateTime | | |
| DateCompletedFrom | DateTime | | |
| DateCompletedTo | DateTime | | |
| DateModifiedFrom | DateTime | | |
| DateModifiedTo | DateTime | | |
| DateShippedFrom | DateTime | | |
| DateShippedTo | DateTime | | |
| MaxRows | Integer | | |
| Page | Integer | 1 | |
### Sample Request:
```
Your Username
Your Password
Completed
2011-01-01T12:21:43
2011-09-12T12:21:43
1
```
### Sample Response:
```
true
Robert
Brooks
2011-10-12T07:00:00.000Z
53adb940-1cc4-81ae-75bd-c23688b90118
2011-10-12T07:00:00.000Z
false
false
false
53adb9b3-1cc4-81ae-753d-57e6bff2c698
243
Completed
26.00
Robert
Brooks
CA
NoStatus
2011-10-12T07:00:00.000Z
ClubOrder
66272648-1e0b-4e34-f09b-81477a31b25f
Jason
Cordova
2011-10-12T07:00:00.000Z
2011-10-12T07:00:00.000Z
53c50536-1cc4-81ae-7547-24175bd1c2ef
false
false
false
53c505eb-1cc4-81ae-75f6-6377c60cba8e
251
Completed
26.00
Jason
Cordova
TX
NoStatus
2011-10-12T07:00:00.000Z
ClubOrder
66272648-1e0b-4e34-f09b-81477a31b25f
2
```
[Page Top](/developer-docs/docs/order-service-30#)
# GetOrderDetail()
### Part Of: Order Webservice 3.0
If you are using the 301 **GetOrder()** or **SearchOrders()**, we are making stability improvements that may effect you. [Click Here](https://documentation.vin65.com/APIs/stability-updates) for more information.
### WSDL:
[https://webservices.vin65.com/V301/OrderService.cfc?wsdl](https://webservices.vin65.com/V301/OrderService.cfc?wsdl)
#### Australian URL:
[https://webservices.aus.vin65.com/V301/OrderService.cfc?wsdl](https://webservices.aus.vin65.com/V301/OrderService.cfc?wsdl)
### Description:
Use the GetOrder() function to get a order contact. Required fields are indicated by a '*'
Webservices V3.0+ date/time stamps are UTC time.
### Parameters:
| Attribute | Data Type | Default | Description |
| --- | --- | --- | --- |
| WebsiteID | UUID | | Available For Enterprise Webservices UUID of the Vin65 Website Not necessary if OrderID is present Useful if searching by OrderNumber and OrderNumber is not unique across Enterprise |
| OrderID | UUID | | UUID of the Vin65 OrderID |
| OrderNumber | Integer | | |
| ShowKitAsIndividualSKUs | Boolean | False | |
### Sample Request:
```
Your Username
Your Password
f660d5e3-0173-4a19-0838-3eff95f2f20b
```
### Sample Response:
```
true
0.00
0.00
123 Test Ave
110ae037-5a79-e111-936b-000c295a8381
1902-03-19T08:00:00.000Z
Testville
Red Club
2014 May Shipment
4c58d5ef-edf8-b355-ebf8-d36c39c44d7e
9050
2012-01-17T23:38:12.590Z
2012-04-24T18:17:26.217Z
josh@vin65.com
Josh
false
2012-04-24T18:17:26.217Z
Clysdale
2012-04-24T17:41:56.457Z
2320.94
18
000-000-0000
CA
Event
test123
66272648-1e0b-4e34-f09b-81477a31b25f
123456
1.20
WineDirectFulfillment
10.50
false
false
$25 Dollar Off Case Discount
25.00
0.00
25.00
f660d5e3-0173-4a19-0838-3eff95f2f20b
0.00
WineDirect
74.00
71.92
eaecdcc6-08ee-88fb-6368-2fb5f5bc8e0e
eaecdce8-ee5a-7217-ed1e-c6f6c3afa066
12
Gewürztraminer
72.76
UPS
false
false
Gewürztraminer
Wine
375ml
3.0
Original Order
60345
Submitted
Authorized
0
Retail
123 Test Ave
1902-03-19T08:00:00.000Z
Testville
josh@vin65.com
Josh
Clysdale
000-000-0000
CA
123456
18.85
UPS
863.04
72.76
900.00
1
2015
************5454
Visa
CreditCard
true
66.35
Cash
true
966.35
1
2015
************5454
Visa
CreditCard
false
0.00
966.35
966.35
Order
AdminPanel
66272648-1e0b-4e34-f09b-81477a31b25f
1
```
[Page Top](/developer-docs/docs/order-service-30#)
# UpsertOrder()
### Part Of: Order Webservice 3.04
### WSDL:
[https://webservices.vin65.com/V304/OrderService.cfc?wsdl](https://webservices.vin65.com/V304/OrderService.cfc?wsdl)
#### Australian URL:
[https://webservices.aus.vin65.com/V304/OrderService.cfc?wsdl](https://webservices.aus.vin65.com/V304/OrderService.cfc?wsdl)
Description:
Use the UpsertOrder() function to upsert an array of orders. Required fields are indicated by a *****.
### Parameters:
| Attribute | Data Type | Default | Description |
| --- | --- | --- | --- |
| Orders ***** | Array of Objects | | Contains the following attributes. At least 1 is required in the Orders array. |
| Order.WebsiteCode | String 50 | | A text code to identify a source of orders for websites with multiple sources pushing orders in. Typically this is used for wineries with multiple tasting rooms. |
| Order.ContactID | UUID | | The internal WineDirect ID for the contact this order belongs to, if known. |
| Order.AltContactID | String 50 | | Your external reference for the contact this order belongs to, if known. |
| Order.OrderType | String 50 | POS | One of 'AdminPanel, ClubOrder, Facebook, iPad, Mobile, POS, Telemarketing or Website'. Note client can modify order types, if defaults are changed and you pass in an order type that does not exist, the response will be a friendly error with a list of order types that are accepted. |
| Order.OrderNumber ***** | String 50 | | The order number in your system. |
| Order.OrderDate ***** | Date | | The date the order was first placed. |
| Order.ShipDate | Date | | The date the order is shipped. |
| Order.ShippingStatus | String 255 | Handled Externally | Shipping Status must be one of: 'Picked Up, Handled Externally, No Shipping Required, Sent to Fulfillment, Shipped'. |
| Order.BillingBirthdate | Date | | Billing contact's birthdate. Format is in: MM/DD/YYYY or DD/MM/YYYY. |
| Order.BillingFirstName | String 50 | | Billing contact's first name. |
| Order.BillingLastName | String 50 | | Billing contact's last name. |
| Order.BillingCompany | String 100 | | Billing contact's company. |
| Order.BillingAddress | String 100 | | Billing contact's address. |
| Order.BillingAddress2 | String 100 | | Additional information regarding the billing contact's address. |
| Order.BillingCity | String 100 | | Billing contact's city. |
| Order.BillingStateCode | String 2 | | Billing address State/Provice code. Two character abreviated state or province code. Example: California = CA and British Columbia = BC |
| Order.BillingZipCode | String 50 | | Billing contact's address zip code. |
| Order.BillingPhone | String 50 | | Billing contact's phone number. Format is in: 000-000-0000. |
| Order.BillingEmail ***** | String 100 | | Billing contact's email address. Used as a secondary means of matching order history to customer records. If no customer number is included orders will be matched with a customer record using the billing email address. If no customer record is found that matches the email, a new contact record will be created. |
| Order.ShippingBirthdate | Date | | Shipping contact's birthdate. Format is in: MM/DD/YYYY or DD/MM/YYYY. |
| Order.ShippingFirstName | String 50 | | Shipping contact's first name. |
| Order.ShippingLastName | String 50 | | Shipping contact's last name. |
| Order.ShippingCompany | String 100 | | Shipping contact's company. |
| Order.ShippingAddress | String 100 | | Shipping contact's address. |
| Order.ShippingAddress2 | String 100 | | Additional information regarding the shipping contact's address. |
| Order.ShippingCity | String 100 | | Shipping contact's city. |
| Order.ShippingStateCode | String 2 | | Shipping address State/Provice code. Two character abreviated state or province code. Example: California = CA and British Columbia = BC |
| Order.ShippingZipCode | String 50 | | Shipping contact's address zip code. |
| Order.ShippingPhone | String 50 | | Shipping contact's phone number. Format is in: 000-000-0000. |
| Order.ShippingEmail | String 100 | | Shipping recipient's email address. |
| Order.ShippingAddressID | UUID | | If the order is being shipped to a known address book entry whose internal WineDirect ID is known, you can provide that here and it will be updated with any changes included in the order. |
| Order.AltShippingAddressID | String 50 | | Your shipping address ID, if known, will be used to either match to an existing entry in WineDirect or create a new one on the fly. |
| Order.GiftMessage | String 1024 | | Gift message included on the order. |
| Order.OrderNotes | String 1024 | | These notes are typically from the customer intended to be viewed by the winery or fulfillment. They are visible to the customer, so **do not put internal notes** in this field that you don’t want them to see. |
| Order.SubTotal | Numeric | | The total of line items in the order only. |
| Order.Shipping | Numeric | | The amount charged for shipping. |
| Order.Handling | Numeric | | The amount charged for handling. |
| Order.Tax | Numeric | | The amount charged for tax, not the tax rate. |
| Order.Total | Numeric | | The total amount charged which should equal the sum of subtotal, shipping, handling, and tax. |
| Order.SendToFulfillment | Boolean | False | Sends orders to fulfillment through the WineDirect fulfillment manager if set to true. |
| Order.TransactionType | String | | Either 'Order' or 'Refund'. If it's a 'Refund' - need to pass in 'PreviousOrderID' or 'PreviousOrderNumber'. |
| Order.PreviousOrderNumber | Numeric | | Internal WineDirect order number for the previous order. |
| Order.PreviousOrderID | UUID | | Internal WineDirect ID for the previous order. |
| Order.SourceCode | String | | A way to identify where orders came from (used in reporting). |
| Order.SalesAssociate | String | | Matches the name of an existing Sales Associate in the system. A friendly error will be returned if there are no matches. |
| Order.IsPickup | Boolean | True | Whether the order is a pickup or shipping order. |
| Order.Tenders | Array of Objects | | Each Tender contains the following attributes. |
| Order.Tender.PaymentType ***** | String 50 | | Payment Type must be one of the following: 'GiftCard, Points, Cash, Check, CreditCard, OnAccount, ZeroDollarInvoice, Other'. If the payment type is 'CreditCard', then 'CreditCardExpirationMonth', 'CreditCardExpirationYear', and 'CreditCardType' are required |
| Order.Tender.PaymentDate | Date | | Date the payment took place. |
| Order.Tender.AmountTendered ***** | Numeric | | Amount the tender covered of the order. |
| Order.Tender.CreditCardExpirationMonth | Integer | | Month of the credit card's expiry. Required if 'PaymentType' is 'CreditCard'. |
| Order.Tender.CreditCardExpirationYear | Integer | | Year of the credit card's expiry. Required if 'PaymentType' is 'CreditCard'. |
| Order.Tender.CreditCardType | String | | An enumerated field that is one of: 'Visa, MasterCard, AmericanExpress, Discover, JCB, Diners'. Required if 'PaymentType' is 'CreditCard'. |
| Order.Tender.CreditCardName | String 100 | | The name on the credit card. |
| Order.Tender.CreditCardNumber | String | | The credit card number. |
| Order.Tender.PointsRedeemed | Integer | | Number of points redeemed. |
| Order.Tender.GiftCardID | UUID | | The WineDirect ID of a gift card, if known. |
| Order.Tender.GiftCardCode | String 50 | | The code for the Gift Card. |
| Order.Tender.GiftCardNumber | Integer | | The Gift Card number. |
| Order.Tender.GiftCardVendor | Integer | | The vendor of the Gift Card. |
| Order.OrderItems | Array of Objects | | Each OrderItem contains the following attributes. |
| Order.OrderItem.Quantity ***** | Integer | | Quantity of the order item. |
| Order.OrderItem.ProductName | String 255 | | Name of the product. |
| Order.OrderItem.ProductSKU ***** | String 255 | | SKU of the product. |
| Order.OrderItem.InventoryPoolID | UUID | | The WineDirect ID for the inventory pool that the SKU's quantity should be deprecated from. |
| Order.OrderItem.DepartmentCode | String 50 | | The department code for this item. If this code is pre-setup in WineDirect then reports will show the department name otherwise they will just show the code that is uploaded for this item. |
| Order.OrderItem.SubDepartmentCode | String 50 | | The sub department code for this item. If this code is pre-setup in WineDirect then reports will show the sub department name otherwise they will just show the code that is uploaded for this item. |
| Order.OrderItem.OriginalPrice | Numeric | | Unit original price before discounts. |
| Order.OrderItem.Price ***** | Numeric | | Unit price after discounts that will be multiplied by quantity to get the extended price. |
| Order.OrderItem.CostOfGood | Numeric | | Unit cost of good. |
| Order.OrderItem.SalesTax | Numeric | | Optionally, set the amount of tax to be applied to a specific item in the order. |
| Order.OrderItem.IsNonTaxable | Boolean | False | Set to true to mark an item as non-taxable for the purpose of calculating tax by line item. |
| Order.OrderItem.ShippingService | String 100 | | The shipping code used on this order item. Typically things like “GROUND”, “2DAY”, etc. |
| Order.OrderItem.ShippingPartner | String 100 | | The shipping company used. Typically “InHouseFedEx”, “InHouseUPS”, “WineShipping”, etc. |
| Order.RMS | Object | | Only used for WineDirect RMS cloud connect POS order uploads. Attributes are described below. |
| Order.RMS.BatchID | String 50 | | |
| Order.RMS.CashierID | String 20 | | |
| Order.RMS.RegisterNumber | String 20 | | |
| Order.RMS.StoreID | String 20 | | |
### Sample Request:
```
//Your Username//
//Your Password//
-
123
2019-07-20
AdminPanel
michael.hersch@winedirect.com
Michael
Hersch
-
2004Shiraz
2
75.00
-
Cash
150
150.00
150.00
-
456
AdminPanel
```
### Sample Response:
```
InvalidOrder
1 orders(s) failed to upsert. View 'OrderResults' for more details.
false
true
123
5897B83E-EC54-1187-9214-72B17F0ED71C
2014-04-03T21:54:16.703Z
2019-07-29T16:59:04.003Z
michael.hersch@winedirect.com
Michael
false
2018-07-25T17:51:31.000Z
Hersch
2019-07-20T07:00:00.000Z
52316.17
517.0
michael.hersch@winedirect.com
00000000-0000-0000-0000-000000000000
2019-07-20T07:00:00.000Z
0.0
0.0
true
true
72B6CF66-B479-47A6-B51E-7844EF88A207
0.0
false
false
75.0
75.0
B6E75D00-DA92-F695-E7A5-0ADDC6ACB6D6
B6E75D59-AB45-48C3-49F8-7FD821B39EA8
2.0
2004Shiraz
0.0
Wine
Bottle
77728
Completed
External
0.0
Handled Externally
150.0
2019-07-20T07:00:00.000Z
0.0
150.0
true
External
Cash
0.0
150.0
150.0
Order
AdminPanel
00000000-0000-0000-0000-000000000000
InvalidMemberParameters
A valid email address, contactID, or altContactID is required.
InvalidOrderDate
Order Date must be a valid date.
false
1.0
```
[Page Top](/developer-docs/docs/order-service-30#)