engineAPIengineAPI
// guias

Transferência de emissor entre parceiros

Como solicitar a transferência de um CNPJ que já está cadastrado por outro parceiro da plataforma. Fluxo com aprovação manual, como portabilidade de número.

Transferência de emissor entre parceiros

Cada CNPJ só pode existir uma vez na plataforma como emissor. Isso é de propósito: a numeração fiscal (série e número da nota) é controlada por CNPJ, e dois sistemas emitindo pelo mesmo CNPJ colidiriam na SEFAZ.

Quando você tenta cadastrar um CNPJ que já é emissor de outro parceiro, o cadastro responde 409 com o código CNPJ_CONFLICT_OTHER_PARTNER (contra CNPJ_CONFLICT_SAME_PARTNER quando o CNPJ já é seu e você pode reusá-lo via GET /v1/companies). Para o caso de outro parceiro, existe um fluxo de transferência, parecido com a portabilidade de número de telefone: a titularidade do CNPJ, com a numeração junto, muda de um parceiro para o outro.

A transferência nunca é automática — passa por aprovação manual da plataforma.

Fluxo

  1. Solicitar — você abre uma solicitação de transferência para o CNPJ:

    http
    POST /v1/companies/transfer-request
    x-api-key: ek_live_...
    Content-Type: application/json
    
    { "cnpj": "11222333000181", "reason": "cliente migrou do parceiro X" }
    

    Resposta: { "id": "...", "status": "PENDING", "createdAt": "..." }. Nada é transferido ainda. A resposta nunca revela quem é o dono atual do CNPJ.

  2. Aprovação — a plataforma (superadmin) revisa a solicitação, valida o consentimento da empresa, e aprova ou rejeita. O parceiro que hoje tem o CNPJ é notificado.

  3. Transferido — na aprovação, o emissor passa a ser seu, com a numeração fiscal intacta (a próxima nota continua a sequência, não reinicia). O certificado A1 e o CSC seguem com o emissor.

Enquanto a solicitação está PENDING, o cadastro do seu cliente fica aguardando — não é um beco sem saída.

Cancelar a própria solicitação

Se abriu por engano, você pode cancelar enquanto está pendente:

http
POST /v1/companies/transfer-request/:id/cancel
x-api-key: ek_live_...

Só o parceiro que abriu a solicitação pode cancelá-la.

Status possíveis

| Status | Significado | |--------|-------------| | PENDING | Aguardando decisão da plataforma | | APPROVED | Emissor transferido para você | | REJECTED | Transferência negada | | CANCELLED | Cancelada (por você ou substituída por outra aprovação) |