Mudanças

Ir para: navegação, pesquisa

Manuais:UniNFe/EnviandoXMLBoleto

13 649 bytes adicionados, Sexta-feira às 10h50min
sem sumário de edição
==<font color=#1E90FF>Registrando o boleto pelo UniNFe</font>==
Para conseguir fazer o registro de boleto, você ERP deve gerar o XML conforme [https://www.unimake.com.br/uninfe/modelos.php?p=eBoleto exemplo em nosso site] na [[Manuais:UniNFe/Configurando o UniNFe/Configuracoes Empresas/ConfigAbaPastas/Pasta de envio|pasta de envio]] com o nome e formato a seguir:
----
===<font color=#1E90FF>Estrutura do XML de enviodo registro</font>===
Para ficar mais fácil o entendimento da estrutura, vamos separar por tópicos.
<div style="text-align: center;">Valores do tipo de juros</div>
** A tag '''<Valor>''' é o valor dos juros. Você ERP pode informar como porcentagem ou valor de acordo com o tipo configurado anteriormente;
** A tag '''<LinhaDigitavel>''' informa qual é a linha digitável do boleto em questão;
** O grupo '''<Mensagens>''' auxilia na demonstração da mensagem de instrução para o pagador ou caixa sobre os juros, mora, entre outras informações importantes do boleto;
<div style="text-align: center;">Valores do tipo de multa</div>
** A tag '''<Valor>''' é o valor da multa. Você ERP pode informar como porcentagem ou valor de acordo com o tipo configurado anteriormente;
** A tag '''<NumeroDiasLimiteRecebimento>''' indica o limite de dias que o boleto pode ser recebido;
** A tag '''<NumeroNaEmpresa>''' é a identificação do título na empresa (seu número);
----
===<font color=#1E90FF>XML de retorno do enviodo registro: O que fazer?</font>===
Para verificar se o boleto foi registrado, deve analisar o XML de retorno que será gerado na [[Manuais:UniNFe/Configurando o UniNFe/Configuracoes Empresas/ConfigAbaPastas/Pasta de retorno|pasta de retorno]] com o nome a seguir:
** A tag '''<PdfContentBase64>''' é o campo em base64 do boleto registrado;
** A tag '''<PdfPath>''' é o caminho onde está o PDF do boleto;
** A tag '''<UniNFeVersao>''' indica a versão do UniNFe que foi utilizada.
 
----
 
==<font color=#1E90FF>Consultando o boleto pelo UniNFe</font>==
 
Após o registro do boleto, ERP deve consultar ele para saber se foi pago ou não. Para isso, ERP deve usar o XML conforme [https://www.unimake.com.br/uninfe/modelos.php?p=eBoleto exemplo em nosso site] na [[Manuais:UniNFe/Configurando o UniNFe/Configuracoes Empresas/ConfigAbaPastas/Pasta de envio|pasta de envio]] com o nome e formato a seguir:
 
 
0000000000000-BoletoConsultar.xml
 
{| class="wikitable"
|-
||0000000000000
||Conteúdo livre
|-
| style="width: 120px;"|-BoletoConsultar.xml
||Conteúdo fixo. Sempre será "-BoletoConsultar.xml"
|}
 
O nome do arquivo de retorno é o mesmo do envio, mudando somente a extensão (final) do mesmo, conforme abaixo:
 
0000000000000-ret-BoletoConsultar.xml (''se tudo ocorreu bem'')
 
ou
 
0000000000000-ret-BoletoConsultar.err (''se houve algum erro'')
 
----
 
===<font color=#1E90FF>Estrutura do XML de envio da consulta</font>===
 
O XML é bem pequeno comparado ao XML de registro, vamos conferir!
 
<pre>
<?xml version="1.0" encoding="UTF-8"?>
<BoletoConsultar versao="1.00">
<ConfigurationId>ZCKWGQ55LTDXKYYC</ConfigurationId>
<DataEmissaoInicial>2025-03-25</DataEmissaoInicial>
<DataEmissaoFinal>2025-03-25</DataEmissaoFinal>
<NumerosNoBanco>
<!--Pode repetir até 50 vezes-->
<NumeroNoBanco>-2147483641</NumeroNoBanco>
<NumeroNoBanco>-2147483642</NumeroNoBanco>
<NumeroNoBanco>-2147483643</NumeroNoBanco>
<NumeroNoBanco>-2147483644</NumeroNoBanco>
</NumerosNoBanco>
<PageNumber>0</PageNumber>
<PageSize>0</PageSize>
<Testing>true</Testing>
<UseHomologServer>true</UseHomologServer>
</BoletoConsultar>
</pre>
 
* <font color=#1E90FF>'''Legenda das tags:'''</font>
** A tag '''<ConfigurationID>''' é uma informação fornecida pela [unimake.com.br Unimake Software];
** A tag '''<DataEmissaoInicial>''' é a data de emissão inicial do boleto para realizar a consulta. Não é obrigatória se informado a tag <NumerosNoBanco>;
** A tag '''<DataEmissaoFinal>''' é a data de emissão final do boleto para realizar a consulta. Não é obrigatória se informado a tag <NumerosNoBanco>;
** O grupo '''<NumerosNoBanco>''' são números dos boletos no banco. Não é obrigatória se informado a data de emissão final/inicial;
** A tag '''<PageNumber>''' é o número da página que seja consultar;
** A tag '''<PageSize>''' é o tamanho da página, ou seja, quantidade de registro por página que deseja ter como retorno;
** A tag '''<Testing>''' define o tipo de ambiente para emissão do boleto. Se true, será usado o ambiente de teste;
** A tag '''<UseHomologServer>''' não é obrigatória, o valor dela por padrão é false. Só utilize quando é necessário fazer testes para possibilitar DEBUG do lado do eBank, naturalmente isso só pode ocorrer se um desenvolvedor do eBank solicitar esta tag no XML para facilitar depuração de código.
 
----
 
===<font color=#1E90FF>XML de retorno do envio da consulta: O que fazer?</font>===
 
Para saber se o boleto foi pago, cancelado, entre outros status, ERP deve analisar o XML de retorno que será gerado na [[Manuais:UniNFe/Configurando o UniNFe/Configuracoes Empresas/ConfigAbaPastas/Pasta de retorno|pasta de retorno]] com o nome a seguir:
 
0000000000000-ret-BoletoConsultar.xml
 
E sua estrutura é a seguinte:
 
<pre>
<?xml version="1.0" encoding="utf-8"?>
<BoletoConsultarResponse>
<Status>0</Status>
<Motivo>Boletos encontrados</Motivo>
<BoletoResponse>
<CodigoBarras/>
<DataEmissao>20-09-2018</DataEmissao>
<DataLiquidacao/>
<DataVencimento>20-09-2018</DataVencimento>
<NumeroNaEmpresa>1235512</NumeroNaEmpresa>
<NumeroNoBanco>-2147483648</NumeroNoBanco>
<Pagador>
<Codigo/>
<Nome/>
<Inscricao/>
<Telefone/>
<Email>pagador@dominio.com.br</Email>
<TipoInscricao>0</TipoInscricao>
<Endereco>
<Logradouro>Rua 87 Quadra 1 Lote 1 casa 1</Logradouro>
<Numero/>
<Complemento/>
<Bairro>Santa Rosa</Bairro>
<Cidade>Luziânia</Cidade>
<UF>DF</UF>
<CEP>72320000</CEP>
</Endereco>
</Pagador>
<PdfContent>
<Content/>
<Success>False</Success>
<Message/>
</PdfContent>
<QrCodeContent>
<Text>00020101021226950014br.gov.bcb.pix2573pix.sicoob.com.br/qr/payload/v2/cobv/e736df1b-1389-4b96-a070-c8dddac768de5204000053039865802BR5924JULIO PEREIRA DE OLIVEIRA6008Brasilia62070503***630435A3</Text>
<Image/>
<Success>False</Success>
</QrCodeContent>
<Situacao>9</Situacao>
<TipoLiquidacao>0</TipoLiquidacao>
<Valor>156.23</Valor>
<ValorAbatimento>0.00</ValorAbatimento>
<ValorDesconto>0.00</ValorDesconto>
<ValorJuros>0.00</ValorJuros>
<ValorLiquidado>156.23</ValorLiquidado>
<ValorMulta>0.00</ValorMulta>
</BoletoResponse>
<BoletoResponse>
<CodigoBarras/>
<DataEmissao>20-09-2018</DataEmissao>
<DataLiquidacao/>
<DataVencimento>20-09-2018</DataVencimento>
<NumeroNaEmpresa>1235512</NumeroNaEmpresa>
<NumeroNoBanco>-2147483648</NumeroNoBanco>
<Pagador>
<Codigo/>
<Nome/>
<Inscricao/>
<Telefone/>
<Email>pagador@dominio.com.br</Email>
<TipoInscricao>0</TipoInscricao>
<Endereco>
<Logradouro>Rua 87 Quadra 1 Lote 1 casa 1</Logradouro>
<Numero/>
<Complemento/>
<Bairro>Santa Rosa</Bairro>
<Cidade>Luziânia</Cidade>
<UF>DF</UF>
<CEP>72320000</CEP>
</Endereco>
</Pagador>
<PdfContent>
<Content/>
<Success>False</Success>
<Message/>
</PdfContent>
<QrCodeContent>
<Text>00020101021226950014br.gov.bcb.pix2573pix.sicoob.com.br/qr/payload/v2/cobv/e736df1b-1389-4b96-a070-c8dddac768de5204000053039865802BR5924JULIO PEREIRA DE OLIVEIRA6008Brasilia62070503***630435A3</Text>
<Image/>
<Success>False</Success>
</QrCodeContent>
<Situacao>9</Situacao>
<TipoLiquidacao>0</TipoLiquidacao>
<Valor>156.23</Valor>
<ValorAbatimento>0.00</ValorAbatimento>
<ValorDesconto>0.00</ValorDesconto>
<ValorJuros>0.00</ValorJuros>
<ValorLiquidado>156.23</ValorLiquidado>
<ValorMulta>0.00</ValorMulta>
</BoletoResponse>
<UniNFeVersao>5.1.0.136 | 25-03-2025 - 15:40:45</UniNFeVersao>
</BoletoConsultarResponse>
</pre>
 
* <font color=#1E90FF>'''Legenda das tags:'''</font>
** A tag '''<Status>''' indicando o status da requisição;
** A tag '''<Motivo>''' com a descrição do status da requisição;
** O grupo '''<BoletoResponse>''' com as informações do boleto encontrado:
*** A tag '''<CodigoBarras>''' indica o código de barras do boleto retornado;
*** A tag '''<DataEmissao>''' é a data de emissão do boleto;
*** A tag '''<DataLiquidacao>''' é a data em que o boleto foi liquidado;
*** A tag '''<DataVencimento>''' é a data de vencimento do boleto;
*** A tag '''<NumeroNaEmpresa>''' é o identificador do título na empresa (seu número);
*** A tag '''<NumeroNoBanco>''' é o número do documento no banco (nosso número);
*** O grupo '''<Pagador>''' identifica o pagador do boleto como nome, telefone, email, endereço, entre outros;
*** O grupo '''<PdfContent>''' reúne informações do PDF do boleto:
**** A tag '''<Content>''' terá o base64 do PDF do boleto;
**** A tag '''<Success>''' é um campo booleano em que caso seja verdadeiro o PDF foi gerado com sucesso. Se falso, verifique a tag '''<Message>''';
**** A tag '''<Message>''' é a mensagem de erro caso '''<Success>''' for falso;
*** O grupo '''<QrCodeContent>''' reúne informações do QrCode do boleto:
**** A tag '''<Text>''' é o texto devolvido pelo banco ou mensagem de erro caso o QrCode não seja gerado corretamente;
**** A tag '''<Image>''' é a imagem PNG 512x512 em base64;
**** A tag '''<Success>''' é um campo booleano em que caso seja verdadeiro o QrCode foi gerado com sucesso. Se falso, verifique a tag '''<Message>''';
*** A tag '''<Situacao>''' indica qual a situação do boleto sendo:
 
{|class="wikitable" style="margin-left: 70px;"
! scope="row"|'''Literal'''||'''Numérico'''
|-
||Desconhecida||<div style="text-align: center;">0</div>
|-
||EmCarteira||<div style="text-align: center;">1</div>
|-
||Liquidado||<div style="text-align: center;">2</div>
|-
||BaixadoPorSolicitacao||<div style="text-align: center;">3</div>
|-
||BaixadoPorProtesto||<div style="text-align: center;">4</div>
|-
||EmCartorio||<div style="text-align: center;">5</div>
|-
||AguardandoEntradaEmCartorio||<div style="text-align: center;">6</div>
|-
||Rejeitado||<div style="text-align: center;">7</div>
|-
||Cancelado||<div style="text-align: center;">8</div>
|-
||Emitido||<div style="text-align: center;">9</div>
|-
||Confirmado||<div style="text-align: center;">10</div>
|-
||Bloqueado||<div style="text-align: center;">11</div>
|-
||Removido||<div style="text-align: center;">12</div>
|-
||ConfirmadoPeloBeneficiario||<div style="text-align: center;">13</div>
|-
||ProtestadoEAguardandoBaixa||<div style="text-align: center;">14</div>
|-
||AguardandoLiquidacao||<div style="text-align: center;">15</div>
|-
||PagoParcialmente||<div style="text-align: center;">16</div>
|-
||Agendado||<div style="text-align: center;">17</div>
|-
||TituloComPendenciaEmCartorio||<div style="text-align: center;">18</div>
|-
||BaixadoPorDuplicidadeDeRegistro||<div style="text-align: center;">19</div>
|-
||BaixadoPorDecursoDePrazo||<div style="text-align: center;">20</div>
|-
||BaixadoPorMedidaJudicial||<div style="text-align: center;">21</div>
|-
||Devolvido||<div style="text-align: center;">22</div>
|-
||Outros||<div style="text-align: center;">32767</div>
|}
 
*** A tag '''<TipoLiquidacao>''' indica o tipo da liquidação do boleto, sendo um dos valores abaixo:
{|class="wikitable" style="margin-left: 70px;"
! scope="row"|'''Literal'''||'''Numérico'''
|-
||Desconhecido||<div style="text-align: center;">0</div>
|-
||LiquidadoMasNaoIdentificado||<div style="text-align: center;">1</div>
|-
||LiquidadoViaPIX||<div style="text-align: center;">2</div>
|-
||LiquidadoViaDebitoEmConta||<div style="text-align: center;">3</div>
|-
||LiquidadoViaCheque||<div style="text-align: center;">4</div>
|-
||LiquidadoViaRemessa||<div style="text-align: center;">5</div>
|-
||LiquidadoViaCartorio||<div style="text-align: center;">6</div>
|-
||LiquidadoNoBancoEmissor||<div style="text-align: center;">7</div>
|-
||LiquidadoEmBancoDiferente||<div style="text-align: center;">8</div>
|}
 
*** A tag '''<Valor>''' é o valor total do boleto;
*** A tag '''<ValorAbatimento>''' é o valor de abatimento do boleto;
*** A tag '''<ValorDesconto>''' é o valor do desconto aplicado no momento do pagamento do boleto;
*** A tag '''<ValorJuros>''' é o valor dos juros aplicados no momento do pagamento do boleto;
*** A tag '''<ValorLiquidado>''' é o valor realmente pago do boleto;
*** A tag '''<ValorMulta>''' é o valor de multa, podendo não existir.
 
----
 
==<font color=#1E90FF>Cancelando o boleto pelo UniNFe</font>==
 
Após o registro do boleto, ERP pode fazer o cancelamento do boleto. Para isso, ERP deve usar o XML conforme [https://www.unimake.com.br/uninfe/modelos.php?p=eBoleto exemplo em nosso site] na [[Manuais:UniNFe/Configurando o UniNFe/Configuracoes Empresas/ConfigAbaPastas/Pasta de envio|pasta de envio]] com o nome e formato a seguir:
 
 
0000000000000-BoletoCancelar.xml
 
{| class="wikitable"
|-
||0000000000000
||Conteúdo livre
|-
| style="width: 120px;"|-BoletoCancelar.xml
||Conteúdo fixo. Sempre será "-BoletoCancelar.xml"
|}
 
O nome do arquivo de retorno é o mesmo do envio, mudando somente a extensão (final) do mesmo, conforme abaixo:
 
0000000000000-ret-BoletoCancelar.xml (''se tudo ocorreu bem'')
 
ou
 
0000000000000-ret-BoletoCancelar.err (''se houve algum erro'')
 
----
 
===<font color=#1E90FF>Estrutura do XML de envio do cancelamento</font>===
 
O XML de cancelamento do boleto é bem simples, vamos conferir!
 
<pre>
<?xml version="1.0" encoding="UTF-8"?>
<BoletoCancelar versao="1.00">
<ConfigurationId>ZCKWGQ55LTDXKYYC</ConfigurationId>
<NumeroNoBanco>-2147483648</NumeroNoBanco>
<Testing>true</Testing>
<UseHomologServer>true</UseHomologServer>
</BoletoCancelar>
</pre>
 
* <font color=#1E90FF>'''Legenda das tags:'''</font>
** A tag '''<ConfigurationId>''' é o ID da configuração da conta corrente no eBank, sendo um número fornecido pela Unimake e <span style="color: red">'''tag obrigatória'''</span>;;
** A tag '''<NumeroNoBanco>''' é o número do documento no banco (nosso número), <span style="color: red">'''sendo uma tag obrigatória'''</span>;
** A tag '''<Testing>''' define o tipo de ambiente para emissão do boleto. Se true, será usado o ambiente de teste;
** A tag '''<UseHomologServer>''' não é obrigatória, o valor dela por padrão é false. Só utilize quando é necessário fazer testes para possibilitar DEBUG do lado do eBank, naturalmente isso só pode ocorrer se um desenvolvedor do eBank solicitar esta tag no XML para facilitar depuração de código.
 
----
 
===<font color=#1E90FF>XML de retorno do envio do cancelamento: O que fazer?</font>===
 
Para saber se o boleto foi cancelado, ERP deve analisar o XML de retorno que será gerado na [[Manuais:UniNFe/Configurando o UniNFe/Configuracoes Empresas/ConfigAbaPastas/Pasta de retorno|pasta de retorno]] com o nome a seguir:
 
0000000000000-ret-BoletoCancelar.xml
 
E sua estrutura é a seguinte:
 
<pre>
<?xml version="1.0" encoding="utf-8"?>
<BoletoCancelarResponse>
<Status>0</Status>
<Motivo>Boleto cancelado com sucesso.</Motivo>
<UniNFeVersao>5.1.0.136 | 25-03-2025 - 11:08:16</UniNFeVersao>
</BoletoCancelarResponse>
 
</pre>
 
* <font color=#1E90FF>'''Legenda das tags:'''</font>
** A tag '''<Status>''' indica o status da requisição;
** A tag '''<Motivo>''' é a descrição do status da requisição;
** A tag '''<UniNFeVersao>''' indica a versão do UniNFe que foi utilizada.
1 321
edições

Menu de navegação