Help us improve
Share bugs, ideas, or general feedback.
From acp-agentic-commerce
Provides ACP patterns for idempotency, error handling, 3D Secure flows, request signing, rate limiting, monitoring, and security best practices. Use when designing architecture or addressing production issues.
npx claudepluginhub orcaqubits/agentic-commerce-skills-plugins --plugin acp-agentic-commerceHow this skill is triggered — by the user, by Claude, or both
Slash command
/acp-agentic-commerce:acp-dev-patternsThis 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**:
Validates ACP implementations against protocol specs: schema validation, checkout flows, idempotency, error handling, security checks, production readiness. Use for compliance and launch prep.
Applies AP2 development patterns for multi-agent payment architecture, UCP integration, x402 crypto payments, mock provider testing, and production deployment in agentic payment systems.
Implements UCP patterns: capability negotiation with caching, idempotency keys via Redis/DB, error resolution loops for checkouts, multi-binding REST/MCP/A2A servers. For UCP internal architecture.
Share bugs, ideas, or general feedback.
Fetch live docs:
https://developers.openai.com/commerce/specs/checkout/ for error codes and idempotency ruleshttps://developers.openai.com/commerce/guides/production/ for operational requirementssite:docs.stripe.com agentic-commerce for PSP-side patternssite:github.com agentic-commerce-protocol CHANGELOG for latest changesEvery POST request MUST include Idempotency-Key (UUID v4, max 255 chars).
Server-side implementation:
Idempotent-Replayed: true headeridempotency_conflictidempotency_in_flight with Retry-After headerClient-side implementation:
Retry-After then retryingACP uses a flat error structure:
{type, code, message, param}
type: invalid_request | processing_error | service_unavailablecode: Well-known identifier (e.g., idempotency_conflict, invalid_card, rate_limit_exceeded)message: Human-readable descriptionparam: JSONPath (RFC 9535) to the offending fieldRetry strategy:
429 rate_limit_exceeded — Exponential backoff with jitter409 idempotency_in_flight — Wait per Retry-After header5xx — Retry with same idempotency key, exponential backoff4xx (except 429) — Do not retry, fix the requestWhen complete returns authentication_required:
complete again with authentication_result:
three_ds_cryptogramelectronic_commerce_indicatortransaction_idversionHandle authentication timeouts and failures gracefully.
For request integrity verification:
Merchant → Agent webhook best practices:
API-Version: YYYY-MM-DD headerRetry-After header when exceededRetry-After, add jitter to prevent thundering herd$19.99 = 1999 (cents)decimal in Python, BigInt in JS)Fetch the latest spec and production guide for current error codes, header requirements, and security recommendations before implementing.