Sobre API de Conciliação

O que é Conciliação?

Do ponto de vista financeiro, conciliação é o ato de fazer o levantamento de todas as contas e recebimentos da empresa e comparar com os valores que entraram e saíram da sua conta bancária, essencial para a saúde financeira de qualquer negócio.

Por que fazer a conciliação na Celcoin?

A conciliação é necessária para conferir os extratos de operações realizadas pelas APIs da Celcoin com o seu fluxo de caixa, garantindo transparência e permitindo identificar possíveis divergências.

Pré requisitos para implementação:

  • Possuir uma chave API da Celcoin, para mais informações acessar esse link.
  • Ter familiaridade com APIs Rest usando o protocolo OAuth 2.0.

Esta funcionalidade tem o objetivo de facilitar a conciliação de transações entre o cliente e a Celcoin, possibilitando uma manipulação mais eficiente dos dados e uma estabilidade de retorno constante e mais seguro.

Caso de uso:

Como fintech, quero consultar, via API, os tipos de transações contidos nos arquivos de movimentação contábil gerados anteriormente para poder realizar minha conciliação com a Celcoin.

Buscar tipos de arquivo

A API Buscar tipos de arquivos de conciliação mostra todos os tipos de arquivos disponíveis para conciliação.

Modelo de request:

curl --location --request GET 'https://sandbox.openfinance.celcoin.dev/tools-conciliation/v1/exportfile/types' \
--header 'accept: application/json' \
--header 'Authorization: Bearer {access_token}'

Modelo de response:

[
    {
        "fileType": 1,
        "description": "Movimentacao"
    },
    {
        "fileType": 2,
        "description": "Recusa Movimentacao"
    },
    {
        "fileType": 22,
        "description": "Transferencia Movimentacao"
    },
    {
        "fileType": 23,
        "description": "Transferencia Recusa"
    },
    {
        "fileType": 24,
        "description": "Recebimento Eletronico"
    },
    {
        "fileType": 25,
        "description": "Pagamento Eletronico"
    },
    {
        "fileType": 36,
        "description": "PIX Pagamento"
    },
    {
        "fileType": 37,
        "description": "PIX Recebimento"
    },
    {
        "fileType": 38,
        "description": "PIX Devolução de Recebimento"
    },
    {
        "fileType": 39,
        "description": "PIX Devolução de Pagamento"
    },
    {
        "fileType": 40,
        "description": "Recarga Internacional"
    },
    {
        "fileType": 41,
        "description": "PIX Aporte"
    },
    {
        "fileType": 46,
        "description": "Consulta Debito Veicular"
    },
    {
        "fileType": 47,
        "description": "Liquidacao Debito Veicular"
    }
]


Descrição dos campos (Response):

CampoDescrição
fileTypeCodigo do arquivo
descriptionNome do arquivo

Arquivos disponíveis:

ArquivoProdutoDescrição
MovimentaçãoPagamento de contas e RecargasArquivo de movimentação para pagamentos de contas e recargas realizadas com sucesso.
Recusa MovimentaçãoPagamento de contasArquivo de movimentação para pagamentos de contas devolvidos pela compensação.
Transferência MovimentaçãoTransferência BancariaArquivo de movimentação para transferências bancárias (TED) realizadas com sucesso.
Transferência RecusaTransferência BancáriaArquivo de movimentação para transferências bancárias (TED) devolvidas pelo beneficiário.
Recebimento EletrônicoSaques físicosArquivo de movimentação para saques realizados com sucesso.
Pagamento EletrônicoDepósitos físicosArquivo de movimentação para depósitos físicos realizados com sucesso.
PIX PagamentoPixArquivo de movimentação para pagamentos Pix (cash-out) realizados com sucesso.
PIX RecebimentoPixArquivo de movimentação para recebimentos Pix (cash-in) realizados com sucesso.
PIX Devolução de RecebimentoPixArquivo de movimentação para devoluções de recebimentos Pix.
PIX Devolução de PagamentoPixArquivo de movimentação para pagamentos Pix devolvidos pelo recebedor.
Recarga InternacionalRecarga InternacionalArquivo de movimentação para recargas internacionais realizadas com sucesso.
PIX AporteArquivo de movimentação para o registro de aportes realizados na conta bolsão.
Consulta Débito VeicularDébitos veicularesArquivo de movimentação para consultas de débitos veiculares realizadas.
Liquidação Débito VeicularDébitos veicularesArquivo de movimentação para pagamentos de débitos veiculares realizados com sucesso.

