Skip to main content
Atualiza campos públicos da organização e os blocos do cadastro financeiro (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.
O ID da URL sempre prevalece. Um header Organization diferente não troca o alvo da atualização. Para evitar atualizar a conta errada, não envie esse header nesta rota.

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;
  • null ou "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.
Exige chave de produção (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.
Use metadata para guardar referências do seu sistema na relação entre a plataforma autenticada e a organização conectada.
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 quando checkout_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.
Não envie 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 gera organization.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

Omita fee_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 em front 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, em front.

(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 em front 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 em front; 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 emite organization.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.