From ap2-agentic-payments
Implements AP2 Intent Mandate for pre-authorizing autonomous agent purchases using user-signed constraints, expiry, merchants, SKUs, and Python-typed schema.
How this skill is triggered — by the user, by Claude, or both
Slash command
/ap2-agentic-payments:ap2-intent-mandateThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
**Fetch live docs**:
Fetch live docs:
https://ap2-protocol.org/specification/ for the Intent Mandate schemasite:github.com google-agentic-commerce AP2 intent mandate for type definitions and sampleshttps://ap2-protocol.org/topics/core-concepts/ for Intent Mandate conceptual detailsap2 protocol intent mandate human-not-present autonomous for implementation guidesThe Intent Mandate is the VDC for human-not-present transactions. It captures the user's pre-authorized shopping intent with defined constraints, allowing the Shopping Agent to act autonomously within those bounds after the user has left the session.
The Shopping Agent creates the Intent Mandate based on the user's expressed intent. The agent captures the user's requirements and formalizes them into a structured mandate.
The User signs the Intent Mandate before going offline:
The spec describes several conceptual properties for the Intent Mandate (payer/payee identities, authorized payment method categories, risk payload, shopping intent, etc.). The actual V0.1 implementation uses the following IntentMandate Python type fields:
user_cart_confirmation_required (bool) — Whether the user must confirm the cart before purchasenatural_language_description (str) — The user's actual words / shopping intent, captured for accountabilitymerchants (Optional[List[str]]) — Optional list of preferred or allowed merchantsskus (Optional[List[str]]) — Optional list of specific SKUs the agent may purchaserequires_refundability (Optional[bool]) — Whether the user requires the purchase to be refundableintent_expiry (str, ISO 8601) — When this authorization expires (e.g., "2025-09-02T12:00:00Z")Note: Use intent_expiry (an ISO 8601 timestamp) rather than a generic "TTL" concept.
Additional conceptual fields described in the specification (but not necessarily present in V0.1 types) include:
| Aspect | Cart Mandate | Intent Mandate |
|---|---|---|
| Scenario | Human-present | Human-not-present |
| Created by | Merchant | Shopping Agent |
| Specificity | Exact items, prices, totals | Categories, constraints, intent |
| Payment method | Specific tokenized method | Authorized categories |
| User presence | User present at signing | User signs before leaving |
| Expiration | Transaction-scoped | intent_expiry (ISO 8601 timestamp) |
The Intent Mandate defines boundaries the agent must stay within:
intent_expiry — Authorization expires at the specified ISO 8601 timestampThe merchant can escalate a human-not-present flow to human-present:
intent_expiry values — don't leave Intent Mandates valid indefinitelyFetch the specification for exact Intent Mandate fields, constraint formats, and TTL semantics before implementing.
npx claudepluginhub orcaqubits/agentic-commerce-skills-plugins --plugin ap2-agentic-paymentsImplements AP2 human-not-present flow for autonomous shopping agents with Intent Mandate authorization, constraint enforcement, and merchant escalation. For post-user-departure purchasing.
Implements UCP AP2 Mandates for autonomous agent payments using SD-JWT credentials, JWS merchant signatures, and Agent Payments Protocol in 7-step flow with security lock.
Guides BuyWhere MCP and API integration for product search, price comparison, and deal discovery in AI shopping agents using Cursor, Claude, or custom runtimes.