Skip to content

Authorise where payments go

The vendor publishes a small file on its own domain naming its payout accounts and its settlement authority. Inside an enclave the Payee job fetches it; the authority approves on chain; the buyer accepts. A change needs all three again and a 24-hour delay.

1 · Generate the file

Serve this at https://<your domain>/.well-known/accord.json as application/json.
{
  "accord": "1",
  "network": "testnet",
  "recipients": [
    "halcyon-mm.testnet"
  ],
  "settlement_authority": "halcyon-auth.testnet"
}
advisory, from this server; the binding proof is the Payee job's

2 · Check it

What it proves

Control of the domain when the file was fetched, and the authority account's approval. Not that the company legally exists: a legal KYB check is a later integration.

Signals

Whether the account exists, is a contract or changed its code recently, earlier payments from this buyer, refusal reports and the curated blocklist. A canary is always blocked.

Pinned domain

The first recipient sets the agreement's domain. Later changes must use it, so a stolen authority key cannot move payments to a domain the vendor does not control.