Skip to content

Implementação do layout L060 240 Santander 033 #227

@KaduAmaral

Description

@KaduAmaral

Olá,

Eu já utilizo a biblioteca para gerar remessa e ler retornos para emissão de boletos, até aqui tudo certo. Porém agora preciso do Pagamento de Fornecedores. Fiz um fork e comecei a implementação pelo banco Santander.

O problema que encontrei é que o layout 060 do Santander tem uma peculiaridade do Registro 3 Segmento B (acho que pode acontecer com outros também, mas ainda não cheguei lá) que é quando é DOC/TED o Layout é de um jeito, mas quando é PIX o Layout é outro.

Como ficaria a estrutura de classes para essa situação, pensei em criar algo tipo isso:

class Registro3B extends Generico3 
{

    
    protected $meta = NULL;

    public function __construct($data = null)
    {
        if ($this->isPix($data)) {
            $this->meta = Registro3B_Pix::$meta;
        } else {
            $this->meta = Registro3B_TedDoc::$meta;
        }

        if (empty($this->data)) {
            parent::__construct($data);
        }
        $this->inserirDetalhe($data);
    }

E assim só determinar o layout quanto estivesse lendo a linha.

Teriam alguma ideia pra fazer essa implementação?

Segue o link da documentação do arquivo: https://cms.santander.com.br/sites/WPS/documentos/arq-layout-pagamento-fornecedores-mai22/23-03-07_150124_pagamento_a_fornecedores_layout_cnab_240_v11.3.2_newpt.pdf

Layout para TED/DOC/etc (Página 11 do PDF)
image

Layout para PIX (Página 16 do PDF)
image

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions