Create agreement

An agreement is an authorization link that the buyer receives to allow the seller to access their Mercado Pago wallet to debit the payment.

POST

https://api.mercadopago.com/v2/wallet_connect/agreements
Request parameters
Header
Authorization
string

REQUIRED

Access Token obtained through the developer panel. Must be sent in all requests.
x-platform-id
string
Field intended for platforms or modules that offer Mercado Pago in their solutions.
Query
client.id
number
Unique ID that identifies a specific client.
Body
return_uri
string
URL that redirects the user back to the sellers site.
external_flow_id
string
Identifies the Seller side flow current state.
external_user
object
The external_user contains the data that the seller will need to use to indentify a User, so then it can continue with their own flow.
agreement_data
object
Contains information about actions the user must do and the amount to be paid.
Response parameters
agreement_id
string
Unique ID that identifies an agreement.
agreement_uri
string
Esto es el uri para redirigir al usuario al enlace de la billetera en el frontend. .
Errors

400Error

400

Bad-Request

Request
curl -X POST \
    'https://api.mercadopago.com/v2/wallet_connect/agreements?client.id=<CLIENT.ID>'\
    -H 'Content-Type: application/json' \
       -H 'Authorization: Bearer APP_USR-4*********782856-12*********f202ca494*********f0baa4bb3*********648' \
       -H 'x-platform-id: YOUR_PLATFORM_ID' \
    -d '{
  "return_uri": "https://www.mercadopago.com/",
  "external_flow_id": "EXTERNAL_FLOW_ID",
  "external_user": {
    "id": "usertest",
    "description": "Test account"
  },
  "agreement_data": {
    "validation_amount": 3.14,
    "description": "Test agreement"
  }
}'
Response
{
  "agreement_id": "22abcd1235ed497f945f755fcaba3c6c",
  "agreement_uri": "https://wwww.mercadopago.com.ar/v1/wallet_agreement/22abcd1235ed497f945f755fcaba3c6c"
}