Como integrar QR modelo dinâmico
Para cobrar através de um código QR modelo dinâmico, você deverá criar uma ordem e, a partir da resposta obtida, criar um código com algum serviço externo.
Fluxo do modelo
Veja o passo a passo do modelo dinâmico:
- Crie uma ordem com todas as informações necessárias para o pagamento.
- Na resposta, você vai encontrar uma string de dados sob o atributo
qr_data
. - Gere um código QR com o atributo recebido.
- Por último, disponibilize o código QR para o cliente como você preferir para ele realizar o pagamento.
Crie a ordem
Primeiro, gera a publicação de ordem. Assim que os dados sejam enviados para o Mercado Pago, ficará disponível uma cadeia de dados com padrão EMVCo.
Execute a seguinte chamada para a API a fim de gerar uma ordem. Na resposta, você vai receber o dado necessário para criar o código QR.
curl
curl -X POST \
https://api.mercadopago.com/instore/orders/qr/seller/collectors/USER_ID/pos/EXTERNAL_POS_ID/qrs \
-H 'Authorization: Bearer ACCESS_TOKEN' \
-d '{
"external_reference": "order-id-1234",
"title": "Title",
"description": "Mercado Pago",
"notification_url": "https://www.yourserver.com",
"expiration_date": "2023-08-22T16:34:56.559-04:00",
"total_amount": 1190,
"items": [
{
"sku_number": "KS955RUR",
"category": "FOOD",
"title": "Item1",
"description": "Item1 Mercado Pago",
"unit_price": 238,
"quantity": 5,
"unit_measure": "unit",
"total_amount": 1190
}
],
"sponsor": {
"id": 820480089
}
}'
Você pode obter mais informações nas Referências de API.
Resposta
json
{
"qr_data": "00020101021243650016COM.MERCADOLIBRE02013063638f1192a-5fd1-4180-a180-8bcae3556bc35204000053039865802BR5925IZABEL AAAA DE MELO6007BARUERI62070503***63040B6D"
}
A resposta será uma string com o padrão EMVCo. Use o qr_data
para disponibilizar o código QR com um gerador ou por seu aplicativo.
Associa a ordem a uma caixa
Além da geração do código QR, você também tem a opção de criar e atribuir a mesma ordem ao código QR fixo da caixa.
Execute a seguinte chamada para a API a fim de gerar uma ordem e a atribuição à caixa. Na resposta, você vai receber o dado necessário para criar o código QR.
curl
curl -X PUT \
https://api.mercadopago.com/instore/orders/qr/seller/collectors/USER_ID/pos/EXTERNAL_POS_ID/qrs \
-H 'Authorization: Bearer ACCESS_TOKEN' \
-d '{
"external_reference": "order-id-1234",
"title": "Title",
"description": "Mercado Pago",
"notification_url": "https://www.yourserver.com",
"expiration_date": "2023-08-22T16:34:56.559-04:00",
"total_amount": 1190,
"items": [
{
"sku_number": "KS955RUR",
"category": "FOOD",
"title": "Item1",
"description": "Item1 Mercado Pago",
"unit_price": 238,
"quantity": 5,
"unit_measure": "unit",
"total_amount": 1190
}
],
"sponsor": {
"id": 820480089
}
}'
Receba notificações de suas ordens
As notificações IPN (Instant Payment Notification) são a forma automática de aviso da criação de novas ordens e as atualizações de seus estados. Por exemplo, se foram aprovadas, recusadas ou se estiverem pendentes.
Implementa IPN de merchant_order
junto com uma busca do pedido por external_reference
como método de contingência.