---
title: "Consultar os detalhes de um código de barras de um boleto"
method: GET
path: "/escrow/api/v1/billpayments/{bar_code}"
tags: ["Solicitações"]
---

# Consultar os detalhes de um código de barras de um boleto

`GET /escrow/api/v1/billpayments/{bar_code}`

## Request

- Base URL: `https://sandbox.platform.credit.celcoin.com.br`
- URL: `https://sandbox.platform.credit.celcoin.com.br/escrow/api/v1/billpayments/{bar_code}`
- Auth: none declared

Esse endpoint permite a realização de uma consulta detalhada dos dados de um boleto a partir de um código de barras.

Nos dados retornados é possível validar diversas informações sendo elas:

A categoria do pagamento é definida na propriedade type sendo, "1" para Concessionarias/Tributos e "2" para fichas de compensação. Nas consultas para fichas de compensação realizaremos a consulta CIP, retornando no agrupamento registerData todas as informações atualizadas. Para Concessionárias/Tributos extraímos as informações da linha digitável, sendo assim o mencionado agrupamento registerData não é retornado.

Para consultas de fichas de compensação, retornamos o valor atualizado para o pagamento no campo "**totalUpdated**". Apenas nas consultas onde o "**AllowChangeValue**" for true, será possível efetivar o pagamento com um valor diferente do retornado no totalUpdated, lembrando que é necessário respeitar o intervalo máximo(maxValue) e mínimo(minValue).

Disponibilizamos o intervalo que esse pagamento pode ser processado através nas propriedades **initeHour** e **EndHour**, desta forma é possível validar qual é a hora inicial e final do processamento do pagamento. Caso seja realizado a tentativa de pagamento fora desse horário de corte o pagamento será postergado para o próximo dia útil.

É possível validar a data em que será realizada a liquidação do boleto através da propriedade **settleDate**. Também pode ser validado se o título será, ou não liquidado no o dia, através da propriedade nextSettle, onde **S** mostra que será liquidado no próximo dia útil e **N** que a liquidação será no mesmo dia. As vezes em ambiente de sandbox, pode ser que a propriedade **settleDate** seja populada como **null**, então recomendamos que seja realizado um tratamento para esse cenário do lado da sua aplicação, ou seja ela entenda que uma vez que populado com N a data de liquidação será no dia da confirmação do pagamento.

O **transactionId** é o id da transação que foi criada para esse pagamento (_billpaymentTxnIdAuth)_.

O **documentPayer** é o documento do pagador e o **value** é o valor do pagamento com descontos ou juros.

Para alguns convênios de concessionária, não será possível realizar a extração da data de vencimento por meio da linha digitável, nesses casos, retornaremos o campo "**dueDate**" com o valor "**null**", e no momento da efetivação (billpayments) deve ser enviado a data em que está sendo realizado tal pagamento. Em ambiente de homologação a data de vencimento é mockada para qualquer convênio de concessionária, por isso retornará sempre "**null**". Porém, em produção, podemos retornar a data de vencimento corretamente em casos que o convênio a informa na linha digitável.

Ou seja, em ambiente de produção, nós retornaremos no atributo "**dueDate**" o valor "**null**" quando o convênio não disponibiliza a data de vencimento, e retornaremos o valor correto da data de vencimento em formato de _Datetime_ nos casos em que temos a informação por parte do convênio. Por isso na integração os dois cenários devem ser considerados em produção.

**OBS:**

- Para contas do **tipo 1** (concessionárias/tributos), é necessário considerar sempre o atributo "**dueDate**", o qual refere-se a data de vencimento extraída na linha digitável do registro;
    
- Para contas do **tipo 2** (ficha de compensação), é necessário considerar sempre o atributo "**registerData.dueDateRegister**", o qual refere-se a data de vencimento recuperada na consulta junto a CIP (Câmara Interbancária de Pagamentos).
    

#### Parâmetros da URL

- `bar_code` (string): Código de barras para consulta.
    

#### Resposta

Se a requisição for processada com sucesso será retornado um código 200 e um JSON no seguinte formato:

- `assignor` (string (100)): Cedente do pagamento consultado.
    
- `registerData` (object): Objeto contendo os dados de registro.
    
