# acp

## Что такое ACP?

**ACP (Agentic Commerce Protocol)** — открытый протокол агентского чекаута от **OpenAI и Stripe** (поддержан Meta). Позволяет AI-агентам совершать покупки — корзина, доставка, оплата — через **Shared Payment Tokens** без раскрытия платёжных данных пользователя. Выпущен 29 сентября 2025 в бета-статусе; живые транзакции на Etsy, Shopify (1M+ транзакций) и Walmart.

## Зачем нужен ACP?

Без стандартного протокола агент не может пройти checkout автономно: ему нужны реальные данные карты пользователя или ручное подтверждение каждого платежа. ACP решает это через **Shared Payment Tokens**:

1. Пользователь один раз авторизует агента через OAuth 2.0 delegation.
2. Агент получает токен — не данные карты, а разрешение на транзакцию.
3. Stripe обрабатывает платёж, не раскрывая карточные данные агенту.

Ключевые возможности ACP:

| Возможность | Описание |
|-------------|----------|
| **Agentic checkout** | Корзина, доставка, платёж в одном агентском флоу |
| **Shared Payment Tokens** | Оплата без раскрытия платёжных данных |
| **OAuth 2.0 delegation** | Пользователь явно делегирует права агенту |
| **MCP-транспорт** | Нативная интеграция с [MCP-серверами](/glossary/mcp-server-card) |

## Как реализовать ACP?

ACP использует нативный MCP-транспорт, что позволяет встроить checkout в существующие MCP-серверы:

```json
{
  "payments": {
    "acp": "https://api.example.com/acp"
  }
}
```

Или через Link-заголовок:

```http
Link: <https://api.example.com/acp>; rel="acp-endpoint"
```

Полный флоу: агент получает Shared Payment Token через OAuth 2.0 → формирует корзину → вызывает ACP checkout endpoint → Stripe сеттлит транзакцию. Документация для продавцов: `docs.stripe.com/agentic-commerce/acp`.

## Как мы проверяем ACP?

Проверка ACP в сканере **информационная** (не влияет на основной счёт). Сканер проверяет декларацию поддержки протокола двумя способами:

1. GET `/.well-known/ai-agent.json` → поле `payments.acp`
2. HEAD `/` → Link-заголовок с `rel="acp-endpoint"`

Реальный checkout-флоу, OAuth delegation и сеттлмент через Stripe не тестируются. При обнаружении декларации — `pass`, при отсутствии — `fail`.

[← Все термины глоссария](/glossary)
