Referência de organizações
Atualizar uma organização
Atualiza uma organização.
Atualiza campos públicos da organização e os blocos do cadastro financeiro (
Não envie
O prefixo do
company, representative/individual com verification, business_profile, payout_account, terms_acceptance e statement_descriptor). A operação tem semântica de merge: apenas os campos enviados são modificados.
Este é o endpoint de escrita da ativação por API: preencha os blocos, releia requirements.missing e, quando ele zerar, chame POST /v1/organizations/{id}/submit. O fluxo ponta a ponta está em Ativar organização por API.
platform, activation_status, activation_status_updated_at, activation_submitted_at, requirements, created_at e updated_at são somente leitura: enviá-los retorna 400.
document e document_type podem ser alterados apenas enquanto a organização ainda não tem identidade financeira viva: a ativação precisa estar em not_submitted ou disabled e a organização não pode ter nenhuma atividade de pagamento. Depois da primeira ativação ou movimentação, o documento identifica o histórico financeiro e se torna permanente. Veja o modelo completo em Reenviar KYC de uma organização.
Autenticação
A organização vem do
{id} da URL. Com chave de plataforma, não envie o
header Organization: a API valida se a organização do caminho tem uma
conexão ativa com a plataforma da chave.Parâmetros de caminho
string
obrigatório
ID da organização.
Attributes
string
URL de file da Chargefy (
https://storage.chargefy.io/file_...) com purpose
organization_avatar, criada via POST /v1/files e pertencente à própria organização.
URLs externas são rejeitadas com 400. Use null para limpar.object
Conta para saques declarada para receber os repasses. Bloco atômico:
account_number, bank_code, routing_number e type são obrigatórios juntos. bank_name é opcional. Use null para limpar a declaração.O titular nunca é enviado: holder_name e document são derivados da identidade da organização e retornam 400 se aparecerem no corpo.Na escrita, payout_account declara a conta que será usada no envio do cadastro. Na leitura, o mesmo campo mostra a conta ativa do cadastro financeiro (objeto payout_account com pa_* e últimos 4 dígitos) — os dois lados só coincidem depois da aprovação. A conta é propriedade do documento fiscal: o novo valor passa a valer para as cobranças daquele CPF/CNPJ.Quando o documento fiscal da organização já tem uma conta para saques, payout_account não aparece em requirements.missing e a organização recebe nessa conta. Nesse caso não envie o bloco: declarar uma conta retorna 400 com code: "payout_account_not_accepted". Enviar null continua aceito.string
Informação adicional de cobrança. Use
null para limpar.object
Endereço de cobrança. Use
null para limpar.string
Nome usado em cobranças. Use
null para limpar.object
Marca da organização: cores, fonte, tema e cantos usados por todas as páginas hospedadas dela — checkout, confirmação da compra, fatura hospedada e portal do cliente. Merge por campo: cada campo enviado é atualizado, os demais permanecem. Enviar
null em um campo devolve esse campo ao padrão; os cinco são sempre retornados preenchidos. Logo principal, marca do rodapé e domínio próprio são configurados no Dashboard, em Configurações → Marca, e não aparecem na API. A ativação e a revisão cadastral de uma organização filha usam sempre a marca da plataforma; veja Marca e domínio próprio da plataforma.A marca vale para todas as páginas hospedadas da organização assim que é salva, inclusive em links, faturas e sessões já enviados: cada página lê a marca atual ao abrir. A cópia do botão (submit_type) não mora aqui — é definida por sessão.object
Perfil de negócio declarado. Merge por campo: enviar só
url mantém o annual_revenue guardado.mcc é somente leitura: a categoria do negócio é resolvida pela Chargefy a partir do registro público do CNPJ. Enviá-lo retorna 400.object
Dados cadastrais da empresa. Aceito apenas em organizações CNPJ; em organizações CPF retorna
400. Merge por campo.Em organizações CNPJ, estes campos são preenchidos automaticamente a partir do registro público do CNPJ logo após a criação; o que você grava sempre vence.string
Novo CPF (11 dígitos) ou CNPJ (14 dígitos), com ou sem pontuação. O documento é a identidade fiscal declarada da organização: ele define qual perfil financeiro a próxima activation session vai criar (pessoa física para CPF, pessoa jurídica para CNPJ).Só pode ser alterado enquanto
activation_status é not_submitted ou disabled e a organização não tem atividade de pagamento. A troca desativa o perfil financeiro reprovado anterior (se houver) e reinicia qualquer activation session aberta — chame POST /v1/activation-sessions novamente após a troca.string
Tipo do documento. Opcional: quando omitido, é derivado do
document. Quando enviado, precisa ser coerente com o número informado. Não pode ser enviado sem document.string
E-mail principal. Use
null para limpar.string | null
Plano de taxas que a organização paga:
- omitido: mantém o plano atual;
nullou"default": a organização volta a seguir o plano padrão da sua plataforma e acompanha as trocas de padrão;- ID de um plano da sua plataforma (
plan_*): a organização passa a usar esse plano até você trocar.
ch_live_...), porque o plano define o preço das
vendas reais da organização. Com chave de teste, omita o campo: enviar
fee_plan, mesmo null ou "default", retorna 400 com
code: "livemode_mismatch".A resposta traz "default" ou o ID do plano. Veja os exemplos em
Plano de taxas.object
A pessoa física titular da organização. Aceito apenas em organizações CPF;
em organizações CNPJ retorna
400. Mesmos campos de representative, com uma
exceção: individual.document não é aceito — o documento da organização
já é o CPF dessa pessoa.object
Substitui a metadata da relação plataforma↔organização conectada. Disponível
apenas com API key de plataforma.
string
Nome público da organização. Não aceita string vazia.
object
O representante legal da empresa. Aceito apenas em organizações CNPJ; em organizações CPF retorna
400. Merge por campo.array
Substitui a lista inteira de redes sociais. Use
[] para limpar.string
Nome exibido na fatura do comprador. Normalizado para maiúsculas, sem acentos, apenas letras, números e espaços; precisa ficar entre 5 e 22 caracteres depois da normalização. Use
null para limpar.É propriedade do documento fiscal: o novo valor passa a valer para as cobranças daquele CPF/CNPJ. Depois do cadastro aprovado, a leitura devolve o valor em vigor no cadastro financeiro.object
Registro do aceite dos termos de serviço coletado por você. Bloco atômico; use
null para limpar.string
Site público. Use
null para limpar.Suporte e termos do vendedor
Essas informações pertencem à organização. Aparecem na fatura, no portal do cliente e no checkout quandocheckout_experience.footer_expanded estiver habilitado. Os termos são exibidos sem exigir aceite do comprador e são independentes de terms_acceptance, que registra o aceite da organização ao ativar sua conta.
string | null
Texto do link de atendimento, até 80 caracteres. Sem rótulo, a página usa “Fale com o suporte”.
string | null
Link HTTP/HTTPS de atendimento, WhatsApp ou ajuda, até 2.048 caracteres.
string | null
Termos em texto simples, até 10.000 caracteres. Preencher este campo limpa
terms_url.string | null
Link HTTP/HTTPS dos termos, até 2.048 caracteres. Preencher este campo limpa
terms_text.terms_text e terms_url preenchidos na mesma requisição. Campos omitidos preservam o valor; envie null para limpar.
Plano de taxas
A troca vale a partir da próxima cobrança da organização; cobranças já processadas não mudam. Cada troca geraorganization.updated com
previous_attributes.fee_plan. O guia
Planos de taxas das organizações filhas explica o plano
padrão e quando a taxa vale.
Sandbox e live têm cadastros separados. fee_plan define o preço das vendas
reais e só é aceito para o cadastro live, com chave de produção. Com chave de
teste, omita o campo e o plano atual do cadastro de teste é mantido.
(a) Fixar um plano
Envie o ID de um plano da sua plataforma. A organização paga esse plano mesmo que o padrão mude. Enviar o ID do plano que hoje é o padrão também fixa esse plano.(b) Voltar a seguir o plano padrão
Envie"default" ou null. A organização passa a pagar o plano padrão atual e
acompanha as próximas trocas de padrão.
(c) Atualizar outros campos sem mexer no plano
Omitafee_plan. O plano atual é mantido.
Erros do plano de taxas
O
fee_plan é conferido antes de qualquer gravação: se ele for recusado, os
demais campos enviados na mesma chamada também não são gravados.
Exemplos completos de documento de identidade
Os exemplos abaixo usam uma organização CNPJ, por isso o bloco érepresentative.verification. Em uma organização CPF, envie exatamente o mesmo
conteúdo em individual.verification.
(a) CNH digital
Use o PDF oficial exportado do app CNH Digital emfront e omita back.
(b) CNH física, frente e verso
Use dois arquivos quando enviar fotos da CNH física.(c) RG, frente e verso
O RG sempre exige os dois lados em arquivos separados.(d) CREF completo
Use um único arquivo da carteira aberta, em imagem ou PDF, emfront.
(e) CREF, frente e verso
Use dois arquivos quando a carteira não estiver aberta em um único arquivo.(f) CIN digital
Use o PDF oficial exportado do app gov.br emfront e omita back.
(g) CIN física, frente e verso
Use dois arquivos quando enviar fotos da CIN física.(h) Passaporte
Use somente a página de identificação emfront; back não é aceito.
Resposta
200 OK com o objeto organization completo e já atualizado. A resposta direta não inclui diff.
Erros de acesso
Erros dos blocos de cadastro
Toda recusa de validação é400 com type: "invalid_request_error", code: "invalid_request" e param no caminho exato do campo. As mensagens abaixo são as que a API devolve, literalmente.
Bloco fora do tipo de documento
company
representative e individual
O prefixo do param acompanha o bloco enviado (representative em organizações CNPJ, individual em CPF).
verification
Um arquivo enviado pela API espera 30 dias pelo cadastro (
file.expires_at). Vencido, ele é recusado no campo que o aponta:
Duas recusas do bloco de verificação não trazem
param:
Arquivo não encontrado e arquivo de outra organização compartilham a mesma mensagem — a existência de arquivos de terceiros nunca é revelada.
O bloco
verification só entra em um cadastro aberto. Com a ativação em análise ou aprovada, enviá-lo responde 409:
Os demais blocos do cadastro continuam aceitos nesses estados.
business_profile
payout_account
Uma recusa deste bloco não é de formato e usa um
code próprio, para a sua integração tratar sem ler a mensagem:
terms_acceptance e statement_descriptor
Erros de troca de documento
Webhook
Quando a chamada altera campos visíveis para uma plataforma conectada, a Chargefy emiteorganization.updated para os endpoints da organização da plataforma.
data.object contém o snapshot completo atualizado. data.previous_attributes contém apenas os campos alterados e seus valores anteriores — quando requirements muda, o diff traz o objeto anterior completo. Em uma troca de documento após reprovação, a vinculação com o perfil financeiro reprovado é desativada: activation_status volta para not_submitted, requirements recomeça pelo missing do novo documento e statement_descriptor volta para null.
No webhook, o campo top-level
organization identifica a organização
conectada que mudou. Para reler o estado, use esse valor em GET /v1/organizations/{id}, sem header Organization.
