Marketplace Fee API

Marketplace fees,
to the penny.

A fast, maintained API for the fees marketplaces don't itemise — starting with the eBay UK Buyer Protection Fee. Forward, inverse and batch. Verified against eBay every day.

£100 → £4.70 £1,500 → £36.70 £25 → £1.70
£
Buyer Protection Fee
Buyer pays (item + BPF)
Seller receives
Canary-verified daily vs eBay
Decimal-exact, round-half-up
99.9% uptime target
Versioned fee schedule
Why an API, not a calculator

Built for the systems that price at scale.

Free web calculators are eBay-only and unmaintained. hunta is the authoritative, programmatic source — the thing a repricer or analytics tool can actually depend on.

Authoritative & maintained

A drift canary watches eBay's published schedule hourly and flags any tier change — so your fees are never silently wrong.

Every direction

Forward (price → fee), inverse (displayed total → item + embedded fee), and batch up to 1,000 items — built for repricers and analytics.

Penny-exact

Decimal maths, round-half-up — never floats. Every response itemises the buyer and seller sides with machine-readable flags.

Full control

One call. The whole fee, itemised.

Forward

Price in, penny-exact fee out.

Inverse

Strip the fee out of a displayed total.

Batch

Up to 1,000 items in one request.

GET /v1/fee
# Price → itemised fee
curl https://api.hunta.io/v1/fee?item_price=100 \
  -H "X-API-Key: $HUNTA_KEY"

# → 200
{
  "bpf_version": "2026-uk-v1",
  "item_price": "100.00",
  "buyer": { "bpf": "4.70", "displayed_total": "104.70" },
  "fee_breakdown": [
    { "tier": "0–20",   "rate": "7%", "amount": "1.40" },
    { "tier": "20–300", "rate": "4%", "amount": "3.20" },
    { "flat": "0.10" }
  ]
}
# Displayed total → item price + embedded fee
curl -X POST https://api.hunta.io/v1/inverse \
  -H "X-API-Key: $HUNTA_KEY" \
  -H "Content-Type: application/json" \
  -d '{"displayed_total": 104.70}'

# → 200  (snap-verified: item + fee == total)
{
  "item_price": "100.00",
  "bpf": "4.70",
  "displayed_total": "104.70"
}
# Up to 1,000 items, billed per item
curl -X POST https://api.hunta.io/v1/batch \
  -H "X-API-Key: $HUNTA_KEY" \
  -H "Content-Type: application/json" \
  -d '{"items": [{"item_price": 25}, {"item_price": 1500}]}'

# → 200
{
  "results": [
    { "item_price": "25.00",   "bpf": "1.70" },
    { "item_price": "1500.00", "bpf": "36.70" }
  ]
}
Endpoints

A small, sharp surface.

GET/v1/feeForward fee for a single price
POST/v1/inverseItem price + fee from a displayed total
POST/v1/batchUp to 1,000 items per request
GET/v1/metaSchedule version, tiers, last canary status
GET/healthzLiveness — unauthenticated
Full reference →
The moat

Correct today. Correct when eBay changes it.

Fee schedules move. A free calculator goes stale the day eBay tweaks a tier — and you ship wrong prices without knowing. hunta is built around staying correct.

01
Watch — an hourly canary fetches eBay's own published fee pages.
02
Detect — any divergence from our engine raises an alert the same hour.
03
Update — the schedule is corrected and the change surfaces in bpf_version.
Pricing

Start free. Scale per call.

Free

£0

~1,000 calls / month

  • Forward, inverse & meta
  • No card required
  • Community support
Get a free key
Most popular

Pro

£29 / month

~25,000 calls / month

  • Everything in Free
  • Batch endpoint
  • Email support
  • Metered overage
Start Pro

Business

£99 / month

~100,000 calls / month

  • Everything in Pro
  • Priority support
  • Higher rate limits
Start Business

Overage billed at ~£0.002 / call. Plans metered by Lago — cancel anytime.

Start pricing fees correctly.

Free tier, no card required. A key and a curl is all it takes.

Verified against eBay every day · Decimal-exact · Built for developers.