Extrair arquivos

A API Extrair arquivo de conciliação permite buscar em D+1 os arquivos de conciliação de determinado produto através do tipo de arquivo (retornado anteriormente) e data contábil.

Nesta consulta é possível passar os seguintes parâmetros de busca:

  • fileType - Identificador do tipo de arquivo buscado.
  • accountDate – Data contábil do arquivo buscado, seguindo formato AAAA-MM-DD.
  • page - Identificador da página da listagem retornada.
  • quantity - Identificador da quantidade por página retornada. Por default o tamanho é 10.000.

️ Atenção!

É necessário informar pelo menos fileType e accountDate para realizar a consulta.

A pesquisa dos arquivos de conciliação do dia anterior estarão disponíveis a partir das 6h00 do dia corrente.

OBS: O parâmetro accountDate (data contábil) se refere à data de liquidação da operação, sendo diferente da data de transação, que é a data em que a operação foi realizada.

Modelo de request:

curl --location --request GET 'https://sandbox.openfinance.celcoin.dev/tools-conciliation/v1/exportfile?filetype=1&accountdate=2022-06-07&Page=1' \
--header 'accept: application/json' \
--header 'Authorization: Bearer {access_token}'

Modelo de response:

{
    "movement": [
        {
            "DigitableLine": "03399492813698211200901537301028400000000000000 ",
            "AccountDate": "2022-06-01T00:00:00",
            "Value": 304.1,
            "TransactionType": 1,
            "TransactionDateTime": "2022-06-01T20:00:00",
            "TransactionCode": "RECEBERCONTA",
            "TransactionId": 815977512,
            "NSU": 97102,
            "ExternalTerminal": "TesteMockado-6C59770F-4A0A-4429-9C39-0ADBFFCDB525",
            "ExternalNSU": 2105324538,
            "PaymentMethod": 2
        },
        {
            "DigitableLine": "03399492813698211200901537301028400000000000000 ",
            "AccountDate": "2022-06-01T00:00:00",
            "Value": 354.7,
            "TransactionType": 1,
            "TransactionDateTime": "2022-06-01T15:00:00",
            "TransactionCode": "RECEBERCONTA",
            "TransactionId": 815977513,
            "NSU": 2107,
            "ExternalTerminal": "TesteMockado-3A977B5E-631D-4D59-8265-F780FDD3E373",
            "ExternalNSU": 966441828,
            "PaymentMethod": 2
        }
    ],
    "pagination": {
        "page": 1,
        "totalCount": 10,
        "totalPages": 5,
        "hasPrevious": false,
        "hasNext": true
    }
}

Tipos de movimentos (movement)

No resultado de “movement”, serão apresentados até 15 tipos de movimentos diferentes, dependendo do tipo arquivo buscado:

Movimentação

TransactionCode: RECEBERCONTA e RECARGA

{
    "DigitableLine": "03399492813698211200901537301028400000000000000 ",
    "AccountDate": "2022-06-01T00:00:00",
    "Value": 304.1,
    "TransactionType": 1,
    "TransactionDateTime": "2022-06-01T20:00:00",
    "TransactionCode": "RECEBERCONTA",
    "TransactionId": 815977512,
    "NSU": 97102,
    "ExternalTerminal": "TesteMockado-6C59770F-4A0A-4429-9C39-0ADBFFCDB525",
    "ExternalNSU": 2105324538,
    "PaymentMethod": 2
},
{
    "AccountDate": "2022-06-01T00:00:00",
    "Value": 440.47,
    "TransactionType": 10,
    "TransactionDateTime": "2022-06-01T09:00:00",
    "TransactionCode": "RECARGA",
    "TransactionId": 815977522,
    "NSU": 98992,
    "ExternalTerminal": "TesteMockado-673B5CCB-47B9-4722-ABDA-C430D2059053",
    "ExternalNSU": 1924016170,
    "PaymentMethod": 2
},


