Esse guia descreve como emitir um QR Code PIX de um pedido com divisão de pagamento.
Regras para criar um pedido com QR Code PIX
Para entender melhor as regras para a emissão de um QR Code para pagamento em PIX acesse a nossa documentação sobre como criar pedido com QR Code.
Para um pedido com divisão de pagamento em PIX, o QR Code poderá ter seu prazo máximo de expiração até às 23:59 do dia seguinte da emissão.
Regras do split de pagamentos do PagBank
O Split com PIX, ou pedido com divisão de um pagamento em PIX, seguirá as mesmas regras de pedidos com divisão de pagamentos para cartão de crédito e boleto bancário, em que já é possível criar pedido com divisão de pagamento e cancelar um pedido que foi dividido, respeitando as regras de divisão de pagamentos.
Documentações técnicas do split de pagamentos do PagBank
Pedido com divisão de pagamento
Criar um pedido com divisão de pagamento
Consultar um pedido com divisão de pagamentos
Consultar dados da divisão de pagamentos de um pedido
Cancelar um pedido com divisão de pagamento
Como emitir um QR Code PIX para um pedido com divisão de pagamento
Para uma divisão de pagamento em PIX, a cobrança será gerada após o pagamento do QR Code, e para isso, primeiro é necessário gerar um QR Code com as informações dessa divisão de pagamento. Ou seja, nesse caso, o objeto "splits" deverá ficar dentro do objeto "qr_codes" no momento da requisição.
Segue abaixo exemplo de pedido com divisão de pagamento para QR Code PIX:
curl --request POST \
--url https://sandbox.api.pagseguro.com/orders \
--header 'Authorization: Bearer <token>' \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--data '
{
"reference_id": "ex-00001",
"customer": {
"name": "Jose da Silva",
"email": "[email protected]",
"tax_id": "12345678909",
"phones": [
{
"country": "55",
"area": "11",
"number": "999999999",
"type": "MOBILE"
}
]
},
"items": [
{
"reference_id": "referencia do item",
"name": "nome do item",
"quantity": 1,
"unit_amount": 10000
}
],
"shipping": {
"address": {
"street": "Avenida Brigadeiro Faria Lima",
"number": "1384",
"complement": "apto 12",
"locality": "Pinheiros",
"city": "São Paulo",
"region_code": "SP",
"country": "BRA",
"postal_code": "01452002"
}
},
"qr_codes": [
{
"amount": {
"value": 10000
},
"expiration_date": "2023-10-18T20:15:59-03:00",
"splits": {
"method": "FIXED",
"receivers": [
{
"account": {
"id": "ACCO_12345"
},
"amount": {
"value": 6000
}
},
{
"account": {
"id": "ACCO_67890"
},
"amount": {
"value": 4000
}
}
]
}
}
],
"notification_urls": [
"https://meusite.com/notificacoes"
]
}'
{
"id": "ORDE_08DE032B-A890-4BB8-BBDE-CD88521871A0",
"reference_id": "reference-teste",
"created_at": "2023-10-18T14:45:49.656-03:00",
"customer": {
"name": "Jose da Silva",
"email": "[email protected]",
"tax_id": "12345678909",
"phones": [
{
"country": "55",
"area": "11",
"number": "999999999",
"type": "MOBILE"
}
]
},
"items": [
{
"reference_id": "referencia do item",
"name": "nome do item",
"quantity": 1,
"unit_amount": 10000
}
],
"shipping": {
"address": {
"street": "Avenida Brigadeiro Faria Lima",
"number": "1384",
"complement": "apto 12",
"locality": "Pinheiros",
"city": "São Paulo",
"region_code": "SP",
"country": "BRA",
"postal_code": "01452002"
}
},
"qr_codes": [
{
"id": "QRCO_CF532BDB-5FE9-4FB8-B849-6E55E06796F0",
"expiration_date": "2023-10-19T23:59:59.000-03:00",
"amount": {
"value": 10000
},
"text": "00020101021226860014br.gov.bcb.pix2564sandbox.api.pagseguro.com/pix/v2/CF532BDB-5FE9-4FB8-B849-6E55E06796FE27600016BR.COM.PAGSEGURO0136CF532BDB-5FE9-4FB8-B849-6E55E06796FE5204899953039865406100.005802BR5914TEsteste6009SAO PAULO62070503***63043755",
"arrangements": [
"PIX"
],
"links": [
{
"rel": "QRCODE.PNG",
"href": "https://sandbox.api.pagseguro.com/qrcode/QRCO_CF532BDB-5FE9-4FB8-B849-6E55E06796F0/png",
"media": "image/png",
"type": "GET"
},
{
"rel": "QRCODE.BASE64",
"href": "https://sandbox.api.pagseguro.com/qrcode/QRCO_CF532BDB-5FE9-4FB8-B849-6E55E06796F0/base64",
"media": "text/plain",
"type": "GET"
}
],
"splits": {
"method": "FIXED",
"receivers": [
{
"account": {
"id": "ACCO_12345"
},
"amount": {
"value": 6000
}
},
{
"account": {
"id": "ACCO_67890"
},
"amount": {
"value": 4000
}
}
]
}
}
],
"notification_urls": [
"https://meusite.com/notificacoes"
],
"links": [
{
"rel": "SELF",
"href": "https://sandbox.api.pagseguro.com/orders/ORDE_08DE032B-A890-4BB8-BBDE-CD88521871A0",
"media": "application/json",
"type": "GET"
},
{
"rel": "PAY",
"href": "https://sandbox.api.pagseguro.com/orders/ORDE_08DE032B-A890-4BB8-BBDE-CD88521871A0/pay",
"media": "application/json",
"type": "POST"
}
]
}
Quando o pedido é criado com sucesso, são retornados no response o id do pedido e o id do QR Code PIX.
Ao criar um pedido com QR Code, o PagBank disponibiliza duas formas para que o usuário possa consumí-lo através do código de texto e imagem. Essas informações estão presentes na resposta do endpoint Criar pedido. Para acessá-las utilize os seguintes parâmetros que estão contidos dentro do objeto qr_codes:
O parâmetro text para obter o código QR Code gerado.
O parâmetro media = image/png, que está contido no objeto qr_codes.links fornece a URL para acessar a imagem do QR Code, como demonstrado no exemplo a seguir:
curl --request GET \
--url https://sandbox.api.pagseguro.com/qrcode/QRCO_CF532BDB-5FE9-4FB8-B849-6E55E06796F0/png'
Pagamentos com PIX
O pagamento no ambiente de sandbox é realizado de forma automática pelo Simulador: https://dev.pagbank.uol.com.br/reference/simulador
Os pagamentos com PIX podem resultar em dois status distintos, sendo: paid ou waiting. Essas duas situações são cobertas pelo Simulador e descritas com mais detalhes abaixo:
Cenário de sucesso: A transação é criada com status= waiting. Por se tratar de um ambiente de simulação, segundos após a criação do pedido, ele é automaticamente considerado pago ou pago com delay de cinco minutos, conforme gatilho escolhido da tabela abaixo. Dessa forma, o status do pedido será alterado para status=paid.
A identificação pelo Simulador do cenário desejado é baseado no valor da transação enviada. A tabela abaixo descreve os valores que devem ser utilizados para cada um dos cenários de teste disponível.
Valor da transação | Cenário |
---|---|
Menor ou igual a R$ 100,00 | Pago instantaneamente |
Maior que R$ 100,00 e menor igual a R$ 200,00 | Pago com delay de 5 minutos |
Maior que R$ 200,00 e menor igual a R$ 300,00 | Aguardando Pagamento |
Maior que R$ 300 | Aguardando Pagamento |