# Consulta SINTEGRA — Inscrição Estadual por CNPJ (RS, PR) (`paulovitor18/sintegra-inscricao-estadual-br`) Actor

Consulte a Inscrição Estadual (IE) e a situação cadastral do contribuinte ICMS por CNPJ nos portais SEFAZ estaduais (RS e PR). Situação normalizada. Pague por resultado.

- **URL**: https://apify.com/paulovitor18/sintegra-inscricao-estadual-br.md
- **Developed by:** [MoreLock](https://apify.com/paulovitor18) (community)
- **Categories:** Business, Automation, Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$300.00 / 1,000 consulta de inscrição estaduals

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js/docs.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python/docs.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## Consulta SINTEGRA — Inscrição Estadual por CNPJ (RS, PR)

Descubra a Inscrição Estadual e a situação cadastral do ICMS de qualquer CNPJ, direto na SEFAZ do estado. Pague só pelo que voltar com resposta.

### Visão geral

Cada CNPJ é consultado no portal oficial da SEFAZ do seu estado e volta com a Inscrição Estadual, a razão social, o endereço, os CNAEs e — o que mais importa — a **situação cadastral normalizada**: um único valor (`ATIVO`, `BAIXADO`, `SUSPENSO`, `INAPTO`, `NAO_INSCRITO`) que significa a mesma coisa em qualquer estado, mesmo que cada SEFAZ escreva diferente. Você compara empresas de RS e PR lado a lado sem traduzir jargão de portal.

Estados na primeira versão: **Rio Grande do Sul (RS)** e **Paraná (PR)**. Novos estados podem ser adicionados sem afetar os que já funcionam.

### Recursos

- **Situação normalizada entre estados** — além do texto bruto da fonte (`situacao_fonte`), um campo `situacao` padronizado e comparável.
- **Lote com UFs misturadas** — uma execução aceita RS e PR juntos; o sistema encaminha cada CNPJ para o portal certo.
- **Cobrança honesta** — só cobra quando a SEFAZ devolveu uma resposta determinada. Portal fora do ar, captcha esgotado ou UF não suportada não geram custo.
- **"Não inscrito" é resposta válida** — confirmar que um CNPJ não tem IE no estado é um resultado útil, e vem explícito.
- **Múltiplas inscrições sinalizadas** — quando um CNPJ tem mais de uma IE na UF, o campo `multi_ie` avisa.

### Exemplo de entrada

```json
{
  "consultas": [
    { "uf": "RS", "cnpj": "88611835000129" },
    { "uf": "PR", "cnpj": "76483817000120" }
  ]
}
````

Ou, para vários CNPJs de um mesmo estado, use o atalho `uf` + `docs`:

```json
{ "uf": "RS", "docs": ["88611835000129", "84429695000111"] }
```

### Exemplo de saída

```json
{
  "uf": "RS",
  "cnpj": "88611835000129",
  "ie": "029/0000157",
  "razao_social": "MARCOPOLO S.A.",
  "nome_fantasia": "MARCOPOLO",
  "situacao": "ATIVO",
  "situacao_fonte": "ATIVO",
  "endereco": {
    "logradouro": "AV MARCOPOLO", "numero": "280", "bairro": "MARCOPOLO",
    "municipio": "CAXIAS DO SUL", "uf": "RS", "cep": "95086-460"
  },
  "cnae_principal": "2920401 - FABRICACAO DE CAMINHOES E ONIBUS",
  "cnae_secundarios": ["2930102 - FABRICACAO DE CARROCERIAS PARA ONIBUS"],
  "natureza_juridica": "2046 - SOCIEDADE ANONIMA ABERTA",
  "regime_tributario": "GERAL",
  "inicio_atividade": "06/08/1949",
  "multi_ie": false,
  "status": "OK",
  "url_fonte": "https://www.sefaz.rs.gov.br/consultas/contribuinte",
  "consulted_at": "2026-07-12T00:00:00.000Z"
}
```

### Parâmetros

| Campo | Tipo | Descrição |
|---|---|---|
| `consultas` | Lista | Lista de `{ uf, cnpj }`. Use para misturar estados numa execução. |
| `uf` | Texto | UF padrão (`RS` ou `PR`) aplicada aos CNPJs de `docs`. |
| `docs` | Lista | CNPJs consultados na UF padrão. Atalho para lote de uma única UF. |
| `maxCaptchaAttempts` | Número | Tentativas de captcha por consulta no PR (padrão 25; cada tentativa recarrega uma imagem nova, sem custo extra). |
| `proxyConfiguration` | Configuração | Proxy residencial BR, exigido só pelo PR. Deixe no padrão. |

### Dicas

- Misture UFs livremente em `consultas` — não é preciso separar por estado.
- O PR exige proxy residencial do Brasil e resolve um captcha de imagem; por isso é mais lento que o RS. Rode lotes de PR com folga de tempo.
- Use `situacao` (normalizada) para filtrar/agrupar e `situacao_fonte` quando precisar do texto exato do portal.

### Casos de uso

- **Entrada de fornecedor** — confirmar que a IE existe e está ativa antes de emitir nota.
- **Higienização de cadastro** — varrer a base de clientes e marcar quem está baixado/suspenso.
- **Due diligence e KYB (verificação de empresas/fornecedores)** — cruzar situação cadastral estadual com outras fontes de risco.
- **Crédito e antifraude** — sinalizar CNPJs sem IE no estado onde dizem operar.
- **Compliance fiscal** — checar regime tributário e enquadramento por contribuinte.
- **Enriquecimento de leads B2B** — anexar razão social, CNAE e endereço a uma lista de CNPJs.

### Perguntas frequentes

**Quais estados são suportados?** RS e PR nesta primeira versão. CNPJ com UF fora da lista volta com `status: UF_NAO_SUPORTADA` e não é cobrado.

**"Não inscrito" conta como resultado?** Sim. Confirmar que um CNPJ não tem IE no estado é uma resposta legítima (`status: NAO_INSCRITO`) e é cobrada como qualquer consulta com resposta.

**E se o portal cair ou o captcha não ceder?** O item volta com `status: ERRO_FONTE` ou `CAPTCHA_FALHOU`, resultado nulo e **sem cobrança**. Você só paga pelo que teve resposta.

**Um CNPJ pode ter mais de uma IE?** Pode. Quando isso ocorre, `multi_ie` vem `true`.

**Os dados são oficiais?** Sim, vêm direto do portal da SEFAZ de cada estado no momento da consulta (campo `consulted_at`). São informações declaradas pelo contribuinte e não substituem certidão.

### Preço

**US$ 0,30 por consulta** com resposta. Pague por resultado: cada consulta que volta com situação **determinada** — `ATIVO`, `BAIXADO`, `SUSPENSO`, `INAPTO` ou `NAO_INSCRITO` — conta como um resultado cobrável. Consultas que falham por portal fora do ar, captcha esgotado, CNPJ inválido ou UF não suportada **não são cobradas** — você só paga pelo que teve resposta.

> **Sobre o PR:** o portal do Paraná é protegido por captcha de imagem e exige proxy residencial, então a consulta é mais lenta e, ocasionalmente, pode voltar com `ERRO_FONTE` (sem cobrança) numa tentativa — rode o lote com folga de tempo. O RS é rápido e estável.

### Actors relacionados

- [Consulta CNPJ em Lote — Dados da Receita Federal](https://apify.com/paulovitor18/cnpj-bulk-lookup) — situação cadastral, sócios, CNAE e endereço por CNPJ.
- [Consulta CEP em Lote — Endereços Brasileiros](https://apify.com/paulovitor18/cep-bulk-lookup) — endereço completo a partir do CEP.
- [Brazil Due Diligence — CNPJ Registry + Reclame Aqui](https://apify.com/paulovitor18/brazil-company-due-diligence) — registro + reputação por CNPJ.

### Changelog

- **0.1** — Primeira versão com RS (consulta direta, com resolução automática do desafio de segurança) e PR (navegador + proxy residencial brasileiro + leitura automática do captcha). Situação normalizada entre UFs, cobrança honesta.

### Contato

Dúvidas, bugs ou pedido de novo estado: aba **Issues** do Actor.

# Actor input Schema

## `consultas` (type: `array`):

Lista de consultas. Cada item é um objeto { "uf": "RS", "cnpj": "88611835000129" }. UFs suportadas: RS, PR. Use esta forma para misturar UFs numa mesma execução.

## `uf` (type: `string`):

UF aplicada aos CNPJs informados em "docs" abaixo. Atalho para não repetir a UF quando todos os CNPJs são do mesmo estado.

## `docs` (type: `array`):

Lista de CNPJs consultados na UF padrão selecionada acima. Conveniência para lote de uma única UF.

## `maxCaptchaAttempts` (type: `integer`):

O portal do PR usa captcha de imagem; cada tentativa recarrega uma imagem nova (grátis). RS não usa captcha de imagem (resolve um desafio de segurança automaticamente).

## `proxyConfiguration` (type: `object`):

PR é IP-gated e exige proxy residencial do Brasil (datacenter é bloqueado). RS não usa proxy. Deixe no padrão.

## Actor input object example

```json
{
  "consultas": [],
  "uf": "",
  "docs": [],
  "maxCaptchaAttempts": 25,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ],
    "apifyProxyCountry": "BR"
  }
}
```

# Actor output Schema

## `dados` (type: `string`):

Itens consultados nesta execução, no formato descrito em dataset\_schema.json.

## `resumo` (type: `string`):

Contadores por status desta execução.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {};

// Run the Actor and wait for it to finish
const run = await client.actor("paulovitor18/sintegra-inscricao-estadual-br").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {}

# Run the Actor and wait for it to finish
run = client.actor("paulovitor18/sintegra-inscricao-estadual-br").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{}' |
apify call paulovitor18/sintegra-inscricao-estadual-br --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=paulovitor18/sintegra-inscricao-estadual-br",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Consulta SINTEGRA — Inscrição Estadual por CNPJ (RS, PR)",
        "description": "Consulte a Inscrição Estadual (IE) e a situação cadastral do contribuinte ICMS por CNPJ nos portais SEFAZ estaduais (RS e PR). Situação normalizada. Pague por resultado.",
        "version": "0.0",
        "x-build-id": "adrb1a7A2GdhR58hv"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/paulovitor18~sintegra-inscricao-estadual-br/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-paulovitor18-sintegra-inscricao-estadual-br",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/paulovitor18~sintegra-inscricao-estadual-br/runs": {
            "post": {
                "operationId": "runs-sync-paulovitor18-sintegra-inscricao-estadual-br",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/paulovitor18~sintegra-inscricao-estadual-br/run-sync": {
            "post": {
                "operationId": "run-sync-paulovitor18-sintegra-inscricao-estadual-br",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "consultas": {
                        "title": "Consultas (UF + CNPJ)",
                        "type": "array",
                        "description": "Lista de consultas. Cada item é um objeto { \"uf\": \"RS\", \"cnpj\": \"88611835000129\" }. UFs suportadas: RS, PR. Use esta forma para misturar UFs numa mesma execução.",
                        "default": []
                    },
                    "uf": {
                        "title": "UF padrão (para a lista \"docs\")",
                        "enum": [
                            "",
                            "RS",
                            "PR"
                        ],
                        "type": "string",
                        "description": "UF aplicada aos CNPJs informados em \"docs\" abaixo. Atalho para não repetir a UF quando todos os CNPJs são do mesmo estado.",
                        "default": ""
                    },
                    "docs": {
                        "title": "CNPJs (usam a UF padrão)",
                        "type": "array",
                        "description": "Lista de CNPJs consultados na UF padrão selecionada acima. Conveniência para lote de uma única UF.",
                        "default": [],
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxCaptchaAttempts": {
                        "title": "Tentativas de captcha por consulta (só PR)",
                        "minimum": 1,
                        "maximum": 60,
                        "type": "integer",
                        "description": "O portal do PR usa captcha de imagem; cada tentativa recarrega uma imagem nova (grátis). RS não usa captcha de imagem (resolve um desafio de segurança automaticamente).",
                        "default": 25
                    },
                    "proxyConfiguration": {
                        "title": "Proxy (usado apenas nas UFs que exigem — PR)",
                        "type": "object",
                        "description": "PR é IP-gated e exige proxy residencial do Brasil (datacenter é bloqueado). RS não usa proxy. Deixe no padrão.",
                        "default": {
                            "useApifyProxy": true,
                            "apifyProxyGroups": [
                                "RESIDENTIAL"
                            ],
                            "apifyProxyCountry": "BR"
                        }
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
