← All tools

commerce-receipt

Verify an x402 commercial state and persist a signed Ed25519 Proof402 receipt whose Commerce State Root commits request, offer, policy, payment, settlement, and delivery evidence; receipts are later Merkle-batched for public inclusion proofs.

Price
$0.03 USDC equivalent
Endpoint
POST /v1/commerce-receipt
Network
Base mainnet · eip155:8453
Asset
USDC
MCP tool
commerce-receipt
External payability
PASS · 2026-10-08T19:55:01.298Z

When an agent should use it

Input schema

{
  "type": "object",
  "properties": {
    "request": {
      "type": "object",
      "properties": {
        "method": {
          "type": "string",
          "maxLength": 16
        },
        "resource": {
          "type": "string",
          "minLength": 1,
          "maxLength": 2048
        },
        "parameters": {
          "type": "object"
        },
        "body": {},
        "content_type": {
          "type": "string",
          "maxLength": 128
        }
      },
      "required": [
        "resource"
      ],
      "additionalProperties": false
    },
    "payment_required": {
      "type": "object",
      "properties": {
        "x402Version": {
          "type": "integer",
          "enum": [
            2
          ]
        },
        "resource": {
          "type": "object"
        },
        "accepts": {
          "type": "array",
          "minItems": 1,
          "maxItems": 16,
          "items": {
            "type": "object"
          }
        },
        "extensions": {
          "type": "object"
        }
      },
      "required": [
        "x402Version",
        "accepts"
      ],
      "additionalProperties": true
    },
    "payment_payload": {
      "type": "object"
    },
    "settlement": {
      "type": "object"
    },
    "policy": {
      "type": "object",
      "properties": {
        "max_amount_atomic": {
          "type": "string",
          "pattern": "^[0-9]+$"
        },
        "max_per_day_atomic": {
          "type": "string",
          "pattern": "^[0-9]+$"
        },
        "spend_24h_atomic": {
          "type": "string",
          "pattern": "^[0-9]+$"
        },
        "allowed_networks": {
          "type": "array",
          "maxItems": 32,
          "items": {
            "type": "string"
          }
        },
        "allowed_assets": {
          "type": "array",
          "maxItems": 32,
          "items": {
            "type": "string"
          }
        },
        "allowed_payees": {
          "type": "array",
          "maxItems": 64,
          "items": {
            "type": "string"
          }
        },
        "blocked_payees": {
          "type": "array",
          "maxItems": 64,
          "items": {
            "type": "string"
          }
        },
        "max_timeout_seconds": {
          "type": "integer",
          "minimum": 1,
          "maximum": 3600
        }
      },
      "additionalProperties": false
    },
    "delivery": {},
    "expected_delivery": {
      "type": "object",
      "properties": {
        "required_fields": {
          "type": "array",
          "maxItems": 64,
          "items": {
            "type": "string"
          }
        },
        "expected_sha256": {
          "type": "string",
          "pattern": "^[0-9a-fA-F]{64}$"
        }
      },
      "additionalProperties": false
    },
    "target_salt19_operation_id": {
      "type": "string",
      "minLength": 8,
      "maxLength": 128
    }
  },
  "required": [
    "request",
    "payment_required",
    "payment_payload",
    "settlement",
    "delivery"
  ],
  "additionalProperties": false
}

Example request

{
  "request": {
    "method": "POST",
    "resource": "https://seller.example/v1/data"
  },
  "payment_required": {
    "x402Version": 2,
    "accepts": [
      {
        "scheme": "exact",
        "network": "eip155:8453",
        "amount": "20000",
        "asset": "0x...",
        "payTo": "0x...",
        "maxTimeoutSeconds": 60
      }
    ]
  },
  "payment_payload": {
    "x402Version": 2,
    "accepted": {
      "scheme": "exact",
      "network": "eip155:8453",
      "amount": "20000",
      "asset": "0x...",
      "payTo": "0x..."
    },
    "payload": {
      "signature": "0x...",
      "authorization": {
        "from": "0x...",
        "to": "0x...",
        "value": "20000",
        "validAfter": "0",
        "validBefore": "1999999999",
        "nonce": "0x..."
      }
    }
  },
  "settlement": {
    "success": true,
    "transaction": "0x...",
    "network": "eip155:8453",
    "payer": "0x..."
  },
  "delivery": {
    "result": "ok"
  }
}

Example output

{
  "verdict": "VERIFIED_LOCAL_EVIDENCE",
  "commerce_root": "...",
  "receipt": {
    "id": "...",
    "signature_algorithm": "Ed25519",
    "signing_key_id": "...",
    "verification_url": "https://api.salt19.com/proof402/receipts/..."
  }
}

x402 flow

POST /v1/commerce-receipt
→ HTTP 402 + PAYMENT-REQUIRED
→ buyer authorizes locally
→ retry same request with PAYMENT-SIGNATURE
→ one governed execution + machine-readable JSON

Discovery: OpenAPI · x402 · llms.txt

A valid 402/payability probe is operational evidence, not proof of independent demand, future settlement, or semantic correctness.