Recusa Movimentação

TransactionCode: RECEBERCONTA

{
    "DigitableLine": "03399492813698211200901537301028400000000000000 ",
    "AccountDate": "2022-06-01T00:00:00",
    "Value": 1439.98,
    "TransactionType": 1,
    "TransactionDateTime": "2022-05-31T02:00:00",
    "TransactionCode": "RECEBERCONTA",
    "TransactionId": 815977492,
    "NSU": 14481,
    "ExternalTerminal": "TesteMockado-719097FD-0256-46A5-83AA-24083AF95203",
    "ExternalNSU": 1145554405,
    "PaymentMethod": 2
},


Transferência Movimentação

TransactionCode: TRANSFERENCIA

{
    "CpfCnpj": "21174145080",
    "FullName": "Fulano de tal",
    "Bank": 341,
    "AccountType": 1,
    "Agency": 371,
    "Account": 9794865500,
    "VerifyingDigit": 2,
    "AccountDate": "2022-06-01T00:00:00",
    "Value": 2,
    "TransactionType": 33,
    "TransactionDateTime": "2022-05-31T11:55:20.393",
    "TransactionCode": "TRANSFERENCIA",
    "TransactionId": 815977375,
    "NSU": 0,
    "ExternalTerminal": "11122233344",
    "ExternalNSU": 19729,
    "PaymentMethod": 2
},


Transferência Recusa

TransactionCode: TRANSFERENCIA

{
    "RefusalMotive": "",
    "DevolutionDate": "02/06/2022 00:00",
    "CpfCnpj": "1825714699",
    "FullName": "Fulano de tal",
    "Bank": 212,
    "AccountType": 1,
    "Agency": 1,
    "Account": 485835,
    "VerifyingDigit": 2,
    "AccountDate": "2022-06-01T00:00:00",
    "Value": 1010.66,
    "TransactionType": 33,
    "TransactionDateTime": "2022-06-01T20:00:00",
    "TransactionCode": "TRANSFERENCIA",
    "TransactionId": 815977532,
    "NSU": 1269,
    "ExternalTerminal": "TesteMockado-2886A7CA-3A69-4A7D-A0C1-078A3394DB63",
    "ExternalNSU": 915547103,
    "PaymentMethod": 2
},


Recebimento Eletrônico

TransactionCode: RECEBIMENTOELETRONICO

{
    "CpfCnpj": "833904217",
    "AccountDate": "2022-06-01T00:00:00",
    "Value": 599.15,
    "TransactionType": 32,
    "TransactionDateTime": "2022-06-01T08:00:00",
    "TransactionCode": "RECEBIMENTOELETRONICO",
    "TransactionId": 815977537,
    "NSU": 59340,
    "ExternalTerminal": "TesteMockado-80A5CADC-F080-4229-A1B5-3BF36B0BA4D3",
    "ExternalNSU": 1619674788,
    "PaymentMethod": 2
},


Pagamento Eletrônico

TransactionCode: PAGAMENTOELETRONICO

{
    "CpfCnpj": "675801019",
    "AccountDate": "2022-06-01T00:00:00",
    "Value": 1385.34,
    "TransactionType": 36,
    "TransactionDateTime": "2022-06-01T02:00:00",
    "TransactionCode": "PAGAMENTOELETRONICO",
    "TransactionId": 815977542,
    "NSU": 25009,
    "ExternalTerminal": "TesteMockado-65EB1908-509E-4913-8390-A60DD7B40582",
    "ExternalNSU": 1652009408,
  	"PaymentMethod": 2
},


Pix Pagamento

TransactionCode: PAYMENT

