Welcome to the Omni™ OMS API powered by Tecsys. Currently, our REST API allows you to manage your Custom Field Metadata, Inventory Locations, Orders, Physical Inventory Visibility, Pre-order Visibility, Virtual Inventory Visibility, and Store Locations on the Omni™ OMS Platform. You'll need an HTTP client in order to send requests to our APIs.
Custom fields are a feature provided for businesses who may require additional information on the standard set of forms that are provided with Commerce Manager. For example, if you are adding a new customer but you want a field that will show them as a "priority customer". Using our API, you can see the metadata for each custom field that is created.
HTTP Method
Endpoint
GET
/v1/customfieldmetadata/?OwnerType={OwnerType}&SystemNames={SystemNames}
GET
/v1/customfieldmetadata/{ownertype}/
Inventory Locations are any physical locations containing inventory. For example, an inventory location can be a store, a storage room in a store, a warehouse with a store attached, a free standing warehouse, or locations within a warehouse. Inventory is always connected to inventory locations.
HTTP Method
Endpoint
POST
/v1/inventorylocations
DEL, PUT
/v1/inventorylocations/?locationInternalName={locationInternalName}
GET
/v1/inventorylocations/[?locationInternalName][&pageSize][&pageNumber]
GET
/v1/inventorylocations/customfields?locationInternalNames={locationInternalNames}[&pageSize][&pageNumber]
PUT
/v1/inventorylocations/customfields
An order represents a commitment on the part of the customer to purchase. It contains information about quantities, shipping methods, payment methods, discounts, etc. Orders can be referenced by their ExternalOrderID.
HTTP Method
Endpoint
POST
/v1/orders/Cancel[?internalOrderId][&externalOrderId][&cancelReason]
GET
/v1/orders/[?InternalOrderId][&ExternalOrderId]
POST
/v1/orders/Search[?pageSize][&pageNumber]
POST
/v1/orders/Customers
GET
/v1/orders/Status[?InternalOrderId][&ExternalOrderId]
GET
/v1/orders/Customers[?InternalCustomerId][&ExternalCustomerId]
PUT
/v1/orders/LineItems/CustomFields
PUT
/v1/orders/CustomFields
PUT
/v1/orders/Payments/customfields
POST
/v1/orders
There are many different types of inventory counts such as allocated, available, on-hand, reserved, etc. In order to find out the inventory counts, you'll need to provide one or more inventory locations in your request.
HTTP Method
Endpoint
GET
/v1/inventory/allocated?locationInternalNames={locationInternalNames}[&skus][&pageSize][&pageNumber]
GET
/v1/inventory/available?locationInternalNames={locationInternalNames}[&skus][&pageSize][&pageNumber]
GET
/v1/inventory/stores/available?storeInternalName={storeInternalName}[&skus][&pageSize][&pageNumber]
GET
/v1/inventory/onhand?locationInternalNames={locationInternalNames}[&skus][&pageSize][&pageNumber]
GET
/v1/inventory/overall?locationInternalNames={locationInternalNames}[&skus][&type][&pageSize][&pageNumber]
GET
/v1/inventory/reserved?locationInternalNames={locationInternalNames}[&skus][&pageSize][&pageNumber]
GET
/v1/inventory/totals?skus={skus}[&type]
PUT
/v1/inventory/onhand
PUT, DELETE
/v1/inventory/reserved
GET
/v1/inventory/customfields?sku={sku}&locationInternalName={locationInternalName}
PUT
/v1/inventory/customfields
Pre-orders allows customers to place orders for items not yet in stock. Waves are a central component of pre-orders. A pre-order wave describes the planned release of a pre-order item, including the timing and distribution of the item. Using our API, you can see the quantity of items planned for a wave and the quantity of items that have been sequenced (i.e. allocated) for customers.
HTTP Method
Endpoint
GET
/v1/preorderinventory/?Sku={Sku}
Virtual inventory doesn't exist at a specific location. We use inventory pool groups to view virtual inventory counts. An inventory pool combines the inventory available at a selection of inventory locations and then applies a calculation to that combination of inventory. Inventory pool groups are collections of inventory pools.
HTTP Method
Endpoint
GET
/v1/virtualinventory/?inventoryPoolGroupNames={inventoryPoolGroupNames}[&skus][&pageSize][&pageNumber]
Order fulfillment deals with the shipment(s) of each order. We use the Order Fulfillment API to create shipments for the orders, delete shipments and to view all shipments for a particular order. Shipments can be referenced by their ShipmentID. You can also find orders using the Internal or External OrderId.
HTTP Method
Endpoint
POST
/v1/orderfulfillment/shipments/CreateAllShipments
POST
/v1/orderfulfillment/shipments/Cancel[?Shipment]
GET
/v1/orderfulfillment/shipments/[?CreateDateTimeUtcAfter][&CreateDateTimeUtcBefore][&ShipmentId][&InternalOrderId][&ExternalOrderId][&ShipmentStatus][&RouteDestinationName][&pageSize][&pageNumber]
POST
/v1/orderfulfillment/shipments/Reject
POST
/v1/orderfulfillment/shipments/Reroute
POST
/v1/orderfulfillment/shipments/SplitShipmentByOrderDetailId
POST
/v1/orderfulfillment/shipments/SplitShipmentBySku
Store locations are the locations where your physical store is. You can create, update, delete and maintain your store information through the API. Your store location can be accessed through the storeInternalName which is the unique name you want to use for your store.
HTTP Method
Endpoint
POST
/v1/storelocations/
GET
/v1/storelocations/[?storeInternalName][&pageSize][&pageNumber]
PUT, DEL
/v1/storelocations/?storeInternalName={storeInternalName}
The Payment Processing API shows you information on how the orders were paid. You can see the payment gateways, payment methods and retry payments through the API.
HTTP Method
Endpoint
GET
/v1/paymentprocessing/OrderTransactions[?InternalOrderId][&ExternalOrderId][&InvoiceId]
To suggest new features, visit Aha! and go to the API Webservices category.
For engagement and partner questions, email omnioms.apiproduct@tecsys.com.
If you're ready to start using our API, head over to Getting Started.
Powered by Azure API Management.