Skip to main content

Matching & Routing

Aggregation produces a ranked list of candidates. Matching picks the right one for your specific order; routing delivers it and handles failure so you don't have to.

Matching — the cheapest that can actually fill it

Being cheapest on paper isn't enough. A provider only wins your order if it can deliver your exact amount, for your exact duration, right now. Matching applies three filters on top of price:

  • Availability — does this source have the capacity to fill the full order this moment?
  • Fit — does it support the requested amount, duration, and delivery model (see provider types below)?
  • ReliabilityTrustScore weights the ranking so a stable source beats a marginally cheaper flaky one.

The result is a single best match plus an ordered list of fallbacks.

Routing — delivery and fail-over

Once matched, the order is routed to the winning provider and energy is delegated on-chain to your target address. If that provider stalls, rejects, or goes offline, the engine automatically re-routes to the next best candidate. You don't see the retry — only the final result.

Provider types

The engine supports different delivery models and accounts for each when ranking:

  • Instant providers — deliver immediately on request; ranked mainly on price and availability.
  • P2P markets — orders fill against counterparties, so the engine factors in fill probability and expected delivery time alongside price.

Why matching beats a fixed provider

Because the whole market is re-evaluated on every order, you get:

  • the cheapest available price at that exact moment, not a stale average, and
  • the combined reliability of many providers instead of exposure to one.

No provider babysitting, no downtime when a single vendor breaks, no overpaying when your usual provider isn't the cheapest today.

For the full step-by-step of a single order from request to confirmation, see Order Lifecycle.