{
    "ReceiverCpfCnpj": "12345678909",
    "TransactionIdentification": "8B94ACD6-AE05-43CB-9862-4595AE2D6C33",
    "EndToEnd": "E339655166",
    "ReceiverAccount": "1",
    "ReceiverAccountType": "CACC",
    "ReceiverBranch": 1,
    "ReceiverBank": 1,
    "ReceiverName": "Fulano de Tal",
    "PartnerId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
    "ReceiverKey": "[email protected]",
    "ConfirmationDate": "2022-06-01T00:00:00.000",
    "AccountDate": "2022-06-01T00:00:00",
    "Value": 279.5,
    "TransactionType": 57,
    "TransactionDateTime": "2022-06-01T20:00:00",
    "TransactionCode": "PAYMENT",
    "TransactionId": 815977557,
    "NSU": 95338,
    "ExternalTerminal": "D63330B8-97EC-4BEF-9B25-5BDA2418EA8E",
    "ExternalNSU": 645017136,
    "PaymentMethod": 2
},


Pix Recebimento

TransactionCode: RECIVEMENTPAYMENT

{
    "TransactionIdentification": "DF0DA8D7-120E-4083-BCB4-3BE96E7E1127",
    "EndToEnd": "E716846145",
    "PayerCpfCnpj": "12345678909",
    "PayerKey": "TesteMockado",
    "PayerAccount": "1",
    "PayerAccountType": "TRAN",
    "PayerBranch": "1",
    "PayerBank": "1",
    "PartnerId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
    "AccountDate": "2022-06-01T00:00:00",
    "Value": 1906.82,
    "TransactionType": 58,
    "TransactionDateTime": "2022-06-01T10:00:00",
    "TransactionCode": "RECIVEMENTPAYMENT",
    "TransactionId": 815977577,
    "NSU": 2989,
    "PaymentMethod": 2
},


Pix Devolução de Recebimento

TransactionCode: RECIVEMENTREVERSEPAYMENT

{
    "AccountDate": "2022-06-01T00:00:00",
    "Value": 743.81,
    "TransactionType": 60,
    "TransactionDateTime": "2022-06-01T01:00:00",
    "TransactionCode": "RECIVEMENTREVERSEPAYMENT",
    "TransactionId": 815977572,
    "NSU": 96331,
    "ExternalNSU": 98563707,
    "PaymentMethod": 2
},


Pix Devolução de Pagamento

TransactionCode: REVERSEPAYMENT

{
    "ReturnIdentification": "D1057929537",
    "AccountDate": "2022-06-01T00:00:00",
    "Value": 818.28,
    "TransactionType": 59,
    "TransactionDateTime": "2022-06-01T09:00:00",
    "TransactionCode": "REVERSEPAYMENT",
    "TransactionId": 815977567,
    "NSU": 55965,
    "ExternalTerminal": "433327",
    "ExternalNSU": 967313962,
    "PaymentMethod": 2
},


Pix Aporte

TransactionCode: RECIVEMENTPAYMENT

{
    "TransactionIdentification": "TesteMockado-0819EF38-2DFB-4D57-B8A5-A00FB030E333",
    "EndToEnd": "E864280851",
    "CreditKey": "TesteMockado",
    "CreditAccount": "2097",
    "CreditAccountType": "TRAN",
    "CreditBranch": "1",
    "CreditBank": "13935893",
    "AccountDate": "2022-06-01T00:00:00",
    "Value": 346.64,
    "TransactionType": 58,
    "TransactionDateTime": "2022-06-01T06:00:00",
    "TransactionCode": "RECIVEMENTPAYMENT",
    "TransactionId": 815977562,
    "NSU": 57332,
    "PaymentMethod": 2
},


Recarga Internacional

TransactionCode: RECARGAINTERNACIONAL

{
    "CountryCode": "8",
    "Phone": "99999-9999",
    "ValueDollar": 8.5200,
    "AccountDate": "2022-06-01T00:00:00",
    "Value": 142.26,
    "TransactionType": 45,
    "TransactionDateTime": "2022-06-01T15:00:00",
    "TransactionCode": "RECARGAINTERNACIONAL",
    "TransactionId": 815977552,
    "NSU": 19690,
    "ExternalTerminal": "TesteMockado-378B1D09-B755-47AE-AFB8-3632AA83F57F",
    "ExternalNSU": 533476834,
    "PaymentMethod": 2
},


Consulta Débito Veicular

TransactionCode: VEHICLEDEBTCHECK

