> ## Documentation Index
> Fetch the complete documentation index at: https://api-docs.erp.olist.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Baixar Conta a Pagar

> Serviço destinado a baixa de contas a pagar.

## Endpoint

```
POST https://api.tiny.com.br/api2/conta.pagar.baixar.php
```

## Parâmetros

| Parâmetro | Tipo   | Ocorrência  | Descrição                                 |
| --------- | ------ | ----------- | ----------------------------------------- |
| token     | string | obrigatório | Chave gerada para identificar sua empresa |
| conta     | object | obrigatório | Dados da conta conforme layout            |
| formato   | string | obrigatório | Formato do retorno (json)                 |

### Layout do parâmetro "conta"

| Campo                | Tipo    | Tamanho | Ocorrência  | Descrição                                               |
| -------------------- | ------- | ------- | ----------- | ------------------------------------------------------- |
| conta.id             | int     | -       | obrigatório | Identificador da conta a pagar                          |
| conta.contaOrigem    | string  | 100     | opcional    | Nome da conta origem da baixa (1)                       |
| conta.data           | date    | 10      | opcional    | Data de baixa da conta a pagar (formato dd/mm/yyyy) (1) |
| conta.categoria      | string  | 100     | opcional    | Nome da categoria (1)                                   |
| conta.historico      | string  | 300     | opcional    | Histórico da conta a pagar (1)                          |
| conta.valorTaxas     | decimal | -       | opcional    | Valor de taxas (2)                                      |
| conta.valorJuros     | decimal | -       | opcional    | Valor de juros (2)                                      |
| conta.valorDesconto  | decimal | -       | opcional    | Valor de desconto (2)                                   |
| conta.valorAcrescimo | decimal | -       | opcional    | Valor de acréscimo (2)                                  |
| conta.valorPago      | decimal | -       | opcional    | Valor pago da conta a pagar (1)                         |

> (1) Se não informados, serão considerados valores cadastrados na conta

> (2) Se não informados, será considerado valor 0

## Retorno

| Campo                                       | Tipo   | Tamanho | Ocorrência  | Descrição                                 |
| ------------------------------------------- | ------ | ------- | ----------- | ----------------------------------------- |
| retorno                                     | object | -       | obrigatório | Elemento raiz do retorno                  |
| retorno.status\_processamento               | int    | -       | obrigatório | Conforme tabela "Status de Processamento" |
| retorno.status                              | string | -       | obrigatório | "OK" ou "Erro"                            |
| retorno.codigo\_erro                        | int    | -       | obrigatório | Conforme tabela "Códigos de erro"         |
| retorno.erros\[]                            | list   | -       | condicional | Lista dos erros encontrados \[0..n]       |
| retorno.erros\[].erro                       | string | -       | condicional | Descrição do erro                         |
| retorno.registros\[]                        | list   | -       | condicional | Lista de resultados                       |
| retorno.registros\[].registro.sequencia     | int    | -       | condicional | Número sequencial                         |
| retorno.registros\[].registro.status        | string | -       | condicional | "OK" ou "Erro"                            |
| retorno.registros\[].registro.codigo\_erro  | int    | -       | condicional | Código do erro                            |
| retorno.registros\[].registro.erros\[]      | list   | -       | condicional | Lista de erros \[0..n]                    |
| retorno.registros\[].registro.erros\[].erro | string | -       | condicional | Descrição do erro                         |
| retorno.registros\[].registro.id            | int    | -       | condicional | ID da conta a pagar                       |

## Observações

* Datas devem ser formatadas como dd/mm/yyyy (exemplo: "01/01/2012")
* Valores decimais usam "." (ponto) como separador (exemplo: "5.25")
* Apenas contas em aberto podem ser baixadas

## Exemplo de parâmetro

```json theme={null}
{
  "conta": {
    "id": "350187089",
    "contaOrigem": "Bradesco",
    "data": "10/10/2016",
    "categoria": "Água, Luz",
    "historico": "historico de teste",
    "valorTaxas": 4.3,
    "valorJuros": 3.5,
    "valorDesconto": 6.4,
    "valorAcrescimo": 3.3,
    "valorPago": 35.50
  }
}
```

## Exemplo de chamada

```bash theme={null}
curl -X POST https://api.tiny.com.br/api2/conta.pagar.baixar.php \
  -d 'token=SEU_TOKEN&formato=json&conta={...}'
```

## Exemplos de retorno

### Erro - Token inválido

```json theme={null}
{
  "retorno": {
    "status_processamento": 1,
    "status": "Erro",
    "codigo_erro": 2,
    "erros": [
      {
        "erro": "token invalido"
      }
    ]
  }
}
```

### Erro - Conta já paga

```json theme={null}
{
  "retorno": {
    "status_processamento": 2,
    "status": "Erro",
    "registros": [
      {
        "registro": {
          "sequencia": "1",
          "status": "Erro",
          "codigo_erro": "31",
          "erros": [
            {
              "erro": "Essa conta já foi paga."
            }
          ]
        }
      }
    ]
  }
}
```

### Sucesso

```json theme={null}
{
  "retorno": {
    "status_processamento": 3,
    "status": "OK",
    "registros": [
      {
        "registro": {
          "sequencia": "1",
          "status": "OK",
          "id": "49644545"
        }
      }
    ]
  }
}
```
