Skip to content

Implement Signed Offers & Receipts extension #9

Description

@andreabadesso

Context

The x402 V2 spec includes a Signed Offers & Receipts extension that provides cryptographic proof-of-interaction.

What it does

  • Signed Offer: The server signs the 402 response, proving it offered a specific price for a specific resource at a specific time
  • Signed Receipt: The server signs the 200 response, proving it delivered the resource after payment

These produce artifacts that clients can use for reputation, auditing, or dispute resolution.

Relevance for Hathor

On Hathor, the nano contract itself provides on-chain proof of the payment. But the signed offer/receipt adds proof of the HTTP interaction layer:

  • Proof that the server offered the resource at a specific price
  • Proof that the server delivered the resource

This is valuable for AI agents that need to prove they paid for data.

Changes needed

Resource server

  • Sign the 402 response body with the seller's key
  • Include the signature in the response
  • Sign the 200 response (resource delivery confirmation)

Implementation consideration

  • The signing key could be the seller's Hathor wallet key (already available via wallet-headless)
  • Or a separate signing key specific to the HTTP layer

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions