> ## 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.

# Alterar Conta a Receber

> Serviço destinado a alteração de contas a receber.

## Endpoint

```
POST https://api.tiny.com.br/api2/conta.receber.alterar.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     | 10      | obrigatório | Código da conta a receber (identificador único)    |
| conta.vencimento  | date    | 10      | obrigatório | Vencimento da conta a receber (formato dd/mm/yyyy) |
| conta.taxa        | decimal | -       | opcional    | Taxa da conta a receber (1)                        |
| conta.competencia | date    | 7       | opcional    | Competência da conta a receber (formato mm/aaaa)   |
| conta.categoria   | string  | 100     | opcional    | Nome da categoria                                  |

> (1) Taxa permitida apenas para cartão crédito, débito ou forma personalizada

## 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    | -       | condicional | Conforme tabela "Códigos de erro" (2)     |
| retorno.erros\[]              | list   | -       | condicional | Lista dos erros encontrados \[0..n] (2)   |
| retorno.erros\[].erro         | string | -       | condicional | Descrição do erro (2)                     |

> (2) Campos de erro aparecem apenas quando status = "Erro"

## Observações

* Apenas contas em aberto podem ser alteradas
* Data de vencimento deve estar em formato válido (dd/mm/yyyy)
* Competência deve estar no formato mm/aaaa
* Valores decimais usam ponto (.) como separador

## Exemplo de parâmetro

```json theme={null}
{
  "conta": {
    "id": "123",
    "vencimento": "01/12/2022",
    "taxa": 25.50,
    "competencia": "12/2022",
    "categoria": "impostos"
  }
}
```

## Exemplo de chamada

```bash theme={null}
curl -X POST https://api.tiny.com.br/api2/conta.receber.alterar.php \
  -d 'token=SEU_TOKEN&formato=json&conta={
    "id": "123",
    "vencimento": "01/12/2022",
    "taxa": 25.50,
    "competencia": "12/2022",
    "categoria": "impostos"
  }'
```

## Exemplos de retorno

### Erro - Token inválido

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

### Erro - Validação

```json theme={null}
{
  "retorno": {
    "status_processamento": "2",
    "status": "Erro",
    "codigo_erro": 31,
    "erros": [
      {
        "erro": "vencimento",
        "campo": "O campo vencimento deve ser uma data válida."
      },
      {
        "erro": "situacao",
        "campo": "Somente é possivel alterar uma conta em aberto."
      }
    ]
  }
}
```

### Sucesso

```json theme={null}
{
  "retorno": {
    "status_processamento": "3",
    "status": "OK"
  }
}
```
