# google-agentic-commerce/ap2

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/google-agentic-commerce-ap2).**

2,782 stars · 388 forks · Python · apache-2.0

## Links

- GitHub: https://github.com/google-agentic-commerce/AP2
- Homepage: https://ap2-protocol.org/
- awesome-repositories: https://awesome-repositories.com/repository/google-agentic-commerce-ap2.md

## Topics

`a2a` `agentic-ai` `agents` `gen-ai` `generative-ai` `payments`

## Description

AP2 is a framework for autonomous agent commerce designed to facilitate financial transactions between AI agents and merchants. It provides a standardized communication protocol and data models for coordinating catalogs and checkout requests, enabling agents to execute payments independently using digital credentials or traditional payment instruments.

The project distinguishes itself through a cryptographic authorization framework that uses signed mandates to delegate limited financial authority to agents. These mandates include strict spending limits, payee restrictions, and temporal boundaries to ensure agents operate within safe parameters. The system further secures transactions by binding payment authorizations to specific checkout sessions and agent keys to prevent double-spending and unauthorized reuse.

The framework covers a broad surface of financial operations, including the generation of signed checkout and transaction receipts for non-repudiable evidence and dispute resolution. It also incorporates a privacy layer using selective disclosure to share only the minimum necessary transaction data with verifiers.

The project is implemented in Python.

## Tags

### Artificial Intelligence & ML

