This endpoint allows for the creation of a point of sale in a store to receive payments for products or services. Each point of sale will have a unique código QR linked to it. In case of success, the request will return a response with status 201.
POST
REQUIRED
REQUIRED
CONDITIONALLY REQUIRED
id parameter. Only digits are allowed. The maximum allCONDITIONALLY REQUIRED
external_id parameter. The maximum allowed limit is 60 characters. Required if store_id is not provideactive (the point of sale is enabled and available to receive payments) and inactive (the point of sale is disabled and cannot receive payments).400Bad request
bad_request
The request could not be processed. Verify that the body complies with the JSON schema, at least one of store_id or external_store_id is provided (if neither is sent, the error detail will be: one of 'store_id' or 'external_store_id' is required), the X-Idempotency-Key header is present and not empty, and the URL domain in the config is registered and active as an integrator.
idempotency_key_already_used
The X-Idempotency-Key value sent was already used in a previous request with a different payload. Generate a new unique value for each distinct operation.
bad_request_url_format
The value of config.qr.url does not meet the expected format. The URL must start with https://. Example error detail: config.qr.url does not meet the expected format. Please refer to the documentation for guidance.
invalid_external_store_id
The external_store_id sent does not match the store identified by store_id. When both are provided, they must refer to the same store.
401Unauthorized
unauthorized
The value sent as Access Token is incorrect or missing. Please check and try again with a valid Access Token.
404Not found
store_not_found
The store identified by store_id or external_store_id does not exist or does not belong to the Access Token user. Verify that the store exists and is associated with your account.
409Conflict
pos_already_exists
A point of sale with the same external_id already exists for this user. The external_id must be unique per point of sale per user.
conflict
The same request is already being processed by another concurrent call with the same X-Idempotency-Key. Wait a few seconds and retry with the same key and the same payload.
422Unprocessable entity
unprocessable_entity
The user identification could not be resolved from the Access Token. Verify that the token is valid and associated with an active Mercado Pago account.
424Failed dependency
internal_error_check_store_owner
A communication error occurred while validating store ownership. This is a dependency failure and not related to the request data. Please try again.
500Internal server error
internal_server_error
An unexpected error occurred on the server. This is a transient failure not related to the request data. Please try again after a few moments.
curl -X POST \
'https://api.mercadopago.com/v2/pos'\
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer APP_USR-1*********685765-12*********1b4332e5c*********e077d7679*********664' \
-H 'X-Idempotency-Key: 46f9c40f-b5a3-4edc-804a-9a37b3ca964a' \
-d '{
"name": "POS-001",
"store_id": "987654",
"external_id": "SUC001POS001",
"config": {
"qr": {
"operating_mode": "pdv",
"category": 621102,
"url": "https://integrator.example.com/qr/order"
}
}
}'{
"id": 1234567,
"name": "POS-001",
"status": "active",
"date_created": "2024-01-15T10:30:00Z",
"date_last_updated": "2024-03-01T08:00:00Z",
"user_id": 123456,
"store_id": "987654",
"external_id": "SUC001POS001",
"config": {
"qr": {
"operating_mode": "pdv"
}
},
"qr_response": {
"uuid": "0977011a027c4b4387e52069da4264deae2946af4dcc44ee98a8f1dbb376c8a1",
"image": "https://www.mercadopago.com/instore/merchant/qr/1234567/abc123.png",
"template_document": "https://www.mercadopago.com/instore/merchant/qr/1234567/template_abc123.pdf",
"template_image": "https://www.mercadopago.com/instore/merchant/qr/1234567/template_abc123.png",
"qr_code": "00020101021226940014BR.GOV.BCB.PIX2572pix-qr-h.mercadopago.com/instore/h/p/v2/abc123"
}
}