Docs · Provider evidence
A provider’s claim is not settlement.
Provider evidence records what a payment provider, executor or x402 facilitator reported for one OCD operation. OCD keeps it as a claim — append-only and content-addressed — and never treats it as its own chain observation.
success: true with a transaction hash is preserved exactly as a claim. Only OCD’s own independent chain observation can mark settlement as confirmed.Supported sources
| Source | How it reaches OCD | What authentication proves |
|---|---|---|
| x402 facilitator settle response | Submitted by your integration after a terminal result | Nothing about the provider: recorded as caller-reported |
| PayBox | Terminal request result submitted by the executor | Caller-reported claim |
| Coinbase CDP Server Wallets | Submitted by the executor; CDP offers no wallet webhook | Caller-reported claim |
| Turnkey | Turnkey’s own transaction:status webhook, Ed25519-verified against Turnkey’s published keys | Turnkey authored the claim |
| Crossmint | Crossmint’s own signed wallet-transfer webhook | Crossmint authored the claim |
| Circle | Circle’s own signed transaction webhook | Circle authored the claim |
| Signed Payment Claim v1 | A platform-signed claim submitted for an operation | A key trusted for that platform signed it. Production ingestion fails closed until an issuer is explicitly trusted. |
In every row, a verified signature means only that the provider authored the claim. It never means the payment settled.
Submitting a caller-reported claim
POST /operations/:operationId/provider-evidence is authenticated with the operation’s recovery credential. It accepts a normalized standard x402 settle response, for example:
{
"x402_settle_response": {
"x402Version": 2,
"success": true,
"transaction": "0x…",
"network": "eip155:8453"
},
"correlation_reference": "provider-payment-request-id",
"execution_request_id": "OCD-EXEC-…",
"raw_reference_digest": "sha256:<digest-of-retained-provider-material>"
}
- Failures use
success: falsewith an error or error digest. - Raw provider responses are not accepted. A digest is the safe reference to material you retain yourself.
- An execution request, when supplied, must belong to the operation. Provider IDs, correlation references, payment identities and transaction hashes stay separate fields.
- Repeated identical submissions are idempotent.
How claims are reconciled
OCD compares each terminal provider claim with its own observation and reports the result separately from settlement:
- A success claim with no OCD observation: settlement is not independently confirmed.
- A success claim that disagrees with what OCD observed: a mismatch finding.
- A failure claim while OCD observed a settlement: an execution-versus-settlement contradiction.
Missing evidence is an evidence gap, not a contradiction, and a valid provider signature never hides a contradiction.
Provider claims never raise binding strength
A provider-reported transaction hash never changes the binding level — TRANSFER_MATCH_ONLY, EXECUTOR_CORRELATED or PAYMENT_IDENTITY_LINKED. Only the durable execution binding and OCD’s independent observation establish those levels.
Where it appears
Provider evidence is part of an operation’s authenticated investigation record, shown next to — never merged into — settlement. It is not a field of the signed Action Receipt v1. The executors themselves are listed on the integrations page, and the full lifecycle is in the autonomous payment reference.