Criar e configurar uma order de pagamento
Server-Side
Uma order é o recurso central da API de Orders que unifica o ciclo de vida do pagamento. Ao criar uma order para o Checkout Pro, você define os detalhes da transação, incluindo produtos, preços e dados do comprador, e obtém um checkout_url para redirecionar o comprador ao formulário de pagamento do Mercado Pago.
A partir da sua criação, o id da order será o identificador único que você utilizará para consultar, cancelar ou reembolsar a transação ao longo de todo o fluxo.
Criar a order
Para criar uma order, envie um POST com seu Access Token de teste e os parâmetros necessários ao endpoint Criar orderAPI e execute a requisição. Crie uma order para cada fluxo de pagamento ou transação que quiser iniciar.
Inclua sempre o header X-Idempotency-Key com um UUID único por tentativa para evitar a criação de orders duplicadas.
| Parâmetro | Tipo | Obrigatório | Descrição |
type | string | Sim | Tipo de order. Para Checkout Pro, o único valor possível é online. |
total_amount | string | Sim | Valor total a ser pago. Deve ser igual à soma de items[].unit_price × items[].quantity. |
external_reference | string | Não | Referência externa da order para identificação de origem. |
processing_mode | string | Sim | Modo de processamento. Para Checkout Pro, o único valor possível é manual. |
capture_mode | string | Não | Modo de captura. Use automatic para resultado imediato ou automatic_async para fluxos assíncronos. |
marketplace_fee | string | Não | Taxa cobrada pelo marketplace, creditada na conta do marketplace. |
expiration_time | string | Não | Duração de disponibilidade da order em formato ISO 8601 (ex: P1D). |
payer | object | Não | Informações do comprador. O campo payer.email é obrigatório. |
items | array | Não | Lista de itens a serem pagos. Os campos title, quantity e unit_price são obrigatórios por item. |
config | object | Não | Configurações da order: URLs de retorno, restrições de meios de pagamento e comportamento do checkout. |
additional_info | object | Não | Dados complementares para prevenção de fraude. Obrigatório para indústrias verticais como viagens. |
description | string | Não | Descrição do produto ou serviço. |
curl
curl -X POST \ -H 'accept: application/json' \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer ENV_ACCESS_TOKEN' \ -H 'X-Idempotency-Key: UNIQUE_KEY' \ 'https://api.mercadopago.com/v1/orders' \ -d '{ "type": "online", "processing_mode": "manual", "total_amount": "1000.00", "external_reference": "order_pro_123", "payer": { "email": "buyer@email.com" }, "items": [ { "title": "Meu produto", "unit_price": "1000.00", "quantity": 1, "unit_measure": "unit", "total_amount": "1000.00" } ] }'
Obter a URL de redirecionamento ("checkout_url")
Ao executar a requisição, a resposta conterá o id da order e o campo checkout_url com a URL de redirecionamento para o formulário de pagamento do Mercado Pago. Redirecione o comprador para esse endereço para que ele conclua a transação. Guarde o id da order para utilizá-lo em operações futuras, como consultas de status, cancelamentos e reembolsos. Os valores de country_code e currency variam conforme o país da conta do vendedor.
json
{ "id": "ORDTST01KS5AJ6HTK2HRQ3XJ3C2JCKP9", "type": "online", "processing_mode": "manual", "status": "created", "status_detail": "created", "capture_mode": "automatic_async", "external_reference": "order_pro_123", "description": "Meu produto", "total_amount": "1000.00", "total_paid_amount": "0.00", "checkout_url": "https://www.mercadopago.com.ar/checkout/v1/redirect?order_id=ORDTST01KS5AJ6HTK2HRQ3XJ3C2JCKP9", "client_token": "eyJhbGciOiJSUzI1NiIs...", "expiration_time": "P1D", "country_code": "ARG", "user_id": "1858095454", "currency": "ARS", "created_date": "2026-05-21T13:10:56.845Z", "last_updated_date": "2026-05-21T13:10:56.845Z", "integration_data": { "application_id": "8772548647196351" }, "config": { "online": { "retries": { "allowed": false } }, "payment_method": {} }, "items": [ { "title": "Meu produto", "unit_price": "1000.00", "quantity": 1, "unit_measure": "unit", "total_amount": "1000.00" } ] }
Veja na tabela abaixo a descrição dos principais campos retornados na resposta.
| Campo | Tipo | Descrição | Exemplo |
id | string | Identificador único da order, gerado automaticamente pelo Mercado Pago. | "ORDTST01KS5AJ6HTK2HRQ3XJ3C2JCKP9" |
type | string | Tipo de order. Para Checkout Pro, sempre online. | "online" |
processing_mode | string | Modo de processamento da order. Para Checkout Pro, sempre manual. | "manual" |
status | string | Status atual da order. Ao ser criada, retorna created. | "created" |
status_detail | string | Detalhe do status da order. | "created" |
capture_mode | string | Modo de captura do pagamento. | "automatic_async" |
external_reference | string | Referência externa da order definida no momento da criação. | "order_pro_123" |
description | string | Descrição do produto ou serviço. | "Meu produto" |
total_amount | string | Valor total da order. | "1000.00" |
total_paid_amount | string | Valor total pago até o momento. | "0.00" |
checkout_url | string | URL para redirecionar o comprador ao formulário de pagamento do Mercado Pago. | "https://www.mercadopago.com.ar/checkout/..." |
client_token | string | Token do cliente gerado para uso no SDK frontend. | "eyJhbGci..." |
expiration_time | string | Duração de disponibilidade da order em formato ISO 8601. | "P1D" |
country_code | string | Código do país da conta do vendedor. | "ARG" |
user_id | string | Identificador do usuário vendedor no Mercado Pago. | "1858095454" |
currency | string | Moeda da transação, conforme o país do vendedor. | "ARS" |
created_date | string | Data e hora de criação da order em formato ISO 8601. | "2026-05-21T13:10:56.845Z" |
last_updated_date | string | Data e hora da última atualização da order em formato ISO 8601. | "2026-05-21T13:10:56.845Z" |
integration_data | object | Dados da integração, incluindo o application_id. | {"application_id": "8772548647196351"} |
config | object | Configurações da order aplicadas, incluindo comportamento de retentativas e meios de pagamento. | — |
items | array | Lista de itens da order. | — |
Veja na tabela abaixo a descrição dos principais campos retornados na resposta.
| Campo | Tipo | Descrição | Exemplo |
id | string | Identificador único da order, gerado automaticamente pelo Mercado Pago. | "ORDTST01KS5AJ6HTK2HRQ3XJ3C2JCKP9" |
type | string | Tipo de order. Para Checkout Pro, sempre online. | "online" |
processing_mode | string | Modo de processamento da order. Para Checkout Pro, sempre manual. | "manual" |
status | string | Status atual da order. Ao ser criada, retorna created. | "created" |
status_detail | string | Detalhe do status da order. | "created" |
capture_mode | string | Modo de captura do pagamento. | "automatic_async" |
external_reference | string | Referência externa da order definida no momento da criação. | "order_pro_123" |
description | string | Descrição do produto ou serviço. | "Meu produto" |
total_amount | string | Valor total da order. | "1000.00" |
total_paid_amount | string | Valor total pago até o momento. | "0.00" |
checkout_url | string | URL para redirecionar o comprador ao formulário de pagamento do Mercado Pago. | "https://www.mercadopago.com.ar/checkout/..." |
client_token | string | Token do cliente gerado para uso no SDK frontend. | "eyJhbGci..." |
expiration_time | string | Duração de disponibilidade da order em formato ISO 8601. | "P1D" |
country_code | string | Código do país da conta do vendedor. | "ARG" |
user_id | string | Identificador do usuário vendedor no Mercado Pago. | "1858095454" |
currency | string | Moeda da transação, conforme o país do vendedor. | "ARS" |
created_date | string | Data e hora de criação da order em formato ISO 8601. | "2026-05-21T13:10:56.845Z" |
last_updated_date | string | Data e hora da última atualização da order em formato ISO 8601. | "2026-05-21T13:10:56.845Z" |
integration_data | object | Dados da integração, incluindo o application_id. | {"application_id": "8772548647196351"} |
config | object | Configurações da order aplicadas, incluindo comportamento de retentativas e meios de pagamento. | — |
items | array | Lista de itens da order. | — |
Com o checkout_url disponível, o próximo passo é configurar o frontend para redirecionar o comprador.
Gerenciar orders
Após criar a order, você pode consultar seu status ou buscá-la a qualquer momento utilizando o id retornado na resposta. Para isso, utilize os seguintes endpoints:
Escolher o tipo de integração
Escolha o tipo de integração que melhor atenda às suas necessidades, seja para um site ou um aplicativo móvel, e siga os passos detalhados para completar a integração do Checkout Pro.