- [Financial Agent Frameworks](https://awesome-repositories.com/f/artificial-intelligence-ml/ai-agent-frameworks/financial-agent-frameworks.md) — Provides a specialized framework for building AI agents that can autonomously conduct commerce and execute financial transactions.
- [Agent Communication Protocols](https://awesome-repositories.com/f/artificial-intelligence-ml/agent-communication-protocols.md) — Provides a standardized communication protocol for coordinating financial transactions and checkout requests between agents and merchants.
- [Payment Protocols](https://awesome-repositories.com/f/artificial-intelligence-ml/agent-communication-protocols/payment-protocols.md) — Implements a standardized communication protocol and data models for autonomous financial transactions between AI agents. ([source](https://ap2-protocol.org/glossary/index.md))
- [Financial Authority Delegation](https://awesome-repositories.com/f/artificial-intelligence-ml/agent-delegation/financial-authority-delegation.md) — Grants agents the permission to execute financial transactions by signing mandates on a trusted interface. ([source](https://ap2-protocol.org/ap2/agent_authorization/index.md))
- [Agentic Commerce Coordination](https://awesome-repositories.com/f/artificial-intelligence-ml/agentic-commerce-coordination.md) — Coordinates the exchange of catalogs and checkout requests between shopping agents and merchants. ([source](https://ap2-protocol.org/ap2/implementation_considerations/index.md))

### Business & Productivity Software

- [AI Agent Payment Frameworks](https://awesome-repositories.com/f/business-productivity-software/payment-integrations/agent-payment-facilitators/ai-agent-payment-frameworks.md) — Provides a comprehensive framework for automating the discovery, negotiation, and settlement of financial transactions for AI agents.
- [Agent Payment Facilitators](https://awesome-repositories.com/f/business-productivity-software/payment-integrations/agent-payment-facilitators.md) — Facilitates financial transactions where agents act independently using digital credentials or traditional payment instruments. ([source](https://ap2-protocol.org/index.md))
- [Spending Constraints](https://awesome-repositories.com/f/business-productivity-software/payment-integrations/agent-payment-facilitators/spending-constraints.md) — Implements strict spending limits and merchant constraints to ensure agents operate within safe financial boundaries.
- [Autonomous](https://awesome-repositories.com/f/business-productivity-software/payment-orchestration/autonomous.md) — Implements a system to manage and execute financial transactions via digitally signed mandates and cryptographic proofs.
- [Transaction Binding](https://awesome-repositories.com/f/business-productivity-software/checkout-orchestrators/transaction-binding.md) — Constrains a payment authorization to a specific checkout session by referencing a unique transaction identifier. ([source](https://ap2-protocol.org/ap2/payment_mandate/index.md))
- [Signed Status Confirmations](https://awesome-repositories.com/f/business-productivity-software/checkout-workflows/checkout-workflows/signed-status-confirmations.md) — Generates signed confirmations of checkout status that link results to specific mandates and order references. ([source](https://ap2-protocol.org/ap2/checkout_mandate/index.md))
- [Conditional Trade Execution](https://awesome-repositories.com/f/business-productivity-software/conditional-trade-execution.md) — Completes purchases autonomously once predefined conditions, such as price drops or availability, are met. ([source](https://ap2-protocol.org/overview/index.md))
- [Non-Repudiable Dispute Evidence](https://awesome-repositories.com/f/business-productivity-software/dispute-management-systems/non-repudiable-dispute-evidence.md) — Combines mandates and receipts into non-repudiable records to provide factual evidence for transaction disputes. ([source](https://ap2-protocol.org/ap2/specification/index.md))
- [Mandate Lifecycle Management](https://awesome-repositories.com/f/business-productivity-software/payment-order-management/mandate-lifecycle-management.md) — Tracks active payment authorizations and enforces duration limits to maintain user control during autonomous execution. ([source](https://ap2-protocol.org/index.md))
- [Payment Receipt Management](https://awesome-repositories.com/f/business-productivity-software/payment-receipt-management.md) — Produces signed checkout and payment records to provide verifiable proof that a transaction was completed. ([source](https://ap2-protocol.org/ap2/implementation_considerations/index.md))

### Networking & Communication

- [Payment Mandate Validations](https://awesome-repositories.com/f/networking-communication/payment-requirement-notifications/payment-requirement-validators/payment-mandate-validations.md) — Validates the authenticity and terms of payment mandates to authorize the release of tokens or funds. ([source](https://ap2-protocol.org/ap2/implementation_considerations/index.md))

### Security & Cryptography

- [Spending Limits](https://awesome-repositories.com/f/security-cryptography/access-control/spending-limits.md) — Enforces strict spending limits and payee restrictions to bound the financial risk of autonomous agent transactions. ([source](https://ap2-protocol.org/ap2/security_and_privacy_considerations/index.md))
- [Autonomous Action Constraints](https://awesome-repositories.com/f/security-cryptography/autonomous-action-constraints.md) — Defines open mandates with limits on merchants and line items to keep agent actions within pre-approved boundaries. ([source](https://ap2-protocol.org/ap2/agent_authorization/index.md))
- [Cryptographic Authorization](https://awesome-repositories.com/f/security-cryptography/cryptographic-authorization.md) — Checks the integrity of digital mandates to confirm an agent possesses the required cryptographic keys and permissions. ([source](https://ap2-protocol.org/ap2/agent_authorization/index.md))
- [Agent Purchase Authorizations](https://awesome-repositories.com/f/security-cryptography/cryptographic-authorization/agent-purchase-authorizations.md) — Uses cryptographically signed mandates to prove an agent's authority to execute checkouts and process payments. ([source](https://ap2-protocol.org/ap2/specification/index.md))
- [Cryptographic Signature Verification](https://awesome-repositories.com/f/security-cryptography/cryptographic-signature-verification.md) — Validates the cryptographic binding between checkout objects, mandates, and signatures to prevent unauthorized charges. ([source](https://ap2-protocol.org/index.md))
- [Cryptographic Transaction Verifications](https://awesome-repositories.com/f/security-cryptography/cryptographic-transaction-verifications.md) — Uses signed mandates and receipts to provide verifiable proof of authorization and prevent unauthorized charges.
- [Cryptographic Transaction Verifiers](https://awesome-repositories.com/f/security-cryptography/cryptographic-transaction-verifiers.md) — Validates payment mandate integrity and binds checkouts to specific agent keys to prevent double-spending.
- [Agent Action Policies](https://awesome-repositories.com/f/security-cryptography/identity-access-management/access-control/policy-enforcement-engines/action-resolution-policies/agent-action-policies.md) — Requires agents to provide cryptographic proof of authorization from a user before performing restricted financial actions. ([source](https://ap2-protocol.org/glossary/index.md))
- [Mandate-to-Transaction Bindings](https://awesome-repositories.com/f/security-cryptography/mandate-to-transaction-bindings.md) — Converts open mandates into closed mandates by linking them to specific transactions using proof-of-possession keys. ([source](https://ap2-protocol.org/ap2/agent_authorization/index.md))
- [Payment-to-Checkout Bindings](https://awesome-repositories.com/f/security-cryptography/payment-to-checkout-bindings.md) — Links payment mandates to specific checkout sessions using cryptographic hashes to prevent authorization reuse. ([source](https://ap2-protocol.org/ap2/security_and_privacy_considerations/index.md))
- [Signature Verification Tools](https://awesome-repositories.com/f/security-cryptography/signature-verification-tools.md) — Validates digital signatures on payment mandates to ensure financial instructions were not manipulated during transit. ([source](https://ap2-protocol.org/ap2/security_and_privacy_considerations/index.md))
- [Transaction Authorization](https://awesome-repositories.com/f/security-cryptography/transaction-authorization.md) — Creates mandates that authorize financial transactions by defining acceptable merchants, items, and spending limits. ([source](https://ap2-protocol.org/ap2/checkout_mandate/index.md))
- [Agentic Commerce Mandates](https://awesome-repositories.com/f/security-cryptography/transaction-authorization/agentic-commerce-mandates.md) — Creates open mandates with defined constraints allowing agents to complete shopping tasks and execute payments. ([source](https://ap2-protocol.org/ap2/flows/index.md))
- [User-Signed Mandates](https://awesome-repositories.com/f/security-cryptography/transaction-authorization/user-signed-mandates.md) — Coordinates payment flows where users authenticate and sign checkout mandates via trusted surfaces to authorize purchases. ([source](https://ap2-protocol.org/ap2/flows/index.md))
- [Transaction-to-Agent Key Bindings](https://awesome-repositories.com/f/security-cryptography/transaction-to-agent-key-bindings.md) — Links mandates to specific agent keys to prevent the reuse of authorizations and stop double-spending. ([source](https://ap2-protocol.org/ap2/implementation_considerations/index.md))
- [Transaction Validation](https://awesome-repositories.com/f/security-cryptography/transaction-validation.md) — Validates closed mandates against user-defined spending and payee constraints to allow independent payment execution. ([source](https://ap2-protocol.org/ap2/specification/index.md))
- [Signed Action Receipts](https://awesome-repositories.com/f/security-cryptography/cryptography/cryptographic-primitives/signed-action-receipts.md) — Produces signed confirmations from verifiers indicating whether an action authorization was accepted or rejected. ([source](https://ap2-protocol.org/ap2/agent_authorization/index.md))
- [Privacy-Preserving Transactions](https://awesome-repositories.com/f/security-cryptography/privacy-preserving-transactions.md) — Implements selective disclosure of transaction data to protect user identity and payment details.
- [Consent-Based Access Controls](https://awesome-repositories.com/f/security-cryptography/sensitive-data-access-controls/consent-based-access-controls.md) — Displays mandate content on a trusted interface to capture explicit user consent and generate signed authorizations. ([source](https://ap2-protocol.org/ap2/implementation_considerations/index.md))
- [Payee and Temporal Constraints](https://awesome-repositories.com/f/security-cryptography/transaction-authorization/payee-and-temporal-constraints.md) — Sets constraints for transactions, including allowed payees, authorized payment instruments, and valid date windows. ([source](https://ap2-protocol.org/ap2/payment_mandate/index.md))
- [User Privacy Protection](https://awesome-repositories.com/f/security-cryptography/user-privacy-protection.md) — Implements a privacy layer using selective disclosure to share only minimum necessary transaction data with verifiers.

### Data & Databases

- [Budgetary Limits](https://awesome-repositories.com/f/data-databases/transaction-verification-services/cryptocurrency-payment-verifiers/per-request-payment-verifiers/payment-amount-verification/budgetary-limits.md) — Defines minimum and maximum currency ranges for single transactions or total budgets for recurring payments. ([source](https://ap2-protocol.org/ap2/payment_mandate/index.md))

### Software Engineering & Architecture

- [Transaction Constraint Schemas](https://awesome-repositories.com/f/software-engineering-architecture/transaction-constraint-schemas.md) — Specifies custom types, schemas, and evaluation algorithms to restrict agent behavior during financial transactions. ([source](https://ap2-protocol.org/ap2/specification/index.md))
