Webhook event
payment.unmatched
Money reached a merchant wallet and matches no order.
- Type
payment.unmatched- The object it carries
- the
paymentobject - Subscribe with
payment.unmatched,payment.*or*
Example payload
The body of the request your endpoint receives, shown here over several lines. On the wire it is compact JSON; check its signature over the bytes exactly as they arrive.
Example payload
{
"id": "evt_shec82gz79a1ywfykmve44pf",
"object": "event",
"livemode": true,
"created": "2026-10-11T14:06:41.117Z",
"type": "payment.unmatched",
"api_version": "2026-10-11",
"data": {
"object": {
"id": "pay_2pe50hae6w2jk4sp1rcq5pae",
"object": "payment",
"livemode": true,
"created": "2026-10-11T14:06:41.117Z",
"order": null,
"instruction": null,
"status": "settled",
"rail": "direct",
"asset": "base:usdc",
"network": "base",
"amount": "21.980000",
"value": {
"amount": "21.98",
"currency": "USD"
},
"transaction_hash": "0x709b55bd3da0f5a838125bd0ee20c5bfdd7caba173912d4281cae816b79a201b",
"from_address": "0xdbF03B407c01E7cD3CBea99509d93f8DDDC8C6FB",
"to_address": "0x5aAeb6053F3E94C9b9A09f33669435E7Ef1BeAed",
"confirmations": 14,
"confirmations_required": 12,
"unmatched": true,
"unmatched_reason": null,
"late": false,
"ignored": false,
"finalized": true,
"screening": {
"id": "scr_268aypc7xxt8g1bkbweajv0m",
"status": "clear",
"checked_at": "2026-10-11T14:06:41.117Z"
},
"settlement": {
"id": "stl_k9ycthvaq1502y52gjjhd6n5",
"asset": "base:usdc",
"network": "base",
"amount": "21.980000",
"wallet": "wal_bsfw07hymawmda7gg8jsyy3g",
"to_address": "0x5aAeb6053F3E94C9b9A09f33669435E7Ef1BeAed",
"transaction_hash": "0x709b55bd3da0f5a838125bd0ee20c5bfdd7caba173912d4281cae816b79a201b",
"proved_by": "wallet_chain_read",
"settled_at": "2026-10-11T14:09:55.764Z"
},
"seen_at": "2026-10-11T14:06:41.117Z",
"confirmed_at": "2026-10-11T14:09:12.300Z",
"settled_at": "2026-10-11T14:09:55.764Z",
"reverted_at": null
}
},
"request": {
"id": null,
"idempotency_key": null
},
"pending_webhooks": 1
}Fields of data.object
| Field | In this example |
|---|---|
id | "pay_ |
object | "payment" |
livemode | true |
created | "2026-10-11T14: |
order | null |
instruction | null |
status | "settled" |
rail | "direct" |
asset | "base:usdc" |
network | "base" |
amount | "21.980000" |
value | An object with amount, currency |
transaction_hash | "0x709b55bd3da0f5a838125bd0ee20c5bfdd7caba173912d4281cae816b79a201b" |
from_address | "0xdbF03B407c01E7cD3CBea99509d93f8DDDC8C6FB" |
to_address | "0x5aAeb6053F3E94C9b9A09f33669435E7Ef1BeAed" |
confirmations | 14 |
confirmations_required | 12 |
unmatched | true |
unmatched_reason | null |
late | false |
ignored | false |
finalized | true |
screening | An object with id, status, checked_at |
settlement | An object with id, asset, network, amount, wallet, to_address, transaction_hash, proved_by, settled_at |
seen_at | "2026-10-11T14: |
confirmed_at | "2026-10-11T14: |
settled_at | "2026-10-11T14: |
reverted_at | null |
What each field means is on the page of the payment object. This event carries no data.previous_attributes.
Endpoints behind it
Calls that change payments. An event is also sent when a payer, the network, a timer or a person in the dashboard causes the change; the sentence above says which.