Publisher settlement for claimed publisher servers
Settlement for the hosted gateway: priced gateway calls accrue on-ledger per claim, batch until the $5 threshold, then settle in one USDC payout via the CDP facilitator. Calls are free today and nothing is charged.
Settlement is dark: not armed. Missing dependencies: X402_PAY_TO, X402_FACILITATOR_URL, CDP_API_KEY_ID, CDP_API_KEY_SECRET, CDP_WALLET_SECRET.
The threshold rule
Threshold rule: accruals batch on-ledger until $5 (500 cents) then settle in one USDC payout via the CDP facilitator; below threshold stays on-ledger. The $5 threshold is DECIDED as D2 in PROGRAM.md.
The accrual rule
Accrual rule: an armed priced-call path accrues each priced gateway call on-ledger per claim through accrueSettlement, keyed by claim_id, with a positive amount in cents and a reference naming the gateway call or external reference. Today calls are free (price_today_usd_cents: 0), so production accruals are honestly zero until a priced call path is armed.
The settlement rule
Settlement rule: POST /v1/publisher-settlement/claims/{claim_id}/settle with the claim owner's account key settles the claim's full unsettled balance in ONE batch when the balance reaches the $5 threshold and settlement is armed. The payout calls the x402 facilitator settle endpoint once with the batch total in USDC, marks every entry in the batch settled, and seals ONE ledger receipt (kind activity.receipt) under the bound agent's registration number. The payout address appears only in the seal's private opening, never in any public payload, document or page. When settlement is not armed the call answers 503 publisher_settlement_not_armed naming the missing dependencies; below threshold it answers 422 publisher_settlement_below_threshold.
Surfaces
- GET /v1/publisher-settlement (free, no key) — this index document: armed state, missing dependency names, the threshold, accrual and settlement rules, and live usage counts
- GET /v1/publisher-settlement/claims/{claim_id} (owner account key) — one claim's settlement view: unsettled balance, eligibility, unsettled entries and past settlements
- POST /v1/publisher-settlement/claims/{claim_id}/settle (owner account key) — settle the full unsettled balance in one USDC payout batch when armed and at or above threshold
- GET /publisher-settlement (page) and GET /publisher-settlement.md — the human-readable twin of this document
