X402werk
reconcile
Reads all incoming ERC-20 transfers of one token to one address within a block or time window and matches them against the receipts you supply. Matching runs first over the transaction hash, which is the strongest link, and otherwise over amount plus payer plus a stated time tolerance; the method used is named for every single match, so a weak match is never mistaken for a strong one.
POST https://x402.halowerk.com/reconcileEingaben
| Feld | Typ | Pflicht | Beschreibung |
|---|---|---|---|
| chain | string | Ja | Chain as CAIP-2, short name or chain id. |
| address | string | Ja | Your receiving address whose incoming transfers should be read. |
| asset | string | Nein | Token contract address to reconcile. Defaults to the canonical USDC of that chain. |
| receipts | array | Ja | Your receipts. Each needs at least amount_units; tx_hash makes the match strong, payer and ts make the fallback match possible. |
| window | object | Nein | |
| time_tolerance_seconds | integer | Nein | How far a receipt timestamp may sit from the block time of a payment and still match. Receipt and chain rarely carry the same second. |
Vollständiges Eingabeschema anzeigen
{
"type": "object",
"required": [
"chain",
"address",
"receipts"
],
"additionalProperties": false,
"properties": {
"chain": {
"type": "string",
"enum": [
"arb",
"arbitrum",
"arbitrum-one",
"avalanche",
"avax",
"base",
"base-mainnet",
"base-sepolia",
"basesepolia",
"eip155:1",
"eip155:10",
"eip155:137",
"eip155:42161",
"eip155:43114",
"eip155:8453",
"eip155:84532",
"eth",
"ethereum",
"ethereum-mainnet",
"mainnet",
"matic",
"op",
"op-mainnet",
"optimism",
"polygon"
],
"description": "Chain as CAIP-2, short name or chain id."
},
"address": {
"type": "string",
"pattern": "^0x[0-9a-fA-F]{40}$",
"description": "Your receiving address whose incoming transfers should be read."
},
"asset": {
"type": "string",
"description": "Token contract address to reconcile. Defaults to the canonical USDC of that chain."
},
"receipts": {
"type": "array",
"minItems": 1,
"maxItems": 500,
"description": "Your receipts. Each needs at least amount_units; tx_hash makes the match strong, payer and ts make the fallback match possible.",
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"amount_units"
],
"properties": {
"receipt_id": {
"type": "string",
"maxLength": 200,
"description": "Your own identifier for this receipt. Echoed back in every result."
},
"payment_id": {
"type": "string",
"maxLength": 200,
"description": "Payment identifier, used to detect duplicate receipts."
},
"tx_hash": {
"type": "string",
"pattern": "^0x[0-9a-fA-F]{64}$",
"description": "Settlement transaction hash, if you recorded one."
},
"amount_units": {
"type": "string",
"pattern": "^[0-9]{1,78}$",
"description": "Amount as an integer in the smallest unit of the token."
},
"payer": {
"type": "string",
"pattern": "^0x[0-9a-fA-F]{40}$",
"description": "Address you believe paid."
},
"ts": {
"type": "integer",
"description": "Unix seconds when the receipt was issued. Needed for the amount-and-time fallback match."
}
}
}
},
"window": {
"type": "object",
"additionalProperties": false,
"properties": {
"from": {
"type": "integer",
"description": "Start of the window as unix seconds. Resolved to a block by reading real blocks."
},
"to": {
"type": "integer",
"description": "End of the window as unix seconds."
},
"from_block": {
"type": "integer",
"minimum": 0,
"description": "Start block. Takes precedence over from."
},
"to_block": {
"type": "integer",
"minimum": 0,
"description": "End block. Takes precedence over to."
}
}
},
"time_tolerance_seconds": {
"type": "integer",
"minimum": 0,
"maximum": 86400,
"default": 300,
"description": "How far a receipt timestamp may sit from the block time of a payment and still match. Receipt and chain rarely carry the same second."
}
}
}Veröffentlichtes Eingabebeispiel
{
"chain": "arb",
"address": "0x0000000000000000000000000000000000000000",
"receipts": [
{
"amount_units": "0"
}
],
"time_tolerance_seconds": 300
}Ergebnis & Dokumentation
Maschinenlesbare Dokumentation dieses Hubs
Quelle dieser Seite: der veröffentlichte HALOWERK-Katalog. Stand: 2026-11-01, 15:19 UTC.
Weitere Endpunkte dieses Hubs
- X402werk0,006 USDC
benchmark / price
POSThttps://x402.halowerk.com/benchmark/priceReads the public x402 Bazaar catalogue and finds offers comparable to yours, either from a resource_url whose 402 challenge is fetched without paying, or from a category and description you supply. Every comparable offer is listed with its
- X402werk0,006 USDC
channel / audit
POSThttps://x402.halowerk.com/channel/auditChecks vouchers of a payment channel by computation only - nothing is ever claimed, redeemed or refunded. Signatures are verified cryptographically against the address each voucher claims to be signed by, in EIP-712 form when the typed data
- X402werk0,003 USDC
facilitator / health
POSThttps://x402.halowerk.com/facilitator/healthAsks every known facilitator what it supports and measures how long that answer takes. Reachability, supported chains, supported assets, supported schemes and the current response time are measured live on every call. Limits, and they are t