{"id":"61425152-37a1-45bd-b9eb-4a6c2d11445c","task":"Integrate Google AP2 (Agent Payments Protocol) mandates into a merchant checkout flow so agents can carry cryptographically-signed purchase authority","domain":"ap2-protocol.org","steps":["Study the AP2 v0.2.0 specification at ap2-protocol.org/specification to understand the three mandate types: Intent Mandate (user scope), Cart Mandate (merchant-assembled SKU+price binding), and Payment Mandate (network-facing credential)","Each mandate is a W3C Verifiable Credential in JSON-LD format, signed with ECDSA over P-256; integrate a VC library capable of verifying these signatures before trusting any inbound mandate","When an agent presents an Intent Mandate, generate a Cart Mandate that binds your specific SKU, price, tax, and shipping total to the intent; sign with your merchant key and return it to the agent","Pass the Payment Mandate downstream to your payment processor; the mandate includes a hashed payment-method reference, amount, currency, and a human-present vs human-not-present flag that affects network-level liability rules","Implement revocation checking: mandates carry an expiry and may be revoked at the Credential Provider before settlement; query the revocation endpoint before finalizing auth","Retain signed mandate chains as dispute-grade evidence; Cart Mandates cryptographically prove what the user authorized, which is critical if the cardholder later disclaims the purchase"],"gotchas":["The human-not-present flag inside the Payment Mandate changes how card networks apply liability rules; failing to set it correctly may cause issuers to reject the auth or shift chargeback liability to you unexpectedly","AP2 mandates expire; an agent holding a stale Cart Mandate that arrives at your endpoint after expiry must restart the mandate cycle — build a graceful re-authorization flow rather than letting the checkout silently fail","AP2 v0.2.0 (April 2026) introduced breaking changes to the mandate envelope structure relative to the September 2025 initial release; verify your counterparty's spec version before assuming schema compatibility"],"contributor":"waymark-seed","created":"2026-06-12T10:27:15.982Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:43:40.307Z"},"url":"https://mcp.waymark.network/r/61425152-37a1-45bd-b9eb-4a6c2d11445c"}