TF Fiscal
Documentación

Empresas

Ciclo de vida de una empresa emisora en TF Fiscal, cómo una empresa atiende NF-e, CT-e, DC-e y NFS-e, derivación del régimen tributario, habilitación de DC-e y de NFS-e y los códigos de error relacionados.

Qué es una empresa

Una empresa (empresa) es la entidad legal en cuyo nombre se emiten los documentos: el vendedor de un marketplace, una transportadora o un integrador que emite para sí mismo. Toda empresa se identifica por el empresaId devuelto por Registrar empresa, que es la variable de ruta de todos los endpoints de emisión, consulta y cancelación.

PasoEndpointNotas
1 Registrar empresaPOST /openapi/v2/empresasDevuelve empresaId, dceHabilitado y nfseHabilitado; un cuerpo con id actualiza una empresa existente
2 Vincular certificadoPOST /openapi/v1/empresas/{empresaId}/certificadoDigitalCertificado A1 (.pfx / .p12) y su contraseña; multipart o JSON + Base64
3 Registrar webhookPOST /openapi/v1/webhooksUna URL de callback por aplicación, compartida por todos los tipos de documento

Ciclo de vida

  1. Registro: una llamada exitosa a Registrar empresa coloca la empresa en la cola de aprobación de la plataforma. Registrar el mismo CNPJ de nuevo devuelve 10003002; reutilice el empresaId original o envíe una actualización con id.
  2. Certificado: vincule el certificado A1. El certificado debe pertenecer al CNPJ de la empresa (10003010), estar vigente (10003011) y ser distinto del actualmente activo (10003012); una contraseña incorrecta devuelve CER0005. Un envío exitoso reemplaza el certificado anterior.
  3. Aprobación: operaciones aprueba la empresa. La empresa solo emite después de que operaciones la apruebe y el certificado esté vinculado. Emitir antes devuelve 10004004 para NF-e (DCe00008 para DC-e, 10017004 para CT-e). Consulte el avance de la aprobación con operaciones de la plataforma.
  4. Entorno: toda empresa tiene un entorno actual, pruebas Homologacao o producción Producao. Las empresas recién registradas comienzan en pruebas; el cambio a producción es una acción de operaciones, sin API. El valor de entorno en toda solicitud de emisión (ambienteEmissao para NF-e y CT-e, ambiente para DC-e) debe coincidir con el entorno actual de la empresa; una discrepancia devuelve 10004030 (NF-e), 10017010 (CT-e) o DCe00004 (DC-e). Vea Entornos.

Nota: una actualización (cuerpo con id) nunca vuelve a enviar la empresa a revisión ni cambia su estado o entorno.

Una empresa, cuatro tipos de documento

El mismo empresaId, el mismo certificado y el mismo webhook atienden todos los tipos de documento. Lo que cambia es la serie de numeración que cada tipo exige:

Tipo de documentoModeloSerie configurada medianteCampo de entornoCódigo de no emisión
NF-e55emissaoNFeProduto.ambienteProducao (sequencialNFe / serieNFe) en el registroambienteEmissao10004004
CT-e57Configurada del lado de la plataforma; el registro no tiene bloque de CT-e. Sin serie, o con varias habilitadas y ninguna elegida, la emisión devuelve 10017007ambienteEmissao10017004
DC-e99emissaoDCe.ambienteProducao (tipoEmitente, sequencialDCe / serieDCe, siteMarketplace) en el registro o en una actualización con idambienteDCe00008
NFS-e—emissaoNFSe (serieDps y los demás valores por defecto del perfil) en el registro o en una actualización con id, o mantenido por operacionesambienteEmissao10018004
  • emissaoNFeProduto, emissaoDCe y emissaoNFSe son cada uno opcional, pero al menos uno es obligatorio. Una empresa solo de NF-e envía el primero, una empresa solo de DC-e o solo de NFS-e puede omitirlo (no se crea ninguna serie del modelo 55) y enviar más de uno habilita los tipos de documento correspondientes. Omitir los tres devuelve 400 10001001.
  • La serie y el próximo número enviados en el registro son los que se usan en la emisión; después la plataforma gestiona la secuencia.
  • La emisión de CT-e exige además que el CNPJ esté habilitado para CT-e en la SEFAZ estatal; sin ello la SEFAZ rechaza con 230 - IE do emitente não cadastrada, lo que la plataforma no puede resolver.

Derivación del régimen tributario

El régimen de la empresa se deriva de dos booleanos enviados en el registro y no puede cambiarse mediante actualización:

meioptanteSimplesNacionalRégimen
truecualquieraMEI
falsetrueSimples Nacional
falsefalseRégimen normal

El régimen determina la familia de código tributario que un ítem de NF-e puede usar (CSOSN para Simples / MEI, CST para el régimen normal); vea NF-e. También define si regimeApuracaoSn es obligatorio en el perfil de NFS-e, vea más abajo. inscricaoEstadual es obligatoria para emitir NF-e, CT-e y DC-e: si falta devuelve 10003006; una empresa solo de NFS-e no necesita inscripción estatal.

Habilitar DC-e

El DC-e (modelo 99) se habilita con el bloque emissaoDCe:

json
"emissaoDCe": {
"ambienteProducao": {
"tipoEmitente": "Marketplace",
"sequencialDCe": 1,
"serieDCe": "1",
"siteMarketplace": "https://loja.exemplo.com.br"
}
}
  • tipoEmitente es Marketplace (una plataforma que emite en nombre de vendedores no contribuyentes / personas físicas) u OwnIssuer (una empresa que emite para sí misma). Carrier puede registrarse, pero la emisión se rechaza con 10019013. siteMarketplace es obligatorio para Marketplace.
  • Una empresa registrada sin emissaoDCe no queda habilitada para DC-e: el registro se acepta, la respuesta trae dceHabilitado=false y la emisión devuelve DCe00004. Verifique ese campo justo después de registrar.
  • Para habilitar DC-e después, reenvíe el payload de registro con id y el bloque emissaoDCe. La serie del modelo 99 solo avanza: sequencialDCe puede elevar el próximo número, pero nunca reducirlo (400 10001001), y cambiar serieDCe mientras la serie anterior sigue habilitada se rechaza (400 10001001, pase por operaciones).

Habilitar NFS-e

La NFS-e se habilita con el bloque emissaoNFSe. Solo con él la empresa pasa a emitir NFS-e y obtiene su secuencia de numeración. Aquí solo van los datos que no cambian de una nota a otra: código de servicio, CNAE, NBS, alícuota de ISS, retención e IBS/CBS acompañan al servicio vendido y van en el bloque servico de cada emisión.

json
"emissaoNFSe": {
"serieDps": "1",
"sequencialDps": 1,
"regimeApuracaoSn": 1,
"regimeEspecialTributacao": 0
}
CampoTipoObligatorioDescripción
serieDpsstring(1-5 dígitos)NoSerie del DPS / RPS usada al emitir. Toda nota usa este valor; la emisión no acepta una serie propia. Sin este campo, 1
sequencialDpsintegerNoNúmero de la próxima nota a emitir, a partir de 1. Al migrar de otro emisor, envíe el mayor número ya usado más uno para que la numeración continúe donde quedó. Sin este campo, 1. Una vez creada la secuencia, la actualización no la modifica
regimeApuracaoSnintegerObligatorio para ME/EPPCómo el Simples Nacional calcula el impuesto: 1 federal y municipal por el SN / 2 federal por el SN y municipal fijo / 3 federal por el SN y municipal normal. La adhesión al Simples viene de optanteSimplesNacional / mei del nivel superior. Enviarlo en una empresa fuera del Simples se rechaza
regimeEspecialTributacaointegerNoSi hay un tratamiento tributario especial: 0 ninguno / 1 acto cooperativo / 2 estimación / 3 microempresa municipal / 4 notarial y registral / 5 profesional autónomo / 6 sociedad de profesionales. Sin este campo, 0
  • La respuesta del registro pasa a traer nfseHabilitado: { "empresaId": "…", "dceHabilitado": false, "nfseHabilitado": true }. Sin el bloque es false y la emisión devuelve 10018005.
  • En la actualización (cuerpo con id) enviar el bloque sustituye el perfil entero: los opcionales omitidos vuelven al valor por defecto; sin el bloque el perfil no cambia y nfseHabilitado refleja el estado actual. Forzar el estándar municipal es una acción de operaciones y no pasa por este bloque.
  • Reglas estructurales rechazadas en la aceptación (400 10001001): ME/EPP sin regimeApuracaoSn, empresa fuera del Simples con regimeApuracaoSn.
  • Una empresa solo de NFS-e puede omitir emissaoNFeProduto (no se crea ninguna serie del modelo 55) y no necesita inscricaoEstadual.
  • La inscripción municipal (CCM) de São Paulo se toma del inscricaoMunicipal del nivel superior y no se repite en este bloque.

Códigos de error relacionados

codigoHTTPEscenarioAcción
10003002400CNPJ ya registradoLa empresa existe: use el empresaId original o actualice con id
10003000404empresaId no existe o no pertenece a esta aplicaciónVerifique el empresaId
10003006400Datos de registro sin la IEInforme inscricaoEstadual
10003010 / 10003011 / 10003012400CNPJ del certificado discrepante / expirado / idéntico al actualUse el certificado correcto
10003035400Base64 inválido o certificado mayor de 1MB (forma JSON)Corrija la codificación o el archivo
CER0005400La contraseña del certificado no coincideVerifique la contraseña
GW001400Registro: ciudad / estado no se resuelven a un código IBGEVerifique la UF y el nombre de la ciudad
10004004400Empresa no apta para emitir (aún no aprobada o certificado no listo)Espere la aprobación / vincule el certificado
10004030400ambienteEmissao distinto del entorno actual de la empresaEnvíe en el entorno de la empresa o pida a operaciones que lo cambie
10001001400Falló la validación de campos, o error de contrato de registro / actualización (los tres bloques de configuración ausentes, actualización cambiando cnpj / municipio, reducción del cursor de la serie DC-e, cambio de serie, reglas estructurales de emissaoNFSe no cumplidas)Corrija según mensagem

La lista completa está en Códigos de error.