Changelog

What's new in CartonPilot

Product updates, API improvements, and fixes - most recent first.

New

Async batches, SKU item catalogs & idempotent retries

  • Async batch processing: submit up to 500 orders (5,000 items) with "async": true, get a job id back in milliseconds, and poll GET /api/v1/batch-jobs/{id} for results.
  • Item catalogs: save your product dimensions once, then send { "sku": "WIDGET-1", "quantity": 2 } instead of repeating dimensions on every request. SKU capacity scales with your plan.
  • Idempotency-Key header: retry any optimize request safely - replays return the stored response without consuming quota twice.

Billable-weight optimization

  • New options.dimDivisor: pass your carrier's dimensional-weight divisor (139 in/lb, 5000 cm/kg, or your negotiated value) and every shipment returns actual, dimensional, and billable weight.
  • New objective "lowest-billable-weight": the engine picks boxes to minimize what carriers bill against. Works in any country and with any divisor, though billable weight is one input into freight cost rather than the whole of it - use "lowest-invoice-cost" with a rate card for contract-aware pricing.

API v1 stabilization

  • options.objective (fewest-parcels, lowest-cost, fastest) is now the recommended way to drive the engine; options.algorithm remains as a power-user override.
  • All 8 packing algorithms are now available on every plan, including Free.
  • Machine-readable error codes with a consistent envelope, per-request X-Request-Id headers, and strict input validation with field-level issues.
  • box.weight (tare) support: shipment weights now report contents and total (contents + box) separately.
  • Structured visualization data by default; ASCII and HTML renderings via options.visualizationFormat.
  • Carrier cost estimates in the free audit: FedEx and UPS Ground list rates by zone, with dimensional-weight billing.

Free packing audit & site redesign

  • Launched the free packing audit: paste your order (or a CSV), see parcels saved, box costs, and estimated carrier spend - no signup required.
  • Complete site redesign with a new design system.
  • French, Spanish, and German translations for the site chrome, audit funnel, and pricing.
  • Published a reproducible benchmark that generates the packing statistics we quote on the homepage.

Savings calculator

  • Added an interactive savings calculator to estimate the impact of smarter cartonization on your shipping spend.

Docs, Swagger & default box sets

  • Refreshed the API documentation and Swagger explorer.
  • Added more default box sets to start optimizing without defining your own cartons.
  • Published the Shopify app privacy policy.

Smart suggestions for unpacked items

  • When items can't fit any available box, responses now include actionable suggestions (box sizes to add, constraint changes to consider) instead of a bare failure.