Integrar o QR Modelo Dinâmico
Para cobrar através de um QR Modelo Dinâmico, você precisará criar um pedido e, a partir da resposta, criar um código usando um serviço externo.
Fluxo do modelo
Assim é como o modelo dinâmico funciona:
- Um pedido com todos os dados de pagamento necessários é criado.
- A resposta incluirá uma string de dados com o atributo `qr_data'.
- Um código QR com o atributo recebido é gerado.
- Finalmente, o código QR é disponibilizado para que o cliente, à sua escolha, efetue o pagamento.
Essas etapas podem ser seguidas de duas maneiras: criar um pedido e criar um pedido associado a uma caixa. Vamos vê-los abaixo.
Criar um pedido
Antes de mais nada, gere a publicação do pedido. Assim que os dados forem enviados ao Mercado Pago, uma string com o padrão EMVCo será disponibilizada.
Para gerar um pedido, acesse nossa Referência de API e execute a curl encontrada na mesma. Na resposta, você receberá os dados necessários para criar o código QR.
Resposta
json
{
"qr_data": "00020101021243650016COM.MERCADOLIBRE02013063638f1192a-5fd1-4180-a180-8bcae3556bc35204000053039865802BR5925IZABEL AAAA DE MELO6007BARUERI62070503***63040B6D"
}
A resposta será uma string com o padrão EMVCo. Utilize o qr_data
para disponibilizar o código QR com um gerador ou através da sua aplicação.
Criar um pedido associado a uma caixa
Além da geração do código QR, você também tem a opção de criar e atribuir o mesmo pedido ao código QR fixo do caixa.
Execute a chamada à API detalhada nesta seção da nossa Referência de API para gerar o pedido e a atribuição ao caixa. Na resposta, você receberá o dado para criar o código QR e este ficará associado ao QR declarado.
Receba notificações de pedidos
As notificações IPN (Instant Payment Notification) são a forma automática de notificar a criação de novos pedidos e as atualizações de status das mesmas. Por exemplo, se eles foram aprovados, recusados ou se estão pendentes.
Vá para notificações IPN para aprender como implementá-los, especificamente notificações de merchant_order
, que são aqueles associados a pedidos. Você poderá identificar cada um deles através do parâmetro external_reference
.