<!-- DOCS_OUTCOME_PRICED_SOFTWARE:guide -->
# Outcome-priced software

Canonical HTML: https://spoolis.com/docs/guides/outcome-priced-software. This page is also available in machine-readable Markdown.

Define an acceptance policy, issue a signed Outcome, and feed accepted work into your existing billing stack.

## 1. Define the acceptance policy

Start at [/new](/new), or create a Spool through the [API](/docs/api). Write the criteria, evidence expectations, and judge before delivery. Share `/s/<id>` with the other party. The Acceptance policy view needs no account to read.

## 2. Choose the judge

Use your own deterministic checks, the buyer's confirmation, or an agreed external judge. See [bring your own judge](/docs/guides/bring-your-own-judge).

## 3. Deliver the work and submit evidence

Submit evidence from the dashboard, or call `POST https://spoolis.com/api/v1/spools/{id}/evidence`.

## 4. Get the Outcome

Run verification from the Spool or call `POST https://spoolis.com/api/v1/spools/{id}/verify`. The Outcome reports accepted, rejected, and uncertain unit counts plus earned value. Uncertain units are excluded from earned value.

## 5. Keep your billing stack

Feed the accepted count or earned value into Stripe Billing, Orb, Metronome, Paid, Nevermined, or a plain export. Spoolis never bills your customer. See [workflow and billing consumers](/docs/workflow-billing-consumers).

## 6. Share the accepted result

Whoever consumes the result, a customer, a billing or finance system, another agent, a marketplace, or another workflow, can inspect `/s/<id>`, open `/r/<receipt id>`, download the receipt JSON, and run `npx @spoolis/cli verify receipt.json`. See [verify a receipt](/docs/verify-receipt). A valid receipt does not authorize payment.
