<- Back to Registry
Trace_Inspector / status-recovered
Status lookup recovers stale processing state
RECOVERED
HTTP 200Seeded Trace Sequence
status-recoveredOWNERSHIP_CHECKSUCCESS
Payment hash resolves to an owned invoice
The status route first proves the invoice belongs to the authenticated tenant.
STALE_RECOVERYWARN
Fiber status reloaded
The gateway asks Fiber for the latest status because the local invoice stayed in `PROCESSING` too long.
STALE_RECOVERYSUCCESS
Invoice status corrected
The stored invoice is updated to a final status and the recovery path is written to audit.
RESULT_PAYLOAD
{
"paymentHash": "0x8f12...",
"status": "PAID",
"invoiceStatus": "PAID",
"fiberStatus": "PAID",
"invoiceId": "inv_2f0d8f",
"staleProcessing": true,
"recoveryState": "RECOVERED_FINAL_STATUS"
}Technical Summary
Tenant Context
sandbox-merchant
Auth Scopes
payments:read
Demonstrates
- Status reads are tenant-scoped and tied to known invoices.
- Stale processing state can be reconciled without pretending the invoice is still in flight forever.
- Audit writes for status checks are deduplicated when nothing changes.
REQUEST_BODY
GET /api/v1/payments/{paymentHash}
GET /api/v1/payments/0x8f12...
x-api-key: spnd_***RESPONSE_BODY
Status 200
{
"paymentHash": "0x8f12...",
"status": "PAID",
"invoiceStatus": "PAID",
"fiberStatus": "PAID",
"invoiceId": "inv_2f0d8f",
"staleProcessing": true,
"recoveryState": "RECOVERED_FINAL_STATUS"
}Submission Boundary Note
Seeded scenario based on the stale-processing recovery path in `GET /api/v1/payments/[paymentHash]`.