NCM
Nomenclatura Comum do Mercosul
Classificação de produtos usada pra fins de tributação e comércio exterior, direto do Portal Único do Siscomex.
Mercosul goods nomenclature
Product classification used for taxation and foreign trade purposes, straight from the Portal Único do Siscomex.
SYNC resposta na mesma chamada answers in the same call
Endpoints
Endpoints
/api/v1/ncm
lista completa, ~10 mil códigos
full list, ~10 thousand codes
/api/v1/ncm/{codigo}
busca um código NCM
looks up one NCM code
Parâmetros
Parameters
| Nome | Name | Onde | In | Descrição | Description |
|---|---|---|---|---|---|
codigo |
path | 8 dígitos, com ou sem pontuação (33051000 ou 3305.10.00) |
8 digits, with or without punctuation (33051000 or 3305.10.00) |
Exemplo
Example
curl https://api.alicercelabs.com.br/api/v1/ncm/33051000 \
-H "Authorization: Bearer <token>"
{
"success": true,
"data": {
"codigo": "3305.10.00",
"descricao": "- Xampus",
"data_inicio": "01/04/2022",
"data_fim": "31/12/9999",
"tipo_ato": "Res Gecex",
"numero_ato": "272",
"ano_ato": "2021"
},
"meta": { "elapsed_ms": 0, "request_id": "..." }
}
Erros possíveis
Possible errors
| Status | Motivo | Reason |
|---|---|---|
| 400 | código não tem 8 dígitos | code doesn't have 8 digits |
| 401 | token ausente ou inválido | missing or invalid token |
| 404 | código NCM não encontrado | NCM code not found |
| 429 | limite de taxa excedido | rate limit exceeded |
Cobertura
Coverage
Tabela oficial, atualizada por ato normativo (Resolução Camex/Gecex). ~10.500 códigos.
Official table, updated by normative act (Camex/Gecex resolution). ~10,500 codes.
Usando o SDK
Using the SDK
SDKs oficiais: Go · Python · JavaScript.
Official SDKs: Go · Python · JavaScript.
Buscar um código NCM
Look up an NCM code
import (
"context"
"fmt"
alicercelabs "github.com/alicercelabs/alicercesdk-go"
)
client := alicercelabs.New("alk_...")
ctx := context.Background()
ncm, err := client.NCM.Get(ctx, "33051000")
if err != nil {
panic(err)
}
fmt.Println(ncm.Descricao)from alicercelabs import AlicerceLabs
client = AlicerceLabs(api_key="alk_...")
ncm = client.ncm.get("33051000")
print(ncm["descricao"])import { AlicerceLabs } from "alicercesdk-javascript";
const client = new AlicerceLabs("alk_...");
const ncm = await client.ncm.get("33051000");
console.log(ncm.descricao);Limites
Limits
100/dia · 4/hora sem token, por IP chamador; com uma API key (gerada no painel), 1.000/dia · 41/hora.
100/day · 4/hour without a token, per calling IP; with an API key (generated in the panel), 1,000/day · 41/hour.