Invoices get intercepted, support channels get spoofed, and a single swapped character sends a payment somewhere unrecoverable. WalletOrigin lets a customer confirm the receiving address belongs to your company domain before they hit send.
Crypto payments are final. Anyone who can reach your customer with a plausible-looking address can redirect a payment, and the customer has no built-in way to tell a real company address from a copy.
Your finance team sends an invoice with a receiving address. Instead of asking the customer to trust the document, you point them at the proof tied to your domain.
You publish a DNS TXT record on your company domain and sign a challenge with the receiving wallet.
The invoice links to your /d/yourcompany.com proof page. Customers can also paste the address into /check without an account or key.
The customer sees the address resolve to your domain — or nothing at all, which is the warning they needed.
GET /api/public/lookup?address=0xAbC1234567890abcdef1234567890abcdef123456&chain=ethereum
Authorization: Bearer walletorigin_…
{
"address": "0xabc1234567890abcdef1234567890abcdef123456",
"chain": "ethereum",
"verified": true,
"proofs": [
{
"domain": "company.com",
"chain": "ethereum",
"verified_at": "2026-07-05T10:20:30.000Z"
}
]
}Bind your receiving wallets to your domain and give every customer a way to confirm before they pay.
Verify your address