{"api_version":2,"receipt_profile":"zambo-hosted-receipt/1","schema_url":"https://zambo.dev/aer-1/hosted-profile.schema.json","id":"d9b1c60b-fc84-474f-a31f-36f81b597d59","source_url":"https://zambo.dev/api/receipt/d9b1c60b-fc84-474f-a31f-36f81b597d59","receipt":{"id":"d9b1c60b-fc84-474f-a31f-36f81b597d59","created_at":"2026-10-20T01:29:32.419Z","receipt_schema_version":"0.4","job_summary":"url: https://zambo.dev/guides/x402-agent-payments/","tools":["pdf_extract"],"steps":[{"tool":"pdf_extract","status":"success","started_at":"2026-10-20T01:29:32.333Z","completed_at":"2026-10-20T01:29:32.419Z"}],"output_hash":"sha256:b3be35899b95510ae85e281ce1f9e61214a48a67aaaa89c662e0aa38645f766e","hash_algorithm":"sha256","canonical_bytes":"eyJjYWxsZXIiOnsiaWQiOiJzaGEyNTY6MTExZGNlNzdjMjc2ZmNmYjc3OTBkNzhjNjQxYmVhOGZmNjlkYjVmZWUzMjZkMTE2YTc2ZjEzNzM5ZWEwNGI1MiIsInR5cGUiOiJhcGlfa2V5In0sImlzc3Vlcl9jbGFpbXMiOnsicHJvdmVuYW5jZV9jbGFzcyI6IkVYRUNVVEVEIEJZIFpBTUJPIn0sIm91dHB1dCI6eyJjb250ZW50X3R5cGUiOiJ0ZXh0L2h0bWwiLCJleHRyYWN0ZWRfdGV4dCI6Ilg0MDIgZGF5IHBhc3MgcGF5bWVudHMgZm9yIGZ1bmRlZCBBSSBhZ2VudHMgfCBaYW1ib1xuXG7ihpAgQWxsIGd1aWRlc1xuXG5BZ2VudCBwYXltZW50cyDCtyBaYW1ib1xuXG54NDAyIERheSBQYXNzIHBheW1lbnRzIGZvciBmdW5kZWQgQUkgYWdlbnRzXG5cbng0MDIgYWdlbnQgcGF5bWVudHMsIGxpdmUgb24gdGhpcyBzaXRlICBUaGUgZW5kcG9pbnQgYmVsb3cgYW5zd2VycyBhIHJlYWwgeDQwMiBjaGFsbGVuZ2UgdG9kYXkuIEEgZnVuZGVkIGFnZW50IHVzaW5nIGEgY29tcGF0aWJsZSB4NDAyIGNsaWVudCBtYXkgcGF5IGZvciBpdHMgb3duIERheSBQYXNzIHdpdGhpbiBpdHMgc3BlbmRpbmcgcG9saWN5LiBEbyBub3Qgc3VibWl0IGEgcGF5bWVudCBtZXJlbHkgdG8gaW5zcGVjdCB0aGUgY2hhbGxlbmdlLlxuXG5jdXJsIC1pIGh0dHBzOi8vemFtYm8uZGV2L2FwaS94NDAyL2RheS1wYXNzXG5cblRoZSBHRVQgcmV0dXJucyBIVFRQIDQwMi4gVGhpcyBpcyB0aGUgY2hlY2tlZCByZXNwb25zZSBzaGFwZSwgbGltaXRlZCB0byB0aGUgY2hhbGxlbmdlJ3MgcmVzb3VyY2UgYW5kIHBheW1lbnQgcmVxdWlyZW1lbnQgZmllbGRzLiBGZXRjaCBhIGZyZXNoIGNoYWxsZW5nZSBiZWZvcmUgYXV0aG9yaXppbmcgcGF5bWVudC5cblxue1xuXG4mcXVvdDt4NDAyVmVyc2lvbiZxdW90OzogMixcblxuJnF1b3Q7cmVzb3VyY2UmcXVvdDs6IHtcblxuJnF1b3Q7dXJsJnF1b3Q7OiAmcXVvdDtodHRwczovL3phbWJvLmRldi9hcGkveDQwMi9kYXktcGFzcyZxdW90O1xuXG59LFxuXG4mcXVvdDthY2NlcHRzJnF1b3Q7OiBbXG5cbntcblxuJnF1b3Q7c2NoZW1lJnF1b3Q7OiAmcXVvdDtleGFjdCZxdW90OyxcblxuJnF1b3Q7YW1vdW50JnF1b3Q7OiAmcXVvdDs5OTAwMDAmcXVvdDssXG5cbiZxdW90O25ldHdvcmsmcXVvdDs6ICZxdW90O2VpcDE1NTo4NDUzJnF1b3Q7LFxuXG4mcXVvdDthc3NldCZxdW90OzogJnF1b3Q7MHg4MzM1ODlmY2Q2ZWRiNmUwOGY0YzdjMzJkNGY3MWI1NGJkYTAyOTEzJnF1b3Q7LFxuXG4mcXVvdDtwYXlUbyZxdW90OzogJnF1b3Q7MHhiNzUzYmU1RWFjNUIyOWM3MTEwNTFEZkY5MTI3OTgzNGU5QzliOUFDJnF1b3Q7XG5cbn1cblxuXVxufVxuXG5BZnRlciBzZXR0bGVtZW50LCBrZWVwIHRoZSBzcGVuZCByZWNlaXB0IGFuZCBhY2Nlc3MgZXhwaXJ5IHdpdGggdGhlIHN1YnNlcXVlbnQgdG9vbCByZWNlaXB0LiBUaGUgcGFpZCBjYWxsJ3Mgd29yayBlbnRlcnMgdGhlIHNhbWUgdmVyaWZpYWJsZSByZWNlaXB0IHRyYWlsIGFzIGEgZnJlZSBaYW1ibyBjYWxsOyBhIHBheW1lbnQgYWxvbmUgaXMgbm90IGV2aWRlbmNlIHRoYXQgdGhlIHdvcmsgc3VjY2VlZGVkLiB4NDAyIGlzIGEgcGF5bWVudCBjb252ZW50aW9uIFphbWJvIGltcGxlbWVudHMsIG5vdCBhIFphbWJvIGludmVudGlvbi4gIEEgcmVjZWlwdCBwcm92ZXMgdGhlIHNhdmVkIHJlc3VsdCB3YXMgbm90IGNoYW5nZWQgc2luY2UgaXQgd2FzIHNhdmVkLiBJdCBuZXZlciBwcm92ZXMgdGhlIGFuc3dlciB3YXMgcmlnaHQgYW5kIG5ldmVyIHByb3ZlcyBhbiBleHRlcm5hbCBldmVudCBoYXBwZW5lZC5cblxuWmFtYm8geDQwMiByZXR1cm5zIGEgbWFjaGluZS1yZWFkYWJsZSBIVFRQIDQwMiBjaGFsbGVuZ2UgZm9yIHRoZSAkMC45OSwgMjQtaG91ciBVU0RDLW9uLUJhc2UgRGF5IFBhc3MuIEEgZnVuZGVkIGFnZW50IG1heSBwYXkgZm9yIGl0cyBvd24gRGF5IFBhc3Mgd2hlbiBpdHMgY29uZmlndXJlZCBzcGVuZGluZyBwb2xpY3kgcGVybWl0czsgdXNlcnMgY2FuIGluc3RydWN0IGl0IG5vdCB0byBzZWxmLXBheSBvciB0byBhc2sgZmlyc3QuIFRoaXMgcGVybWlzc2lvbiBhcHBsaWVzIG9ubHkgdG8gdGhlIERheSBQYXNzLCBub3QgWmFtYm8gUGFzcyBvciBQcm92aWJlQ29kZS4gVGhlIERheSBQYXNzIGlzIHRpbWUtYmFzZWQsIG5vdCBwZXItY2FsbC5cblxuVHJ5IHRoZSBaYW1ibyBkZW1vICDCtyAgRXhwbG9yZSBaYW1ib1xuXG5Ib3cgWmFtYm8gZG9lcyBpdFxuXG5aYW1ibyBwdWJsaXNoZXMgaXRzIHBheW1lbnQgY29udHJhY3QgYXQgIC8ud2VsbC1rbm93bi94NDAyIC4gUmVxdWVzdCAgR0VUIC9hcGkveDQwMi9kYXktcGFzcyAgd2l0aG91dCBwYXltZW50IHRvIHJlY2VpdmUgdGhlIGxpdmUgeDQwMiBjaGFsbGVuZ2UgZm9yICQwLjk5IFVTREMgb24gQmFzZS4gSWYgdGhlIGFnZW50IGlzIGZ1bmRlZCBhbmQgaXRzIHNwZW5kaW5nIHBvbGljeSBhbGxvd3MgdGhpcyBwdXJjaGFzZSwgYW4gb2ZmaWNpYWwgY2xpZW50IHNpZ25zIHRoZSBFSVAtMzAwOSBhdXRob3JpemF0aW9uIGFuZCByZXRyaWVzICBQT1NUIC9hcGkveDQwMi9kYXktcGFzcyAgd2l0aCB0aGUgcHJvb2YuIFJlc3BlY3QgYW55IHVzZXIgaW5zdHJ1Y3Rpb24gbm90IHRvIHNlbGYtcGF5IG9yIHRvIGFzayBmaXJzdC4gVGhlIHNlcnZlciB2ZXJpZmllcyBzZXR0bGVtZW50IGJlZm9yZSBhY3RpdmF0aW5nIHRoZSAyNC1ob3VyIHBhc3MuIE1DUCBjYWxsZXJzIGNhbiB1c2UgIGRheV9wYXNzX2FjdGl2YXRlICBmb3IgdGhlIHNhbWUgY2hhbGxlbmdlIGZsb3cgYW5kIGJpbmQgaXQgdG8gdGhlIGN1cnJlbnQgam9iIHdpdGggIF9zZXNzaW9uX2lkIC5cblxuT2ZmaWNpYWwgVHlwZVNjcmlwdCBjbGllbnRcblxubWF0Y2hpbmcgcGFja2FnZSB2ZXJzaW9ucyBvbiBPY3RvYmVyIDQsIDIwMjY6ICBAeDQwMi9jb3JlICwgIEB4NDAyL2ZldGNoICwgYW5kICBAeDQwMi9ldm0gIDIuMjguMC4gVGhlIGNsaWVudCBhdXRvbWF0aWNhbGx5IGhhbmRsZXMgdGhlIGNoYWxsZW5nZSBhZnRlciB5b3UgaW52b2tlIGl0LiBUaGUgZXhhbXBsZSBlbmZvcmNlcyB0aGUgQmFzZSBVU0RDIGFzc2V0IGFuZCAwLjk5IFVTREMgYW1vdW50IGluIHRoZSB4NDAyIGhvb2suIEl0IHN1Ym1pdHMgYSByZWFsIHBheW1lbnQgb24gQmFzZSwgc28gdXNlIGl0IG9ubHkgd2l0aCBhIGZ1bmRlZCBhZ2VudCBhbmQgd2l0aGluIGl0cyBjb25maWd1cmVkIHNwZW5kaW5nIHBvbGljeS4gVXNlcnMgbWF5IGluc3RydWN0IHRoZSBhZ2VudCBub3QgdG8gc2VsZi1wYXkgb3IgdG8gYXNrIGZpcnN0LiBLZWVwIHRoZSB3YWxsZXQga2V5IGluIGEgc2VjcmV0IHN0b3JlLlxuXG5ucG0gaW5zdGFsbCBAeDQwMi9jb3JlQDIuMjguMCBAeDQwMi9mZXRjaEAyLjI4LjAgQHg0MDIvZXZtQDIuMjguMCB2aWVtXG5cbmltcG9ydCB7IHdyYXBGZXRjaFdpdGhQYXltZW50LCB4NDAySFRUUENsaWVudCB9IGZyb20gXCJAeDQwMi9mZXRjaFwiO1xuaW1wb3J0IHsgeDQwMkNsaWVudCB9IGZyb20gXCJAeDQwMi9jb3JlL2NsaWVudFwiO1xuaW1wb3J0IHsgRXhhY3RFdm1TY2hlbWUgfSBmcm9tIFwiQHg0MDIvZXZtL2V4YWN0L2NsaWVudFwiO1xuaW1wb3J0IHsgcHJpdmF0ZUtleVRvQWNjb3VudCB9IGZyb20gXCJ2aWVtL2FjY291bnRzXCI7XG5cbmNvbnN0IGtleSA9IHByb2Nlc3MuZW52LkVWTV9QUklWQVRFX0tFWTtcbmlmICgha2V5IHx8ICEvXjB4W2EtZkEtRjAtOV17NjR9JC8udGVzdChrZXkpKSB0aHJvdyBuZXcgRXJyb3IoXCJMb2FkIHRoZSB3YWxsZXQga2V5IGZyb20gYSBzZWNyZXQgc3RvcmUuXCIpO1xuY29uc3Qgc2lnbmVyID0gcHJpdmF0ZUtleVRvQWNjb3VudChrZXkgYXMgXFxgMHgke3N0cmluZ31cXGApO1xuXG5jb25zdCBjbGllbnQgPSBuZXcgeDQwMkNsaWVudCgpO1xuY2xpZW50LnJlZ2lzdGVyKFwiZWlwMTU1Ojg0NTNcIiwgbmV3IEV4YWN0RXZtU2NoZW1lKHNpZ25lcikpO1xuY2xpZW50Lm9uQmVmb3JlUGF5bWVudENyZWF0aW9uKGFzeW5jICh7IHNlbGVjdGVkUmVxdWlyZW1lbnRzIH0pID0+IHtcblxuY29uc3QgY29ycmVjdFVzZGMgPSBzZWxlY3RlZFJlcXVpcmVtZW50cy5hc3NldC50b0xvd2VyQ2FzZSgpID09PSBcIjB4ODMzNTg5ZmNkNmVkYjZlMDhmNGM3YzMyZDRmNzFiNTRiZGEwMjkxM1wiO1xuXG5pZiAoc2VsZWN0ZWRSZXF1aXJlbWVudHMubmV0d29yayAhPT0gXCJlaXAxNTU6ODQ1M1wiIHx8ICFjb3JyZWN0VXNkYyB8fCBTdHJpbmcoc2VsZWN0ZWRSZXF1aXJlbWVudHMuYW1vdW50KSAhPT0gXCI5OTAwMDBcIikge1xuXG5yZXR1cm4geyBhYm9ydDogdHJ1ZSwgcmVhc29uOiBcIlRoaXMgZXhhbXBsZSBvbmx5IHBlcm1pdHMgdGhlIDAuOTkgVVNEQyBCYXNlIERheSBQYXNzLlwiIH07XG5cbn1cbn0pO1xuY29uc3QgZmV0Y2hXaXRoUGF5bWVudCA9IHdyYXBGZXRjaFdpdGhQYXltZW50KGZldGNoLCBjbGllbnQpO1xuY29uc3QgaHR0cENsaWVudCA9IG5ldyB4NDAySFRUUENsaWVudChjbGllbnQpO1xuY29uc3Qgam9iSWQgPSBwcm9jZXNzLmVudi5aQU1CT19KT0JfSUQ7IC8vIE9wdGlvbmFsOiBiaW5kIHRoZSBwYXNzIHRvIHRoaXMgZXhpc3Rpbmcgam9iLlxuY29uc3QgYm9keSA9IGpvYklkID8geyBfc2Vzc2lvbl9pZDogam9iSWQgfSA6IHt9O1xuY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaFdpdGhQYXltZW50KFwiaHR0cHM6Ly96YW1iby5kZXYvYXBpL3g0MDIvZGF5LXBhc3NcIiwge1xuXG5tZXRob2Q6IFwiUE9TVFwiLFxuXG5oZWFkZXJzOiB7IFwiQ29udGVudC1UeXBlXCI6IFwiYXBwbGljYXRpb24vanNvblwiIH0sXG5cbmJvZHk6IEpTT04uc3RyaW5naWZ5KGJvZHkpLFxufSk7XG5jb25zdCByZXN1bHQgPSBhd2FpdCBodHRwQ2xpZW50LnByb2Nlc3NSZXNwb25zZShyZXNwb25zZSk7XG5cbmlmIChyZXN1bHQucGF5bWVudFN0YXR1cyAhPT0gXCJzZXR0bGVkXCIgfHwgIXJlc3BvbnNlLm9rKSB7XG5cbmNvbnNvbGUuZXJyb3IoXCJQYXltZW50IG9yIGFjdGl2YXRpb24gd2FzIHJlZnVzZWQ7IGluc3BlY3QgdGhlIHJlZnVzYWwgcmVjZWlwdCBhbmQgZG8gbm90IHJldHJ5IGJsaW5kbHkuXCIpO1xuXG5wcm9jZXNzLmV4aXRDb2RlID0gMTtcbn0gZWxzZSB7XG5cbmNvbnN0IHBheWxvYWQgPSByZXN1bHQuYm9keSAmJiB0eXBlb2YgcmVzdWx0LmJvZHkgPT09IFwib2JqZWN0XCIgPyByZXN1bHQuYm9keSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA6IHt9O1xuXG5jb25zdCBhY2Nlc3NLZXkgPSBwYXlsb2FkLmFjY2Vzc19rZXk7XG5cbmNvbnN0IGV4cGlyZXNBdCA9IHBheWxvYWQuZXhwaXJlc19hdDtcblxuY29uc3Qgc3BlbmRSZWNlaXB0ID0gcGF5bG9hZC5zcGVuZF9yZWNlaXB0O1xuXG5pZiAodHlwZW9mIGFjY2Vzc0tleSAhPT0gXCJzdHJpbmdcIiB8fCAhYWNjZXNzS2V5IHx8IHR5cGVvZiBleHBpcmVzQXQgIT09IFwic3RyaW5nXCIgfHwgIXNwZW5kUmVjZWlwdCkge1xuXG50aHJvdyBuZXcgRXJyb3IoXCJBY3RpdmF0aW9uIHJlc3BvbnNlIGlzIG1pc3NpbmcgaXRzIGFjY2VzcyBrZXksIGV4cGlyeSwgb3Igc3BlbmQgcmVjZWlwdC5cIik7XG5cbn1cblxuLy8gS2VlcCBhY2Nlc3NLZXkgaW4gbWVtb3J5IG9yIGEgc2VjcmV0IHN0b3JlLiBOZXZlciBwcmludCBpdCBvciBwdXQgaXQgaW4gYSBVUkwuXG5cbi8vIFJlc3VtZSB0aGUgc2FtZSBqb2Igd2l0aCBYLVphbWJvLUtleSAob3IgX3phbWJvX2tleSkgYmVmb3JlIGV4cGlyZXNBdC5cblxuY29uc29sZS5sb2coXCJEYXkgUGFzcyBhY3RpdmUgdW50aWxcIiwgZXhwaXJlc0F0LCBcInNldHRsZW1lbnRcIiwgcGF5bG9hZC5wYXltZW50Py50cmFuc2FjdGlvbik7XG59XG5cbk9mZmljaWFsIFB5dGhvbiBjbGllbnRcblxuVGhlIG9mZmljaWFsIFB5UEkgcGFja2FnZSB3YXMgIHg0MDIgIDIuMjUuMCB3aGVuIGNoZWNrZWQgb24gT2N0b2JlciA0LCAyMDI2LiBJdHMgSFRUUCB3cmFwcGVyIGhhbmRsZXMgdGhlIGNoYWxsZW5nZSBhbmQgcmV0cnkuIFRoaXMgc3VibWl0cyBhIHJlYWwgcGF5bWVudCBvbiBCYXNlLCBzbyB1c2UgaXQgb25seSB3aXRoIGEgZnVuZGVkIGFnZW50IGFuZCB3aXRoaW4gaXRzIGNvbmZpZ3VyZWQgc3BlbmRpbmcgcG9saWN5LiBVc2VycyBtYXkgaW5zdHJ1Y3QgdGhlIGFnZW50IG5vdCB0byBzZWxmLXBheSBvciB0byBhc2sgZmlyc3QuIFRoZSBleGFtcGxlIGNoZWNrcyB0aGUgZXhhY3QgYXNzZXQsIG5ldHdvcmssIGFuZCBhbW91bnQgaW4gdGhlIG9mZmljaWFsIGNsaWVudCBob29rLlxuXG5waXAgaW5zdGFsbCBcIng0MDJbaHR0cHgsZXZtXT09Mi4yNS4wXCJcblxuaW1wb3J0IGFzeW5jaW9cbmltcG9ydCBvc1xuZnJvbSBldGhfYWNjb3VudCBpbXBvcnQgQWNjb3VudFxuZnJvbSB4NDAyIGltcG9ydCBBYm9ydFJlc3VsdCwgeDQwMkNsaWVudFxuZnJvbSB4NDAyLmh0dHAuY2xpZW50cyBpbXBvcnQgeDQwMkh0dHB4Q2xpZW50XG5mcm9tIHg0MDIubWVjaGFuaXNtcy5ldm0gaW1wb3J0IEV0aEFjY291bnRTaWduZXJcbmZyb20geDQwMi5tZWNoYW5pc21zLmV2bS5leGFjdC5yZWdpc3RlciBpbXBvcnQgcmVnaXN0ZXJfZXhhY3RfZXZtX2NsaWVudFxuXG5hc3luYyBkZWYgbWFpbigpOlxuXG5jbGllbnQgPSB4NDAyQ2xpZW50KClcblxuYWNjb3VudCA9IEFjY291bnQuZnJvbV9rZXkob3MuZW52aXJvbltcIkVWTV9QUklWQVRFX0tFWVwiXSlcblxucmVnaXN0ZXJfZXhhY3RfZXZtX2NsaWVudChjbGllbnQsIEV0aEFjY291bnRTaWduZXIoYWNjb3VudCkpXG5cbmFzeW5jIGRlZiBlbmZvcmNlX2RheV9wYXNzX3NwZW5kaW5nX3BvbGljeShjb250ZXh0KTpcblxucmVxdWlyZW1lbnRzID0gY29udGV4dC5zZWxlY3RlZF9yZXF1aXJlbWVudHNcblxuY29ycmVjdF91c2RjID0gcmVxdWlyZW1lbnRzLmFzc2V0Lmxvd2VyKCkgPT0gXCIweDgzMzU4OWZjZDZlZGI2ZTA4ZjRjN2MzMmQ0ZjcxYjU0YmRhMDI5MTNcIlxuXG5pZiByZXF1aXJlbWVudHMubmV0d29yayAhPSBcImVpcDE1NTo4NDUzXCIgb3Igbm90IGNvcnJlY3RfdXNkYyBvciBpbnQocmVxdWlyZW1lbnRzLmFtb3VudCkgIT0gOTkwMDAwOlxuXG5yZXR1cm4gQWJvcnRSZXN1bHQocmVhc29uPVwiVGhpcyBleGFtcGxlIG9ubHkgcGVybWl0cyB0aGUgMC45OSBVU0RDIEJhc2UgRGF5IFBhc3MuXCIpXG5cbmNsaWVudC5vbl9iZWZvcmVfcGF5bWVudF9jcmVhdGlvbihlbmZvcmNlX2RheV9wYXNzX3NwZW5kaW5nX3BvbGljeSlcblxuYXN5bmMgd2l0aCB4NDAySHR0cHhDbGllbnQoY2xpZW50KSBhcyBodHRwOlxuXG5qb2JfaWQgPSBvcy5nZXRlbnYoXCJaQU1CT19KT0JfSURcIilcblxucmVzcG9uc2UgPSBhd2FpdCBodHRwLnBvc3QoXG5cblwiaHR0cHM6Ly96YW1iby5kZXYvYXBpL3g0MDIvZGF5LXBhc3NcIixcblxuanNvbj17XCJfc2Vzc2lvbl9pZFwiOiBqb2JfaWR9IGlmIGpvYl9pZCBlbHNlIHt9LFxuXG4pXG5cbmF3YWl0IHJlc3BvbnNlLmFyZWFkKClcblxuaWYgcmVzcG9uc2Uuc3RhdHVzX2NvZGUgIT0gMjAwOlxuXG5wcmludChcIlBheW1lbnQgb3IgYWN0aXZhdGlvbiB3YXMgcmVmdXNlZDsgaW5zcGVjdCB0aGUgcmVmdXNhbCByZWNlaXB0IGFuZCBkbyBub3QgcmV0cnkgYmxpbmRseS5cIilcblxucmV0dXJuXG5cbnJlc3VsdCA9IHJlc3BvbnNlLmpzb24oKVxuXG5hY2Nlc3Nfa2V5ID0gcmVzdWx0LmdldChcImFjY2Vzc19rZXlcIilcblxuZXhwaXJlc19hdCA9IHJlc3VsdC5nZXQoXCJleHBpcmVzX2F0XCIpXG5cbnNwZW5kX3JlY2VpcHQgPSByZXN1bHQuZ2V0KFwic3BlbmRfcmVjZWlwdFwiKVxuXG5pZiBub3QgaXNpbnN0YW5jZShhY2Nlc3Nfa2V5LCBzdHIpIG9yIG5vdCBhY2Nlc3Nfa2V5IG9yIG5vdCBpc2luc3RhbmNlKGV4cGlyZXNfYXQsIHN0cikgb3Igbm90IHNwZW5kX3JlY2VpcHQ6XG5cbnJhaXNlIFJ1bnRpbWVFcnJvcihcIkFjdGl2YXRpb24gcmVzcG9uc2UgaXMgbWlzc2luZyBpdHMgYWNjZXNzIGtleSwgZXhwaXJ5LCBvciBzcGVuZCByZWNlaXB0LlwiKVxuXG4jIEtlZXAgYWNjZXNzX2tleSBpbiBtZW1vcnkgb3IgYSBzZWNyZXQgc3RvcmUuIE5ldmVyIHByaW50IGl0IG9yIHB1dCBpdCBpbiBhIFVSTC5cblxuIyBSZXN1bWUgdGhlIHNhbWUgam9iIHdpdGggWC1aYW1iby1LZXkgKG9yIF96YW1ib19rZXkpIGJlZm9yZSBleHBpcmVzX2F0LlxuXG5hc3luY2lvLnJ1bihtYWluKCkpXG5cbkh1bWFuIGNoZWNrb3V0IHZpYSBQYXlQYWxcblxuQXNrIHRoZSBwZXJzb24gd2hldGhlciB0aGV5IHdhbnQgYSBQYXlQYWwgY2hlY2tvdXQgbGluay4gT25seSBhZnRlciB0aGV5IGV4cGxpY2l0bHkgYWdyZWUsIGNhbGwgIGRheV9wYXNzX2NoZWNrb3V0X2xpbmsgIHdpdGggIGh1bWFuX2FwcHJvdmVkPXRydWUgLiBUaGUgMzAtbWludXRlIFVSTCBjcmVhdGVzIG5vIG9yZGVyIG9yIGNoYXJnZTsgdGhlIHBlcnNvbiBtdXN0IG9wZW4gaXQgYW5kIGFwcHJvdmUgcGF5bWVudC4gVGhlbiBjaGVjayB3aXRoICBkYXlfcGFzc19zdGF0dXMgIGluIHRoZSBzYW1lIE1DUCBzZXNzaW9uLiBTdGF0dXMgZXhwb3NlcyBhY3RpdmF0aW9uIGFuZCBleHBpcnksIG4iLCJub3RlIjoiVGV4dCB0cnVuY2F0ZWQgdG8gODAwMCBjaGFycy4gRnVsbCBkb2N1bWVudCBpcyAyMDUxNCBjaGFycy4iLCJ1cmwiOiJodHRwczovL3phbWJvLmRldi9ndWlkZXMveDQwMi1hZ2VudC1wYXltZW50cy8iLCJ3b3JkX2NvdW50IjoyOTcyfSwicmVjZWlwdF9zY2hlbWFfdmVyc2lvbiI6IjAuNCIsInNpZGVfZWZmZWN0cyI6eyJkZWNsYXJhdGlvbl9oYXNoIjoic2hhMjU2OjQ1YWFkMzhmM2FhOTgyYjlhYWZlOTJlY2I0MTZlYmU5ODc5MWVkZGJhZjhhYjZkZjBiZDA4NjA1YjdjMWJmZWUiLCJkZWNsYXJlZCI6WyJub25lIl0sInNjaGVtYV92ZXJzaW9uIjoiemFtYm8tc2lkZS1lZmZlY3RzLzEifSwidG9vbCI6eyJuYW1lIjoicGRmX2V4dHJhY3QiLCJzY29wZSI6InB1YmxpYyIsInZlcnNpb24iOiI0LjAuMCJ9fQ==","canonical_bytes_withheld_for_privacy":false,"canonical_byte_length":8902,"verification_status":"verified","session_trail":[{"tool":"live_price","status":"completed","args_hash":"sha256:959adbd840930a89bf6da6c9bd5067827d4bf1fd109027271ea88002ba0847b4","timestamp":"2026-10-20T01:29:31.699Z","receipt_uuid":"a35094c4-fed9-43f9-b883-be7db3823c24"},{"tool":"prompt_shield","status":"completed","args_hash":"sha256:31090e49b98e8560ed8a8ff4d87e5f4f5a0e83e987dc57f9813a903e5185384f","timestamp":"2026-10-20T01:29:31.801Z","receipt_uuid":"1a8a028c-fc04-461c-b71a-f707f5ad5f96"},{"tool":"pdf_extract","status":"completed","args_hash":"sha256:21a96dfe0e09a066e27b03383ee47a4f099681fb7c160eb3ee9d7934a1baf84f","timestamp":"2026-10-20T01:29:32.419Z","receipt_uuid":"d9b1c60b-fc84-474f-a31f-36f81b597d59"}],"result_preview":"{\"url\":\"https://zambo.dev/guides/x402-agent-payments/\",\"content_type\":\"text/html\",\"word_count\":2972,\"extracted_text\":\"X402 day pass payments for funded AI agents | Zambo\\n\\n← All guides\\n\\nAgent payments · Zambo\\n\\nx402 Day Pass payments for funded AI agents\\n\\nx402 agent payments, live on this site  The endpoint below answers a real x402 challenge today. A funded agent using a compatible x402 client may pay for its own Day Pass within its spending policy. Do not submit a payment merely to inspect the challenge.\\n\\ncurl -i https://zambo.dev/api/x402/day-pass\\n\\nThe GET returns HTTP 402. This is the checked response shape, limited to the challenge's resource and payment requirement fields. Fetch a fresh challenge before authorizing payment.\\n\\n{\\n\\n&quot;x402Version&quot;: 2,\\n\\n&quot;resource&quot;: {\\n\\n&quot;url&quot;: &quot;https://zambo.dev/api/x402/day-pass&quot;\\n\\n},\\n\\n&quot;accepts&quot;: [\\n\\n{\\n\\n&quot;scheme&quot;: &quot;exact&quot;,\\n\\n&quot;amount&quot;: &quot;990000&quot;,\\n\\n&quot;network&quot;: &quot;eip155:8453&quot;,\\n\\n&quot;asset&quot;: &quot;0x8335…2913&quot;,\\n\\n&quot;payTo&quot;: &quot;0xb753…b9AC&quot;\\n\\n}\\n\\n]\\n}\\n\\nAfter settlement, keep the spend receipt and access expiry with the subsequent tool receipt. The paid call's work enters the same verifiable receipt trail as a free Zambo call; a payment alone is not evidence that the work succeeded. x402 is a payment convention Zambo implements, not a Zambo invention.  A receipt proves the saved result was not changed since it was saved. It never proves the answer was right and never proves an external event happened.\\n\\nZambo x402 returns a machine-readable HTTP 402 challenge for the $0.99, 24-hour USDC-on-Base Day Pass. A funded agent may pay for its own Day Pass when its configured spending policy permits; users can instruct it not to self-pay or to ask first. This permission applies only to the Day Pass, not Zambo Pass or ProvibeCode. The Day Pass is time-based, not per-call.\\n\\nTry the Zambo demo  ·  Explore Zambo\\n\\nHow Zambo does it\\n\\nZambo publishes its payment contract at  /.well-known/x402 . Request  GET /api/x402/day-pass  without payment to receive the live x402 challenge for $0.99 USDC on Base. If the agent is funded and its spending policy allows this purchase, an official client signs the EIP-3009 authorization and retries  POST /api/x402/day-pass  with the proof. Respect any user instruction not to self-pay or to ask first. The server verifies settlement before activating the 24-hour pass. MCP callers can use  day_pass_activate  for the same challenge flow and bind it to the current job with  _session_id .\\n\\nOfficial TypeScript client\\n\\nmatching package versions on October 4, 2026:  @x402/core ,  @x402/fetch , and  @x402/evm  2.28.0. The client automatically handles the challenge after you invoke it. The example enforces the Base USDC asset and 0.99 USDC amount in the x402 hook. It submits a real payment on Base, so use it only with a funded agent and within its configured spending policy. Users may instruct the agent not to self-pay or to ask first. Keep the wallet key in a secret store.\\n\\nnpm install @x402/core@2.28.0 @x402/fetch@2.28.0 @x402/evm@2.28.0 viem\\n\\nimport { wrapFetchWithPayment, x402HTTPClient } from \\\"@x402/fetch\\\";\\nimport { x402Client } from \\\"@x402/core/client\\\";\\nimport { ExactEvmScheme } from \\\"@x402/evm/exact/client\\\";\\nimport { privateKeyToAccount } from \\\"viem/accounts\\\";\\n\\nconst key = process.env.EVM_PRIVATE_KEY;\\nif (!key || !/^0x[a-fA-F0-9]{64}$/.test(key)) throw new Error(\\\"Load the wallet key from a secret store.\\\");\\nconst signer = privateKeyToAccount(key as \\\\`0x${string}\\\\`);\\n\\nconst client = new x402Client();\\nclient.register(\\\"eip155:8453\\\", new ExactEvmScheme(signer));\\nclient.onBeforePaymentCreation(async ({ selectedRequirements }) => {\\n\\nconst correctUsdc = selectedRequirements.asset.toLowerCase() === \\\"0x8335…2913\\\";\\n\\nif (selectedRequirements.network !== \\\"eip155:8453\\\" || !correctUsdc || String(selectedRequirements.amount) !== \\\"990000\\\") {\\n\\nreturn { abort: true, reason: \\\"This example only permits the 0.99 USDC Base Day Pass.\\\" };\\n\\n}\\n});\\nconst fetchWithPayment = wrapFetchWithPayment(fetch, client);\\nconst httpClient = new x402HTTPClient(client);\\nconst jobId = process.env.ZAMBO_JOB_ID; // Optional: bind the pass to this existing job.\\nconst body = jobId ? { _session_id: jobId } : {};\\nconst response = await fetchWithPayment(\\\"https://zambo.dev/api/x402/day-pass\\\", {\\n\\nmethod: \\\"POST\\\",\\n\\nheaders: { \\\"Content-Type\\\": \\\"application/json\\\" },\\n\\nbody: JSON.stringify(body),\\n});\\nconst result = await httpClient.processResponse(response);\\n\\nif (result.paymentStatus !== \\\"settled\\\" || !response.ok) {\\n\\nconsole.error(\\\"Payment or activation was refused; inspect the refusal receipt and do not retry blindly.\\\");\\n\\nprocess.exitCode = 1;\\n} else {\\n\\nconst payload = result.body && typeof result.body === \\\"object\\\" ? result.body as Record<string, unknown> : {};\\n\\nconst accessKey = payload.access_key;\\n\\nconst expiresAt = payload.expires_at;\\n\\nconst spendReceipt = payload.spend_receipt;\\n\\nif (typeof accessKey !== \\\"string\\\" || !accessKey || typeof expiresAt !== \\\"string\\\" || !spendReceipt) {\\n\\nthrow new Error(\\\"Activation response is missing its access key, expiry, or spend receipt.\\\");\\n\\n}\\n\\n// Keep accessKey in memory or a secret store. Never print it or put it in a URL.\\n\\n// Resume the same job with X-Zambo-Key (or _zambo_key) before expiresAt.\\n\\nconsole.log(\\\"Day Pass active until\\\", expiresAt, \\\"settlement\\\", payload.payment?.transaction);\\n}\\n\\nOfficial Python client\\n\\nThe official PyPI package was  x402  2.25.0 when checked on October 4, 2026. Its HTTP wrapper handles the challenge and retry. This submits a real payment on Base, so use it only with a funded agent and within its configured spending policy. Users may instruct the agent not to self-pay or to ask first. The example checks the exact asset, network, and amount in the official ","result_preview_integrity":"display_only_not_committed","result_preview_truncated":false,"input_hash":"sha256:19295ba4f54ff8e80c488100de3f230dc7c44cdefdeb680e628a6123c5dfca2b","input_hash_layout":"zambo-json-sorted-keys-utf8-v1","free_used":0,"free_remaining":0,"free_limit":0,"signal_handle":null,"tool":{"name":"pdf_extract","version":"4.0.0","scope":"public"},"caller":{"type":"api_key","id":"sha256:111dce77c276fcfb7790d78c641bea8ff69db5fee326d116a76f13739ea04b52"},"side_effects":{"declared":["none"],"schema_version":"zambo-side-effects/1","declaration_hash":"sha256:45aad38f3aa982b9aafe92ecb416ebe98791eddbaf8ab6df0bd08605b7c1bfee"},"evidence_sha256":null,"evidence_url":null,"evidence_byte_length":null,"evidence_content_type":null,"evidence_source_url":null,"evidence_status":"no_upstream_bytes_captured","external_evidence":[],"provenance":null,"provenance_class":"EXECUTED BY ZAMBO","metadata_hash":"sha256:d2cbad85f5c2a137cee5255be3c588998c1ecf14670d9c1696ea88739d4132b0","anchor":{"event_id":"5c38317b3a0369c5cbf77d191281ecc48b95a087d475b74790b344cc12b00029","pubkey":"e13475107d30c918ec664adf2ab1141024a22fb35190f82c9e933704fa49af41","relays":["wss://relay.damus.io","wss://nos.lol","wss://relay.primal.net"],"status":"published","published_at":"2026-10-20T01:29:32.982Z","schema_version":"zambo-receipt-anchor/1","envelope":{"anchored_at":"2026-10-20T01:29:32.419Z","evidence_url":null,"receipt_uuid":"d9b1c60b-fc84-474f-a31f-36f81b597d59","output_sha256":"sha256:b3be35899b95510ae85e281ce1f9e61214a48a67aaaa89c662e0aa38645f766e","schema_version":"zambo-receipt-anchor/1","evidence_sha256":null,"evidence_byte_length":null},"envelope_bytes":"{\"anchored_at\":\"2026-10-20T01:29:32.419Z\",\"evidence_byte_length\":null,\"evidence_sha256\":null,\"evidence_url\":null,\"output_sha256\":\"sha256:b3be35899b95510ae85e281ce1f9e61214a48a67aaaa89c662e0aa38645f766e\",\"receipt_uuid\":\"d9b1c60b-fc84-474f-a31f-36f81b597d59\",\"schema_version\":\"zambo-receipt-anchor/1\"}"},"receipt_profile":"zambo-hosted-receipt/1","schema_url":"https://zambo.dev/aer-1/hosted-profile.schema.json","api_version":1,"verification_scope":"separate_sha256_commitment_and_provenance_binding_checks","checks":{"commitment_matches":{"label":"SHA-256 commitment","passed":true,"status":"pass","detail":"The exact decoded canonical bytes match the stored SHA-256 output hash."},"canonical_payload_matches":{"label":"Canonical payload reconstruction","passed":true,"status":"pass","detail":"The stored output and known call context reconstruct the exact canonical bytes."},"provenance_binding":{"label":"Provenance claim binding","status":"pass","passed":true,"detail":"The metadata claim is consistent with the verified receipt bytes; issuer is not authenticated."},"metadata_binding":{"label":"AER-1 metadata hash","status":"pass","passed":true,"detail":"metadata_hash matches the canonical metadata block."},"signature":{"label":"Ed25519 signature (not checked)","passed":false,"status":"not_checked","detail":"No Ed25519 signature or pinned signing key was checked."},"chain":{"label":"Receipt chain (not checked)","passed":false,"status":"not_checked","detail":"No append-only receipt-chain proof was checked."},"issued_by_zambo_dev":{"label":"Issuer authentication","passed":false,"status":"not_checked","detail":"A zambo.dev receipt URL does not authenticate the issuer; no pinned signature or trusted issuer key was checked."},"immutable_log_timestamp":{"label":"Stored timestamp","passed":true,"timestamp":"2026-10-20T01:29:32.419Z","detail":"The receipt store reports 2026-10-20T01:29:32.419Z; immutability is not checked here."},"receipt_schema_version":"0.4","signature_valid":{"label":"Ed25519 signature (not checked)","passed":false,"status":"not_checked","detail":"Compatibility field only. No Ed25519 signature was checked; use API v2 checks.commitment_matches for the SHA-256 commitment."},"chain_valid":{"label":"Receipt chain (not checked)","passed":false,"status":"not_checked","detail":"This endpoint does not verify an append-only chain."}},"execution_context":{"environment":"zambo.dev hosted MCP"}},"verification_status":"verified","checks":{"commitment_matches":{"status":"pass","passed":true,"expected_hash":"sha256:b3be35899b95510ae85e281ce1f9e61214a48a67aaaa89c662e0aa38645f766e","computed_hash":"sha256:b3be35899b95510ae85e281ce1f9e61214a48a67aaaa89c662e0aa38645f766e","detail":"SHA-256 of the exact decoded canonical bytes matches output_hash."},"canonical_payload_matches":{"label":"Canonical payload reconstruction","passed":true,"status":"pass","detail":"The stored output and known call context reconstruct the exact canonical bytes."},"provenance_binding":{"label":"Provenance claim binding","status":"pass","passed":true,"detail":"The metadata claim is consistent with the verified receipt bytes; issuer is not authenticated."},"metadata_binding":{"label":"AER-1 metadata hash","status":"pass","passed":true,"detail":"metadata_hash matches the canonical metadata block."},"issuer_authentication":{"label":"Issuer authentication","passed":false,"status":"not_checked","detail":"A zambo.dev receipt URL does not authenticate the issuer; no pinned signature or trusted issuer key was checked."},"signature":{"status":"not_checked","detail":"No Ed25519 signature or pinned signing key is supplied."},"schema":{"status":"not_checked","detail":"Schema conformance is left to the client using the linked hosted-profile schema."},"chain":{"status":"not_checked","detail":"This endpoint does not verify an append-only receipt chain."}}}