- `settleDate` (datetime): Informa a data em que o pagamento será enviado para liquidação.
    
- `dueDate` (datetime): Retorna a data de vencimento extraída do código.
    
- `endHour` (string (5)): Informa a Hora corte do convênio (HH:MM).
    
- `initeHour` (string (5)): Informa a Hora recebimento Inicial do convênio (HH:MM).
    
- `nextSettle` (string (1)): Informa se o título será liquidado no próximo dia útil. Pode ser N ou S.
    
- `digitable` (string (48)): Define a linha digitável consultada.
    
- `transactionId` (bigInt): Protocolo de identificação da operação _(billpaymentTxnIdAuth)_.
    
- `type` (int): Tipo de conta que está realizando a consulta.
    
- `value` (float): Valor extraído do código.
    
- `errorCode` (string (3)): Define o código status da operação.
    
- `message` (string (100)): Informa descrição do erro.
    
- `status` (string (30)): Define o status da operação.
    

##### Objeto 'registerData'

- `documentRecipient` (string (18)): CPF ou CNPJ do beneficiário.
    
- `documentPayer` (string (18)): CPF ou CNPJ do pagador.
    
- `payDueDate` (datetime): Data de baixa do boleto.
    
- `nextBusinessDay` (datetime): Próximo dia útil.
    
- `dueDateRegister` (datetime): Data de vencimento do registro.
    
- `allowChangeValue` (boolean): Indica que o Boleto permite alterar valor entre o range “maxValue” e “minValue”, sugerimos que caso seja retornado “True” libere que o usuário insira na efetivação (Billpayments) o valor desejado.
    
- `recipient` (string (100)): Nome do beneficiário.
    
- `payer` (string (100)): Nome do pagador.
    
- `discountValue` (float): Valor do desconto calculado.
    
- `interestValueCalculated` (float): Valor juros já calculado.
    
- `maxValue` (float): Valor máximo permitido para pagamento do título. Utilizado nos cenários onde o “AllowChangeValue” for “True”.
    
- `minValue` (float): Valor mínimo permitido para pagamento do título. Utilizado nos cenários onde o “AllowChangeValue” for “True”.
    
- `fineValueCalculated` (float): Valor multa já calculado.
    
- `originalValue` (float): Valor nominal do título.
    
- `totalUpdated` (float): Valor atualizado a ser pago do título. Caso o campo “AllowChangeValue” retorne “False” apenas o valor retornado neste campo será aceito.
    
- `totalWithDiscount` (float): Valor total de descontos e abatimentos.
    
- `totalWithAdditional` (float): Valor total de juros e multa.
    

##### Exemplo de JSON:

``` json
{
    "registerData": {
        "documentRecipient": "<string>",
        "documentPayer": "<string>",
        "payDueDate": "<string>",
        "nextBusinessDay": "<string>",
        "dueDateRegister": "<string>",
        "allowChangeValue": "<boolean>",
        "recipient": "<string>",
        "payer": "<string>",
        "discountValue": "<number>",
        "interestValueCalculated": "<number>",
        "maxValue": "<number>",
        "minValue": "<number>",
        "fineValueCalculated": "<number>",
        "originalValue": "<number>",
        "totalUpdated": "<number>",
        "totalWithDiscount": "<number>",
        "totalWithAdditional": "<number>"
    },
    "assignor": "<string>",
    "settleDate": "<string>",
    "dueDate": "<string>",
    "endHour": "<string>",
    "initeHour": "<string>",
    "nextSettle": "<string>",
    "digitable": "<string>",
    "billpaymentTxnIdAuth": "<number>",
    "type": "<number>",
    "value": "<number>",
    "maxValue": "<number>",
    "minValue": "<number>",
    "errorCode": "<string>",
    "message": "<string>",
    "status": "<number>"
}

 ```

## Path parameters

- `bar_code` string, required

## Headers

- `Accept` string

## Response `200`

OK

- object

## Other responses

- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found

---

[API](https://skmtc.dev/celcoin/apis/celcoin-escrow.md) - [All operations](https://skmtc.dev/celcoin/apis/celcoin-escrow/llms.txt) - [OpenAPI document](https://skmtc.dev/celcoin/apis/celcoin-escrow/revisions/5d55a35a6d51?raw)
