{"service":"HALOWERK x402werk","endpoint":"/receipt/verify","method":"POST","content_type":"application/json","inputSchema":{"type":"object","required":["offer"],"additionalProperties":false,"properties":{"offer":{"type":"object","description":"The signed offer as {format, payload, signature}, or the bare offer payload with version, resourceUrl, scheme, network, asset, payTo, amount and validUntil — then pass signature and format separately."},"signature":{"type":"string","maxLength":8192,"description":"Signature of the offer, if it is not inside the offer object."},"format":{"type":"string","enum":["eip712","jws","eip191"],"description":"Signature method, if the offer object does not name it. eip712 is what the offer-receipt extension produces."},"public_key":{"type":"object","description":"Public key as a JWK, required for jws signatures whose key identifier cannot be resolved from the token itself."},"receipt":{"type":"object","description":"Optional signed receipt as {format, payload, signature}, or the bare receipt payload with version, network, resourceUrl, payer, issuedAt and transaction."},"receipt_signature":{"type":"string","maxLength":8192,"description":"Signature of the receipt, if it is not inside the receipt object."},"receipt_format":{"type":"string","enum":["eip712","jws","eip191"],"description":"Signature method of the receipt, if the receipt object does not name it."},"expected_payer":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$","description":"Address you expected to have paid. When given, the receipt payer is compared against it."},"max_receipt_age_seconds":{"type":"integer","minimum":1,"maximum":2592000,"default":3600,"description":"How old a receipt may be before its timestamps are called implausible."}}},"requestExample":{"offer":{},"max_receipt_age_seconds":3600},"operations":[{"method":"POST","inputSchema":{"type":"object","required":["offer"],"additionalProperties":false,"properties":{"offer":{"type":"object","description":"The signed offer as {format, payload, signature}, or the bare offer payload with version, resourceUrl, scheme, network, asset, payTo, amount and validUntil — then pass signature and format separately."},"signature":{"type":"string","maxLength":8192,"description":"Signature of the offer, if it is not inside the offer object."},"format":{"type":"string","enum":["eip712","jws","eip191"],"description":"Signature method, if the offer object does not name it. eip712 is what the offer-receipt extension produces."},"public_key":{"type":"object","description":"Public key as a JWK, required for jws signatures whose key identifier cannot be resolved from the token itself."},"receipt":{"type":"object","description":"Optional signed receipt as {format, payload, signature}, or the bare receipt payload with version, network, resourceUrl, payer, issuedAt and transaction."},"receipt_signature":{"type":"string","maxLength":8192,"description":"Signature of the receipt, if it is not inside the receipt object."},"receipt_format":{"type":"string","enum":["eip712","jws","eip191"],"description":"Signature method of the receipt, if the receipt object does not name it."},"expected_payer":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$","description":"Address you expected to have paid. When given, the receipt payer is compared against it."},"max_receipt_age_seconds":{"type":"integer","minimum":1,"maximum":2592000,"default":3600,"description":"How old a receipt may be before its timestamps are called implausible."}}},"requestExample":{"offer":{},"max_receipt_age_seconds":3600}}],"example_request":{"offer":{},"max_receipt_age_seconds":3600},"serviceName":"verify_offer_receipt","tags":["x402","x402-infra","agent-payments","signatures","receipts"],"outputSchema":{"type":"object","properties":{"offer_signature_valid":{"type":["boolean","null"]},"signer":{"type":["string","null"]},"signer_matches_pay_to":{"type":["boolean","null"]},"receipt_signature_valid":{"type":["boolean","null"]},"receipt_matches_offer":{"type":["boolean","null"]},"fields_compared":{"type":"array","items":{"type":"string"}},"mismatches":{"type":"array","items":{"type":"object","properties":{"feld":{"type":"string"},"im_angebot":{"type":["string","null"]},"im_beleg":{"type":["string","null"]}}}},"timestamps_plausible":{"type":["boolean","null"]},"expired":{"type":["boolean","null"]},"verdict":{"type":"string","enum":["gueltig","abweichung","ungueltig","nicht_pruefbar"]},"verdict_reasons":{"type":"array","items":{"type":"string"}},"thresholds_used":{"type":"object"},"unavailable_fields":{"type":"array","items":{"type":"string"}}}}}