TransaçõesAtualizar Transação Bancária

Atualizar Transação Bancária

Atualiza informações editáveis de uma transação bancária, identificada por transactionId.

Use este endpoint para enriquecer transações no seu fluxo de conciliação ou ERP — por exemplo, registrar contexto da operação, conciliar a transação ou classificá-la por categoria, centro de custo e fornecedor.

Campos editáveis hoje:

  • notes — observação da transação (máximo 1000 caracteres). Envie string vazia ("") para limpar.
  • isConciled — marca a transação como conciliada. Aceita apenas true; a conciliação é irreversível via API.
  • categoryId — ID numérico da categoria.
  • costCenterId — UUID do centro de custo (use o valor do campo id retornado em GET /cost-centers/v1/cost-centers).
  • supplierId — ID numérico do fornecedor (use o valor do campo id retornado em GET /suppliers/v1/suppliers). Envie null para remover o fornecedor da transação.

Regras:

  • O transactionId deve ser o id da transação retornado no extrato (GET /statements/v1/banking).
  • Ao menos um campo deve ser informado no corpo.
  • Enviar isConciled: false retorna 400 Bad Request.
  • Um categoryId, costCenterId ou supplierId que não aparece na respectiva listagem (GET /categories/v1/categories, GET /cost-centers/v1/cost-centers, GET /suppliers/v1/suppliers) retorna 400 Bad Request.
  • Um categoryId ou supplierId que não seja inteiro positivo retorna 400 Bad Request.
  • Quando a conciliação não pode ser concluída, a API retorna 409 Conflict.
  • Em caso de sucesso, a API retorna 204 No Content (sem corpo).

Exemplo:

curl -X PATCH https://api-sandbox.contasimples.com/statements/v1/banking/106615 \
  -H "Authorization: Bearer {TOKEN}" \
  -H "Content-Type: application/json" \
  -d '{"notes":"Pagamento fornecedor","isConciled":true,"categoryId":1146,"supplierId":16}'
curl -X PATCH "https://api-sandbox.contasimples.com/statements/v1/banking/106615" \
  -H "Content-Type: application/json" \
  -H "Signature-Input: example_string" \
  -H "Signature: example_string" \
  -H "Content-Digest: example_string" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -d '{
  "notes": "Pagamento fornecedor",
  "isConciled": true,
  "categoryId": 1146,
  "costCenterId": "a02f8f63-8b1b-4328-9d7d-0d2e351b8118",
  "supplierId": 16
}'
{}
PATCH
/statements/v1/banking/{transactionId}
PATCH
Base URLstring

Target server for requests. Edit to use your own host.

Bearer Token
Bearer Tokenstring
Required

Token Bearer obtido via OAuth 2.0 Client Credentials. Formato: Bearer TOKEN

Token Bearer obtido via OAuth 2.0 Client Credentials. Formato: Bearer TOKEN
path
transactionIdinteger
Required

ID da transação bancária — use o valor do campo id retornado em GET /statements/v1/banking (ex.: 106615).

Content-Typestring
Required

The media type of the request body

Options: application/json
header
Signature-Inputstring

O que foi assinado e os parâmetros da assinatura, no formato da RFC 9421. Uma credencial com chave pública precisa enviar este header em todas as chamadas, inclusive as de leitura, ou a requisição é recusada com 401. A assinatura cobre os componentes @method, @path e @query, e também content-digest quando houver corpo. created e alg são obrigatórios, e o created vale por 300 segundos. O formato completo, com exemplos, está em Assinatura de Requisições.

header
Signaturestring

A assinatura da base definida pela RFC 9421, em base64, entre : e com o mesmo rótulo usado no Signature-Input, por exemplo sig=:SGVsbG8gd29ybGQ=:. Vai sempre junto com o Signature-Input.

header
Content-Digeststring

Hash do corpo da requisição no formato da RFC 9530, com sha-256 ou sha-512, por exemplo sha-256=:X48E9qOokqqrvdts8nOJRJN3OWDUoyWxBf7kbu9DBPE=:. É obrigatório quando a requisição tem corpo e a credencial tem chave pública, e nesse caso o Signature-Input precisa incluir o componente content-digest.

notesstring

Observação da transação. Envie string vazia ("") para limpar.

Max length: 1000
isConciledboolean

Marca a transação como conciliada. Aceita apenas true — a conciliação é irreversível via API.

Options: true
categoryIdinteger

ID da categoria — use o valor do campo id retornado em GET /categories/v1/categories.

Min: 1
costCenterIdstring

UUID do centro de custo — use o valor do campo id retornado em GET /cost-centers/v1/cost-centers.

Format: uuid
supplierIdinteger

ID do fornecedor — use o valor do campo id retornado em GET /suppliers/v1/suppliers. Envie null para remover o fornecedor da transação; sem o campo, o fornecedor atual é mantido.

Min: 1
Request Preview
Response

Response will appear here after sending the request

Authentication

header
Authorizationstring
Required

Bearer token. Token Bearer obtido via OAuth 2.0 Client Credentials. Formato: Bearer TOKEN

Path Parameters

transactionIdinteger
Required

ID da transação bancária — use o valor do campo id retornado em GET /statements/v1/banking (ex.: 106615).

Example:
106615

Headers

Signature-Inputstring

O que foi assinado e os parâmetros da assinatura, no formato da RFC 9421. Uma credencial com chave pública precisa enviar este header em todas as chamadas, inclusive as de leitura, ou a requisição é recusada com 401. A assinatura cobre os componentes @method, @path e @query, e também content-digest quando houver corpo. created e alg são obrigatórios, e o created vale por 300 segundos. O formato completo, com exemplos, está em Assinatura de Requisições.

Signaturestring

A assinatura da base definida pela RFC 9421, em base64, entre : e com o mesmo rótulo usado no Signature-Input, por exemplo sig=:SGVsbG8gd29ybGQ=:. Vai sempre junto com o Signature-Input.

Content-Digeststring

Hash do corpo da requisição no formato da RFC 9530, com sha-256 ou sha-512, por exemplo sha-256=:X48E9qOokqqrvdts8nOJRJN3OWDUoyWxBf7kbu9DBPE=:. É obrigatório quando a requisição tem corpo e a credencial tem chave pública, e nesse caso o Signature-Input precisa incluir o componente content-digest.

Body

application/json
notesstring

Observação da transação. Envie string vazia ("") para limpar.

Example:
Pagamento fornecedor
isConciledboolean

Marca a transação como conciliada. Aceita apenas true — a conciliação é irreversível via API.

Allowed values:true
categoryIdinteger

ID da categoria — use o valor do campo id retornado em GET /categories/v1/categories.

Example:
1146
costCenterIdstring

UUID do centro de custo — use o valor do campo id retornado em GET /cost-centers/v1/cost-centers.

Example:
a02f8f63-8b1b-4328-9d7d-0d2e351b8118
supplierIdinteger

ID do fornecedor — use o valor do campo id retornado em GET /suppliers/v1/suppliers. Envie null para remover o fornecedor da transação; sem o campo, o fornecedor atual é mantido.

Example:
16

Responses