Docs / Verification

Verification

Verification allows any party to independently validate a receipt. It does not require access to the issuing system.

Verification artifact
{
  "receipt_id": "string",
  "issued_at": "ISO8601",

  "rulepack": {
    "rulepack_id": "string",
    "rulepack_version": "string"
  },

  "receipt_hash": "hex",

  "signature": {
    "signing_kid": "string",
    "signature": "base64",
    "algorithm": "Ed25519"
  }
}
Verification process

How verification works

  1. 1. Recompute receipt hash from canonical payload
  2. 2. Fetch public signing key
  3. 3. Verify Ed25519 signature
Deterministic hashing

The receipt hash is computed from a canonicalized payload using a stable key ordering. The same input will always produce the same hash.

Public API
GET /v1/public/verify/:receiptId
POST /v1/public/verify-receipt
GET /v1/keys/receipt-signing