SealedRFQsealed-bid procurement · on arc
RFQ boardSuppliers⭐ GitHub
LIVE · ARC TESTNETEvery RFQ, sealed bid and payout on this site is a real Arc transaction, settled in USDC.

Sealed bids.AI scores.Arc awards.Suppliers get paid.

SealedRFQ is sealed-bid procurement for B2B buyers. Suppliers commit sealed bids backed by a refundable USDC deposit. An AI evaluator scores them against a rubric published before bidding opened, an on-chain policy decides whether the award is allowed, and the winner is paid milestone by milestone.

An AI can recommend the winner. Only the contract can award.

25real Arc txs in one full lifecycle
Sealedno price is visible until the reveal window
On-chainaward limits the AI cannot cross

One RFQ. Sealed bids. Two gates. Paid by milestone.

Northwind needs a vendor. Three suppliers bid without seeing each other's prices. Before any money moves, the award has to pass two gates — and after that, payment follows delivery. Every arrow below runs on Arc.

STEP 01 · SEALED

Bids go on-chain as hashes

Each supplier posts a commitment and a USDC deposit. Prices stay invisible until the reveal window, and a supplier that never reveals forfeits its deposit.

REVEAL ✓NO-SHOW ✕
STEP 02 · GATE 1 · AI

The model scores against a published rubric

The rubric's hash is fixed when the RFQ opens, so it cannot be rewritten to fit a favoured bid — and so are the buyer's terms and requirements. Revealed bids are screened against them automatically; a requirement no bid can prove, like a certification, is reported as still needing a human rather than quietly passed. The memo is anchored whether it recommends or rejects.

REJECT ✕RECOMMEND →
STEP 03 · GATE 2 · ARC

The contract decides if the award is allowed

Budget cap, minimum bidders, deposit ratio, rubric match and concentration limits are enforced inside award(). An over-budget recommendation reverts with AwardExceedsBudget.

BLOCK ⛔AWARD →
STEP 04 · MILESTONES

Payment follows delivery

One escrow job per milestone. The supplier submits a deliverable hash; the buyer accepts or rejects with a reason. If the buyer goes silent, payment auto-releases. Retention is held until final acceptance.

ACCEPT ↗SILENCE ⏱

What makes it different

AI proposes, the contract disposes

Six caps live inside award(). An AI-recommended bid above the published budget is rejected by the contract itself, and the evaluator's recommendation is bound to one winner — so an awarder key cannot quietly redirect it to someone else.

🔒 Sealed until the reveal

Commit-reveal bids backed by USDC deposits. In RFP mode the proposal document is sealed alongside the price, so neither the number nor the method can be revised after rival bids open. Losing bidders are refunded automatically; the winner's deposit becomes a performance stake.

Neither side can stall the other

Every state has a clock. No award means deposits refund. Buyer silence auto-releases payment, so a supplier who delivered is never held hostage by someone who stops answering. A missed delivery deadline ends the engagement in the buyer's favour.

🔑 Least-privilege keys

The evaluator scores but cannot award. The awarder awards but cannot choose. The verifier releases payment but can never refund a deposit. Compromising one key does not compromise the outcome.

🧾 Audit any award

Every AI decision is anchored as a hash. Re-hash the published memo and compare it with the chain: an edited rationale fails the check instead of reading plausibly. Rejections are recorded exactly like approvals.

🤖 The agent sells its work over x402

Scoring an RFQ costs real inference, so it is sold rather than given away. An unpaid call returns HTTP 402 with the terms, the caller signs a USDC authorisation, and Circle's facilitator settles it on Arc — no API key, no account, no invoice. Reading a memo back and checking it against the chain stays free, permanently: a losing bidder must never have to pay to find out why they lost.

💵 USDC end to end

Budgets, deposits and payouts are all USDC, which is also the gas on Arc. Buyers fund an RFQ in a single signature with ERC-2612 permit, and payouts are pull-only so no recipient can block a milestone.

Where this fits

Procurement software is mostly orchestration: it moves a decision through an organisation, then hands the payment to an ERP and a bank. SealedRFQ is the layer underneath — the part where the money actually moves, and where a losing bidder can check the reasoning instead of taking someone's word for it.

Intake and approvalsCoupa, SAP Ariba, Tonkean

A request is raised, routed, approved and tracked across the people who must sign off.

Sourcing, sealed bids, awardSealedRFQ

Suppliers bid without seeing each other. An evaluator scores against a rubric fixed before bidding, and the contract refuses an award that breaks the published rules.

Escrow and milestone paymentSealedRFQ

The budget is locked before bidding opens and released per milestone against delivery, with retention, stakes and deadlines that apply to both sides.

Contracts, invoices, spend analyticsIronclad, ERP, P2P suites

The paperwork and reporting that follow an award and a payment.

The difference is not scope, it is what the software can guarantee. An orchestration platform records that an award was approved; the money then moves in a system it does not control, and its AI's reasoning lives in a database only its operator can read. Here the award cannot exceed the published budget because the contract rejects it, the payment is already escrowed, and the reasoning is anchored so anyone can re-hash it. That is worth having under an intake tool, not instead of one — an awarded PO and its milestone receipts should still flow back into whatever system your finance team already lives in.

What this proves — and what it doesn't

SealedRFQ settles money against rules and hashes. It cannot see a warehouse. Knowing exactly where the guarantees stop is what makes the parts that are guaranteed worth relying on.

THE AI CHECKS
  • Bids against the rubric published before bidding opened
  • Price, delivery and consistency across competing bids
  • Red flags it can see in the numbers: over budget, no track record

It scores bids before an award. It never sees what is delivered afterwards.

THE CONTRACT ENFORCES
  • Budget caps, minimum bidders, deposit ratios, concentration limits
  • That a price stays sealed until the reveal window
  • That escrow exists before bidding, and that every state has a deadline
  • That a document hash cannot change after submission

It enforces rules, clocks and money. It cannot know whether a pallet holds what the label says.

YOU MUST VERIFY
  • That the goods, materials or work actually meet the specification
  • That certificates, insurance and test reports are genuine
  • That the supplier is who they claim to be, before you rely on them

No oracle here inspects physical reality. Accepting a milestone releases money, so inspect before you accept — not after.

The protocol's job is to give that human check teeth: retention held back until final acceptance, a performance stake the supplier forfeits on abandonment, a rejection recorded on-chain with its reason, and an arbiter of last resort. Payment auto-releases if a buyer stays silent past the acceptance window, which protects a supplier who delivered — so set a window long enough to actually inspect the work.

Don't take our word for it. Open every transaction.

A complete lifecycle ran on Arc Testnet: 25 transactions from sealed bids to the final milestone, including the policy firewall rejecting an AI-recommended over-budget award. Every contract ended at a zero balance.

▶ OPEN THE EVIDENCE