Build an AP2 Merchant Payment Processor — the agent that constructs payment authorization messages, requests credentials from the Credentials Provider, processes payments, and returns receipts. Use when implementing the MPP role.
Scanned 5/29/2026
Install to Claude Code
npx -y skills add OrcaQubits/agentic-commerce-skills-plugins --skill ap2-payment-processor --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Ap2 Payment Processor?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/orcaqubits-ap2-payment-processor)More formats (shields.io, HTML) on the badges page.
---
name: ap2-payment-processor
description: >
Build an AP2 Merchant Payment Processor — the agent that constructs payment
authorization messages, requests credentials from the Credentials Provider,
processes payments, and returns receipts. Use when implementing the MPP role.
---
# AP2 Merchant Payment Processor Implementation
## Before writing code
**Fetch live docs**:
1. Fetch `https://ap2-protocol.org/specification/` for Payment Processor responsibilities
2. Web-search `site:github.com google-agentic-commerce AP2 samples roles merchant_payment_processor` for reference implementation
3. Web-search `site:github.com google-agentic-commerce AP2 payment processor authorization` for authorization flow
4. Fetch `https://ap2-protocol.org/topics/core-concepts/` for MPP role details
## Conceptual Architecture
### What the Payment Processor Does
The Merchant Payment Processor (MPP) **handles the financial side** of the transaction on behalf of the merchant:
1. **Receives payment requests** from the Merchant Agent
2. **Requests credentials** from the Credentials Provider using the Payment Mandate
3. **Constructs authorization messages** for the payment network
4. **Processes the payment** through the network/issuer
5. **Handles challenges** (3DS2, OTP) when required
6. **Returns receipts** to the Merchant Agent
### Where It Sits in the Flow
```
Shopping Agent → Merchant Agent → MPP → Credentials Provider
↓
Payment Network / Issuer
↓
Authorization Result
↓
MPP → Merchant Agent → Shopping Agent → User
```
### Key Responsibilities
#### Payment Authorization
- Receive the Payment Mandate from the Merchant Agent
- Present the mandate to the Credentials Provider
- Receive tokenized/resolved credentials
- Construct network authorization message
- Submit to the payment network for authorization
- Handle authorization response (approved, declined, challenged)
#### Challenge Handling
When the network/issuer requires additional verification:
- **3DS2** — Strong customer authentication challenge
- **OTP** — One-time password verification
- The MPP triggers a redirect to a trusted user surface
- User completes the challenge
- MPP retries authorization with challenge response
- V0.1 supports redirect challenges
#### Receipt Generation
After successful authorization:
- Generate a payment receipt with transaction details
- Include authorization code, transaction ID
- Return receipt to Merchant Agent
- Receipt flows through to Shopping Agent and ultimately to user
### Payment Network Integration
The MPP interfaces with traditional payment infrastructure:
- **Card networks** — Visa, Mastercard, etc.
- **Payment gateways** — Stripe, Adyen, etc.
- **Issuing banks** — For authorization and settlement
- The Payment Mandate provides these entities visibility into the agentic nature of the transaction
### Risk Signals
The MPP may add risk signals to the authorization:
- Agent identity information
- Transaction context (human-present/not-present)
- Mandate verification results
- Risk payload from the Payment Mandate
### OTP Challenge Flow (Reference)
From the sample implementation:
1. MPP receives payment request from Merchant
2. MPP determines OTP is required
3. MPP sends challenge to Shopping Agent (via A2A)
4. Shopping Agent presents challenge to user
5. User enters OTP (test value: "123" in samples)
6. Shopping Agent returns OTP to MPP
7. MPP verifies OTP
8. MPP proceeds with payment authorization
### Best Practices
- Always validate the Payment Mandate before requesting credentials
- Handle all authorization responses (approved, declined, challenged)
- Implement proper retry logic for transient network failures
- Support multiple challenge types (3DS2, OTP)
- Generate detailed receipts for audit trail
- Log all payment attempts with outcomes
- Handle partial authorizations appropriately
- Implement idempotency for payment processing
Fetch the specification for exact MPP requirements, authorization message format, and challenge flow details before implementing.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!