Sumtracker
Sumtracker Public API v2026-11

Purchase Rates API.

A purchase rate is the cost and the purchasing terms of a product from one of its suppliers. A product has at most one purchase rate per supplier, and the supplier of one of them can be the primary supplier of the product.


List Purchase Rates

GET
https://inventory-api.sumtracker.com/api/version/2026-11
/purchases/prices/
Authorization (header)

List the purchase rates of the products that are not archived, newest first.

List Purchase Rates › query Parameters

contacts
​number[] · style: form

Supplier ids separated by comma.

cursor
​string

The pagination cursor value.

ids
​integer[] · style: form

Purchase rate ids separated by comma.

limit
​integer

Number of results to return per page.

products
​number[] · style: form

Product ids separated by comma.

List Purchase Rates › Responses

200
​PurchaseRate[] · required
next
​string | null · uri
previous
​string | null · uri

Create Purchase Rate

POST
https://inventory-api.sumtracker.com/api/version/2026-11
/purchases/prices/
Authorization (header)

Add a supplier to a product by creating its purchase rate, with a cost and shipping cost of 0, a pack size and minimum order quantity of 1 and no tax. Set its values afterwards with the update.

When the product already has a purchase rate from the supplier, it is returned unchanged. The supplier becomes the primary supplier of the product when it has none.

Create Purchase Rate › Request Body

Request body of the purchase rate create.
product_id
​integer · required

Id of the product, which must not be archived.

contact_id
​integer · required

Id of the supplier.

Create Purchase Rate › Responses

The cost and the purchasing terms of a product from one of its suppliers. A product has at most one purchase rate per supplier.
id
​integer · readOnly · required
product_id
​integer · readOnly · required

Id of the product.

contact_id
​integer · readOnly · required

Id of the supplier.

tax_id
​integer | null · readOnly · required

Id of the tax the supplier charges, which purchase order lines take. Null when there is none.

cost_basis
​string · readOnly · required

Per Pack when the pack size is more than 1, and the costs are per pack, otherwise Per Unit.

cost
​string · decimal · readOnly · pattern: ^-?\d{0,10}(?:\.\d{0… · required

Cost of the product. When the pack size is greater than 1, we consider the cost to be cost per pack. For example, if the pack size is 10 and the cost value stored is 150 the actual cost per unit would be 15.

shipping_cost
​string · decimal · readOnly · pattern: ^-?\d{0,10}(?:\.\d{0… · required

Shipping cost of the product. The cost basis logic is applicable here too as it is for the cost per unit field.

supplier_sku
​string · maxLength: 200 · readOnly · required

The supplier's own SKU of the product.

pack_size
​integer · min: 0 · max: 2147483647 · readOnly · required

Units per pack. The costs are per pack when it is more than 1.

moq
​integer · min: -2147483648 · max: 2147483647 · readOnly · required

Minimum order quantity.

uom
​string · maxLength: 100 · readOnly · required

Unit of measure, such as kg.

notes
​string · readOnly · required

Notes about the supplier's terms for the product.


Update Purchase Rate

PUT
https://inventory-api.sumtracker.com/api/version/2026-11
/purchases/prices/{purchase_rate_id}/
Authorization (header)

Update the cost and the purchasing terms of a purchase rate. A value left out keeps the saved one, and a null tax_id clears the tax.

The supplier becomes the primary supplier of the product when it has none.

Update Purchase Rate › path Parameters

purchase_rate_id
​integer · required

Update Purchase Rate › Request Body

Request body of the purchase rate update. A value left out keeps the saved one.
cost
​string · decimal · pattern: ^-?\d{0,10}(?:\.\d{0…

Cost of the product. When the pack size is greater than 1, we consider the cost to be cost per pack. For example, if the pack size is 10 and the cost value stored is 150 the actual cost per unit would be 15.

shipping_cost
​string · decimal · pattern: ^-?\d{0,10}(?:\.\d{0…

Shipping cost of the product. The cost basis logic is applicable here too as it is for the cost per unit field.

supplier_sku
​string · maxLength: 200

The supplier's own SKU of the product.

pack_size
​integer · min: 0 · max: 2147483647

Units per pack. The costs are per pack when it is more than 1.

moq
​integer · min: -2147483648 · max: 2147483647

Minimum order quantity.

tax_id
​integer | null

Id of a tax. Null clears the tax.

uom
​string · maxLength: 100

Unit of measure, such as kg.

notes
​string

Notes about the supplier's terms for the product.

Update Purchase Rate › Responses

200
The cost and the purchasing terms of a product from one of its suppliers. A product has at most one purchase rate per supplier.
id
​integer · readOnly · required
product_id
​integer · readOnly · required

Id of the product.

contact_id
​integer · readOnly · required

Id of the supplier.

tax_id
​integer | null · readOnly · required

Id of the tax the supplier charges, which purchase order lines take. Null when there is none.

cost_basis
​string · readOnly · required

Per Pack when the pack size is more than 1, and the costs are per pack, otherwise Per Unit.

cost
​string · decimal · readOnly · pattern: ^-?\d{0,10}(?:\.\d{0… · required

Cost of the product. When the pack size is greater than 1, we consider the cost to be cost per pack. For example, if the pack size is 10 and the cost value stored is 150 the actual cost per unit would be 15.

shipping_cost
​string · decimal · readOnly · pattern: ^-?\d{0,10}(?:\.\d{0… · required

Shipping cost of the product. The cost basis logic is applicable here too as it is for the cost per unit field.

supplier_sku
​string · maxLength: 200 · readOnly · required

The supplier's own SKU of the product.

pack_size
​integer · min: 0 · max: 2147483647 · readOnly · required

Units per pack. The costs are per pack when it is more than 1.

moq
​integer · min: -2147483648 · max: 2147483647 · readOnly · required

Minimum order quantity.

uom
​string · maxLength: 100 · readOnly · required

Unit of measure, such as kg.

notes
​string · readOnly · required

Notes about the supplier's terms for the product.


Delete Purchase Rate

DELETE
https://inventory-api.sumtracker.com/api/version/2026-11
/purchases/prices/{purchase_rate_id}/
Authorization (header)

Delete a purchase rate, which removes its supplier from the product. When it is the primary supplier of the product, the product is left without one.

Delete Purchase Rate › path Parameters

purchase_rate_id
​integer · required

Delete Purchase Rate › Responses

No response body

No data returned