Overview

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.

A quick look at our APIs

Custom Field Metadata API

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 API

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

Order Orchestration API

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

Physical Inventory Visibility API

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-order Inventory Visibility API

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 Visibility API

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 API

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 API

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}

Payment Processing API

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]

Contact Us

To suggest new features, visit Aha! and go to the API Webservices category.

For engagement and partner questions, email omnioms.apiproduct@tecsys.com.

Next Steps

If you're ready to start using our API, head over to Getting Started.