---
title: "Status da SEFAZ para a DC-e"
description: "Como conferir, antes de emitir, se o serviço de autorização da DC-e na SEFAZ-PR está em operação — em produção ou em homologação."
source_url: https://nfe.io/docs/documentacao/declaracao-de-conteudo-eletronica/integracao-api/status-da-sefaz/
product: documentacao
last_updated: 2026-10-23
tags: ["how-to", "dce", "consulta", "sefaz"]
integration: ["api"]
---

# Status da SEFAZ para a DC-e

```
GET /v1/subscriptions/{subscriptionId}/taxpayers/{taxpayerId}/sefaz/dce-status?environment=2
```

Pergunta à SEFAZ-PR se o serviço de autorização da DC-e está em operação no ambiente pedido. Use antes de emitir — ou antes de um lote grande — para saber se uma falha de transmissão é sua ou do autorizador.

`environment` é **obrigatório** e usa os mesmos valores do corpo da [emissão](./emitir-uma-declaracao-de-conteudo.md): `1` produção, `2` homologação. Pergunte pelo ambiente em que a empresa emite.

A SEFAZ exige certificado digital em toda consulta, e esta usa o certificado **da empresa da URL** (`{taxpayerId}`). Por isso a rota leva a empresa, e confere que ela é da assinatura antes de consultar.

## A resposta

```json title="200 — serviço em operação"
{
  "environment": 2,
  "online": true,
  "cStat": 107,
  "message": "Servico em Operacao",
  "checkedAt": "2026-10-23T14:05:11.482Z"
}
```

| Campo | O que é |
|---|---|
| `environment` | O ambiente consultado: `1` produção, `2` homologação |
| `online` | `true` **só** quando a SEFAZ respondeu `cStat` `107` (serviço em operação) |
| `cStat` | O código de status que a SEFAZ respondeu |
| `message` | O motivo (`xMotivo`) que a SEFAZ respondeu, em português, como veio |
| `checkedAt` | O instante em que a SEFAZ foi de fato consultada |

:::note A resposta pode vir de cache
A resposta da SEFAZ fica guardada por até **5 minutos** por ambiente. Uma resposta em cache mantém o `checkedAt` original — é por ele que você sabe a idade da informação.
:::

:::caution `online: false` é uma resposta da SEFAZ, não uma falha de comunicação
`online: false` só aparece quando a SEFAZ respondeu com um `cStat` diferente de `107`. Quando não deu para perguntar — SEFAZ fora do alcance, certificado indisponível —, a resposta é um erro (`503` ou `422`, abaixo), nunca `online: false`.
:::

## Erros

| Código | O que significa |
|---|---|
| `400` | `environment` ausente, fora de `1` e `2`, ou não alcançável a partir deste serviço |
| `401` | Token ausente, inválido ou expirado — peça um novo token ([veja Autenticação](../autenticacao.md)) |
| `403` | A assinatura da URL não é a do token nem uma que o usuário acessa (`type` termina em `subscription-scope-undetermined`) |
| `404` | Empresa da URL inexistente ou fora da assinatura (`type` termina em `company-not-in-subscription`) |
| `422` | A empresa não tem certificado que sirva para autenticar na SEFAZ — cadastre ou renove o certificado da empresa |
| `503` | A SEFAZ não pôde ser alcançada ou respondeu com falha, o certificado da empresa está momentaneamente indisponível, ou a titularidade da empresa não pôde ser verificada agora. Tente de novo |

Os parâmetros e o formato completo estão na [referência da operação](/desenvolvedores/rest-api/declaracao-de-conteudo-v1/get-sefaz-dce-status).

## Veja também

- [Emitir uma DC-e](./emitir-uma-declaracao-de-conteudo.md)
- [Credenciamento](../credenciamento.md)
- [Como consultar uma DC-e](./como-consultar-uma-declaracao-de-conteudo.md)