{
  	"AccountDate": "2022-06-01T00:00:00",
  	"Value": 1596.5,
  	"TransactionType": 67,
  	"TransactionDateTime": "2022-06-01T09:00:00",
  	"TransactionCode": "VEHICLEDEBTCHECK",
  	"TransactionId": 815977512,
  	"PaymentMethod": 2,
  	"ClientRequestId": "lorem ipsum"
},


Liquidação Débito Veicular

TransactionCode: DEBITOVEICULAR

{
  	"AccountDate": "2022-06-01T00:00:00",
  	"Value": 1596.5,
  	"TransactionType": 68,
  	"TransactionDateTime": "2022-06-01T09:00:00",
  	"TransactionCode": "DEBITOVEICULAR",
  	"TransactionId": 815988324,
  	"PaymentMethod": 2,
  	"ClientRequestId": "lorem ipsum",
  	"PaymentId": "015CA139-56E5-4D12-94FC-DCCD9CE0CB26"
},


Descrição dos campos

A seguir, a lista com a descrição dos campos retornados nas requisições:

CampoTipoDescrição
DigitableLineStringLinha digitável para pagamento
AccountDateDateTimeData liquidação da transação
ValuefloatValor pago
TransactionTypeInt16Código do tipe de transação
TransactionDateTimeDatetimeData e Hora da transação
TransactionCodeStringCódigo da transação
TransactionIdBigIntO protocolo gerado pelo TodaConta
NSUInt32Identificador da transação do usuário
ExternalTerminalStringIdentificador do terminal do sistema cliente
ExternalNSUInt64Identificador da transação do sistema cliente
PaymentMethodInt32Código da Forma de Pagamento
CpfCnpjStringCPF ou CNPJ do cliente que está realizando o pagamento
FullNameStringNome completo da conta bancária
BankInt32Número do Banco da conta bancária
AccountTypeInt32Tipo da conta bancária
AgencyInt32Agência sem dígito verificador da conta bancária
AccountInt32Número da conta bancária sem dígito verificador
VerifyingDigitInt32Dígito verificador da conta bancária
RefusalMotiveStringMotivo de devolução
DevolutionDateStringData de devolução
TransactionIdentificationStringIdentificador único da transação proveniente de um QR Code
EndToEndStringIdentificador dos participantes da transação
BranchInt32No caso de transação pix, Número da agência
PayerKeyStringNúmero chave pix que receberá o pagamento
PayerAccountStringNúmero da conta que receberá o pagamento
PayerCpfCnpjStringDocumento da pessoa que receberá o pagamento
PayerAccountTypeStringTipo de conta que receberá o pagamento
PayerBranchStringIdentificador do banco que receberá o pagamento
PayerBankStringNúmero identificador do participant que receberá o pagamento
ReceiverCpfCnpjStringDocumento da pessoa que realizará o pagamento
ReceiverAccountStringNúmero da conta que realizará o pagamento
ReceiverAccountTypeStringTipo de conta que realizará o pagamento
ReceiverBranchStringIdentificador do banco no qual realizará o pagamento
ReceiverBankStringNúmero identificador do participant que realizará o pagamento
ReceiverNameStringNome completo da pessoa que realizará o pagamento
ReceiverKeyStringNúmero chave pix que realizará o pagamento
ReturnIdentificationStringNúmero identificador de retorno do pagamento pix
CountryCodeStringCódigo do país
PhoneStringNúmero de telefone
ValueDollarDecimalValor da transação em dólar
RemittanceInformationStringTexto a ser apresentado ao pagador para que possa introduzir uma informação correlacionada
ClientRequestIdStringIdentificador do terminal do sistema cliente
PaymentIdStringO protocolo gerado pela instituição
PartnerIdStringIdentificador da transação

️ Atenção!

Para testar essa API é necessario realizar uma ou mais transações (Pix, Boleto, Debito automático e etc.) para que haja retorno.

É importante ressaltar que as consultas neste endpoint só serão apresentadas no dia posterior ao processamento da transação, pois nosso ambiente de Sandbox tem o mesmo comportamento que o de Produção.

Atenção!

Essa API somente retornará arquivos gerados a partir de Julho/2022, ficando restrito aos últimos 6 meses para conciliação.