You can integrate with the Agentic Commerce Protocol (ACP) so that you can let shoppers make purchases from you, using AI agents. For example, a shopper can prompt a ChatGPT-based AI agent to buy goods from your online shop. Adyen has integrated with ACP, so that you can use Adyen as a payment provider with your ACP integration.
Requirements
| Requirement | Description |
|---|---|
| Integration type | An online payments integration. |
| Limitations | The following are not supported:
|
| Setup steps | Before you begin:
|
How it works
- When the shopper prompts their agent to make a purchase from you, OpenAI makes a request to your
/checkout_sessionsendpoint. - Your server returns a response that specifies Adyen as the payment provider.
- OpenAI makes a request to your
/checkout_sessions/{checkout_session_id}/completeendpoint, including an ACP token that you use for the payment. - You make a request to Adyen to authorize the payment, including the ACP token.
Return Adyen as a payment provider
When the shopper prompts an AI agent to make a purchase from you, your /checkout_sessions response must specify Adyen as the payment provider, in addition to other required and optional parameters you want to include.
Include the following in your response:
| Parameter | Description |
|---|---|
payment_provider.provider |
adyen |
payment_provider.supported_payment_methods |
An array of support payment methods Example: card |
Get the ACP token for the payment
When the AI agent confirms the intention to pay, OpenAPI makes a request to your /checkout_sessions/{checkout_session_id}/complete endpoint, the request specifies Adyen as the payment provider and includes an ACP token, in addition to other parameters that OpenAI sends.
Include the following in your response:
| Parameter | Description |
|---|---|
payment_provider.provider |
adyen |
payment_provider.token |
Your ACP token for the payment. Example: FKSPNCQ8HXSKGK82 |
Authorize a payment with the ACP token
After you receive the ACP token from OpenAI, you must make a request to Adyen to authorize the payment.
You can make a request to one of the following endpoints:
- Checkout API (recommended): /payments
- Classic API:
/authorise
The response includes:
| Parameter | Description |
|---|---|
pspReference |
Our unique identifier for the transaction. |
resultCode |
Indicates the current status of the payment. |
Get the payment outcome
After completing the payment flow, you get the payment status synchronously from the API response. Use the
resultCode
to determine the outcome of the payment.
You additionally get the outcome of each payment asynchronously, in an AUTHORISATION webhook. Use the merchantReference from the webhook to match it to your order reference.
For a successful payment, the event contains success: true.