leandroferreirama/pagamento-cnab-240-retorno

v1.2.0 2022-08-26 19:05 UTC

This package is auto-updated.

Last update: 2024-09-26 23:42:38 UTC


README

这是符合CNAB240标准的文件读取器,该包返回一个包含格式化文件数据的数组,抽象出文件读取过程。

兼容银行

  1. Bradesco
  2. Itaú

支持的段

  1. A(同一银行转账、TED和PIX)
  2. J(收款凭证)

如何使用

HTML

该组件可以接受读取一个文件或一个文件数组。

<!doctype html>
<html lang="pt-br">
<head>
    <meta charset="UTF-8">
    <meta name="viewport"
          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Upload de arquivo</title>
</head>
<body>
    <form method="post" enctype="multipart/form-data">
        <input type="file" name="arquivo[]"multiple>
        <button type="submit">Enviar</button>
    </form>
</body>
</html>

PHP

在此示例中,我仅将打印选项传递出去。

try{
    $leitorArquivo = new \Leandroferreirama\PagamentoCnab240Retorno\Aplicacao\LeitorRetorno();
    $listaLotes = $leitorArquivo->recepcionarArquivo($_FILES['arquivo']);

    if(! is_null($listaLotes)){
        foreach($listaLotes as $lote){
            ### INCLUIR O TRATAMENTO DE IDENTIFICAÇÃO DA CONTA
            echo "<hr>LOTE: <br>Codigo banco: {$lote['codigo_banco']}<br>agencia: {$lote['agencia']}<br>Conta: {$lote['conta']}<br>DV: {$lote['contaDv']}<br><hr>CONTEUDO:<bR>";
            foreach($lote['detalhes'] as $conteudo){
                ### INCLUIR O TRATAMENTO DOS RETORNOS DOS ITENS
                echo "<hr>Segmento: {$conteudo['segmento']} | Data: {$conteudo['data_pagamento']} | Valor: {$conteudo['valor_pagamento']} | Seu nº: {$conteudo['seu_numero']} | Ocorrencia: {$conteudo['ocorrencia']} | Resultado: {$conteudo['resultado']}<hr>";
            }
        }
    }
} catch(Exception $exception){
    echo $exception->getMessage();
}