Skip to content
ToolsOnDuty - free online tools
Browse documentation

Reference / E-commerce

E-commerce API

3 endpoints for e-commerce workflows. Every call requires bearer authentication and uses the standard ToolsOnDuty response envelope.

Try it

Runs a real request from your browser to your own ToolsOnDuty account. Your key is only kept in this page and is never stored.

POST/v1/commerce/product-profit1 credit / call

Product contribution profit

Calculate retained revenue, expected return effects, percentage fees, contribution profit, margin and break-even selling price.

ParameterTypeRequiredDescription
sellingPricenumberYesBefore-tax selling price.
productCostnumberYesProduct cost per placed order.
inboundShippingnumberNoInbound shipping cost. Default: 0.
importDutynumberNoImport duty allocated per order. Default: 0.
packagingnumberNoPackaging cost. Default: 0.
marketplaceRatenumberNoMarketplace fee percentage (0-100). Default: 0.
paymentRatenumberNoPayment fee percentage (0-100). Default: 0.
fixedFeenumberNoFixed transaction fee. Default: 0.
fulfillmentnumberNoFulfilment cost. Default: 0.
outboundShippingnumberNoOutbound shipping cost. Default: 0.
advertisingnumberNoAdvertising cost allocated per order. Default: 0.
otherCostnumberNoOther variable cost. Default: 0.
returnRatenumberNoExpected return rate percentage (0-100). Default: 0.
returnHandlingnumberNoHandling cost per returned order. Default: 0.
recoveryValuenumberNoRecovered value per returned unit. Default: 0.
feesOnGrossRevenuebooleanNoApply percentage fees to gross rather than expected retained revenue. Default: false.

Request

curl -X POST https://toolsonduty.com/api/v1/commerce/product-profit \
  -H "Authorization: ******" \
  -H "Content-Type: application/json" \
  -d '{"sellingPrice":79,"productCost":24,"marketplaceRate":14,"paymentRate":2.5,"returnRate":6,"fulfillment":5,"outboundShipping":4}'

Response

{
  "ok": true,
  "data": {
    "contributionProfit": 25.87,
    "contributionMargin": 34.85
  }
}
POST/v1/commerce/landed-cost1 credit / call

Landed cost calculator

Calculate shipment landed cost, duty and cost per ordered or sellable unit with an explicit duty base.

ParameterTypeRequiredDescription
quantitynumberYesOrdered unit quantity.
supplierUnitCostnumberYesSupplier cost per ordered unit.
damagedUnitsnumberNoExpected damaged or unsellable units. Default: 0.
freightnumberNoShipment freight cost. Default: 0.
insurancenumberNoShipment insurance cost. Default: 0.
dutyRatenumberNoCustoms duty percentage (0-100). Default: 0.
dutyBasestringNogoods | cif. Default: goods.
clearancenumberNoCustoms clearance cost. Default: 0.
domesticTransportnumberNoDomestic transport cost. Default: 0.
inspectionnumberNoInspection cost. Default: 0.
packagingnumberNoPackaging or relabelling cost. Default: 0.
otherCostnumberNoOther shipment cost. Default: 0.

Request

curl -X POST https://toolsonduty.com/api/v1/commerce/landed-cost \
  -H "Authorization: ******" \
  -H "Content-Type: application/json" \
  -d '{"quantity":500,"supplierUnitCost":8,"freight":900,"insurance":50,"dutyRate":10,"dutyBase":"cif","damagedUnits":10}'

Response

{
  "ok": true,
  "data": {
    "sellableUnits": 490,
    "costPerSellableUnit": 11.11
  }
}
POST/v1/commerce/break-even-roas1 credit / call

Break-even ROAS and ACOS

Calculate pre-ad contribution, maximum ad cost per order, break-even ROAS, ACOS and CPC.

ParameterTypeRequiredDescription
averageOrderValuenumberYesAverage order value before tax.
productAndFulfillmentCostnumberYesProduct and fulfilment cost per order.
sellingFeeRatenumberNoSelling fee percentage (0-100). Default: 0.
returnRatenumberNoExpected return rate percentage (0-100). Default: 0.
conversionRatenumberNoConversion rate percentage (0-100). Default: 0.
currentSpendnumberNoCurrent advertising spend. Default: 0.
attributedRevenuenumberNoCurrent attributed gross revenue. Default: 0.
attributedOrdersnumberNoCurrent attributed order count. Default: 0.

Request

curl -X POST https://toolsonduty.com/api/v1/commerce/break-even-roas \
  -H "Authorization: ******" \
  -H "Content-Type: application/json" \
  -d '{"averageOrderValue":79,"productAndFulfillmentCost":35,"sellingFeeRate":16,"returnRate":6,"conversionRate":3.2}'

Response

{
  "ok": true,
  "data": {
    "breakEvenRoas": 2.89,
    "breakEvenAcos": 34.66
  }
}