Criar uma ordem de pagamento por QR Código
Caso de uso
O EC cria uma ordem de pagamento por QR Code e um link de pagamento. O envio da mensagem é realizado pelo EC.
Solicitação
Pagamento com QR Code
Exemplo de solicitação
Campos obrigatórios:
- Valor: 100,00€.
- Canal de difusão: URL.
. Campos recomendados:
- Referência do pedido: "myOrderId-1234".
- QR code: 250 px.
/pt-BR/rest/V4.0/api/kb/authentication.html
https://github.com/lyra/rest-php-examples/blob/master/www/minimalEmbeddedForm.php#L9-L44
https://api.lyra.com/api-payment/V4/Charge/CreatePaymentOrder
{ "amount": 10000, "currency": "EUR", "orderId": "myOrderId-1234", "channelOptions": { "channelType": "URL", "urlOptions": { "generateQRCode" : "true", "qrCodeSize" : 250 } } }
PARÂMETRO | REQUISITO | Descrição |
---|---|---|
Sim | Parâmetro para gerar um QR Code (Pode assumir o valortrue oufalse ). | |
Não | Configuração para definir o tamanho do QR Code em pixels (valor entre 50 e 400). O padrão é 100. |
Resposta
Exemplo de resposta
Recuperar do objetoResponder o valor de channelDetails.urlDetails.qrCode
correspondente a uma imagem codificada em base64.
(..) "channelDetails": { "channelType": "URL", (..) "urlDetails": { "qrCode": "iVBORw0KGgoAAAANSUhEUgAAAPoAAAD6AQAAAACgl2eQAAABZklEQVR4Xu2XUYrDMAxEBTlAjpSr+0g5gMGrp2lK4y79zoAHEWzl/UwlOW6M32oxZyYtQFqAtABpAdJzgB4od4ot06ndDWDdxnlUxAampBfQYm+Z2YaipXFTID32OPDrD2Qey5YAS3Y7I/NfyzkATHv6au9g7wZIvQbnXSbJCCBZvvKVLFftzACYtHYeUYPTNUT3Yj0f6DUsGToESHMg+AFpcDspWX4Wq1i0nx1A7DilTOk6C3e3aQHIZgEyO7fc84FR1xKqQ7/BTzYtAM1+ftmT2YrJ563lPIBWlYK8SjbZNABeWwb/gI+g8dwA2ewcv417b/Hfv8PDARnsdZRRrJPx/2w5CwCbuWRweHKklUcvQBLWdd26f9wtgI6xmpTrfpKN5wewJpltJrLXvdENKGtEvQpazhQYeMy3B4up5XyA64lTSD+Apcr0Opbr760ZEKiSLRj8r/F3AH5oAdICpAVIC5A8gD9G7EWe3QLtLAAAAABJRU5ErkJggg==", "_type": "V4/URLDetails" }, }
Insira esses dados em um rótulo img
.
<div> <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPoAAAD6AQAAAACgl2eQAAABZklEQVR4Xu2XUYrDMAxEBTlAjpSr+0g5gMGrp2lK4y79zoAHEWzl/UwlOW6M32oxZyYtQFqAtABpAdJzgB4od4ot06ndDWDdxnlUxAampBfQYm+Z2YaipXFTID32OPDrD2Qey5YAS3Y7I/NfyzkATHv6au9g7wZIvQbnXSbJCCBZvvKVLFftzACYtHYeUYPTNUT3Yj0f6DUsGToESHMg+AFpcDspWX4Wq1i0nx1A7DilTOk6C3e3aQHIZgEyO7fc84FR1xKqQ7/BTzYtAM1+ftmT2YrJ563lPIBWlYK8SjbZNABeWwb/gI+g8dwA2ewcv417b/Hfv8PDARnsdZRRrJPx/2w5CwCbuWRweHKklUcvQBLWdd26f9wtgI6xmpTrfpKN5wewJpltJrLXvdENKGtEvQpazhQYeMy3B4up5XyA64lTSD+Apcr0Opbr760ZEKiSLRj8r/F3AH5oAdICpAVIC5A8gD9G7EWe3QLtLAAAAABJRU5ErkJggg==" alt="QR Code"> </div>

O EC também pode enviar um link de pagamento através do campopaymentURL
do objetoAnswer.
Encontre a descrição e todos os outros campos em nosso playground:
Gerenciamento dos erros
Tableau des erreurs
Código | Descrição |
---|---|
Formato do campo amount inválido ou campo não enviado. | |
Formato do campo currency inválido ou campo não enviado. | |
Parâmetro strongAuthentication é inválido. | |
Parâmetro local é inválido. | |
Parâmetro taxRate é inválido. | |
Parâmetro taxAmount é inválido. | |
. | |
Moeda desconhecida. | |
Moeda não suportada pelo contrato. | |
A data de validade da ordem de pagamento não pode ser anterior à data de hoje nem ultrapassar um prazo de 90 dias. | |
Nenhum formulário de coleta de dados para esta loja. | |
O formulário de coleta de dados não pode ser usado com a moeda solicitada. |
Análise do resultado do pagamento
Para saber o resultado do pagamento, implemente o URL de notificação no final do pagamento (também conhecido como IPN).
- Informe apenas o URL da notificação na seção API REST (TEST ou PRODUCTION): Procedimento.
- Analisar o IPN: Procedimento.