npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

@linkiez/tinyerpv2-sdk

v1.0.5

Published

SDK for TinyERP v2 API

Readme

TinyERP V2 SDK

semantic-release: angular GitHub release License: MIT

SDK TypeScript para integração com a API V2 do TinyERP.

📋 Índice

🚀 Instalação

npm install @linkiez/tinyerpv2-sdk
# or
yarn add @linkiez/tinyerpv2-sdk

⚙️ Configuração

Obtendo o Token de Acesso

  1. Acesse Menu > Configurações > Aba Geral > Aplicativos
  2. Clique em + novo aplicativo
  3. Preencha o Nome do aplicativo
  4. Após salvar, copie as chaves de acesso

⚠️ Atenção: As chaves são sensíveis e dão acesso total aos dados da conta.

Limites de Requisições

As requisições podem ser limitadas se forem feitas muitas chamadas em um curto período de tempo. Consulte a documentação oficial do TinyERP para mais informações sobre os limites específicos do seu plano.

📖 Uso Básico

import { TinyERPv2 } from '@linkiez/tinyerpv2-sdk';

// Obter informações da conta
const info = await TinyERPv2.infoObter('seu_token_aqui');

// Pesquisar contatos
const contatos = await TinyERPv2.contatoPesquisar('seu_token_aqui', {
  nome: 'João',
});

// Incluir produto
const produto = await TinyERPv2.produtoIncluir('seu_token_aqui', {
  nome: 'Produto Teste',
  preco: 100.0,
});

🔌 Módulos Disponíveis

Este SDK implementa os principais serviços da API V2 do TinyERP.

Info

  • infoObter - Obter informações da conta

Contatos

  • contatoPesquisar - Pesquisar contatos
  • contatoObter - Obter contato específico
  • contatoIncluir - Incluir novo contato
  • contatoAlterar - Alterar contato existente

Produtos

  • produtoPesquisar - Pesquisar produtos
  • produtoObter - Obter produto específico
  • produtoIncluir - Incluir novo produto
  • produtoAlterar - Alterar produto existente
  • produtoEstoque - Consultar estoque

Vendedores

  • vendedorPesquisar - Pesquisar vendedores

CRM

  • crmPesquisar - Pesquisar assuntos CRM
  • crmObterAssunto - Obter assunto específico
  • crmIncluirAssunto - Incluir novo assunto
  • crmAlterarEstagioAssunto - Alterar estágio do assunto
  • crmListaEstagios - Listar estágios disponíveis

Pedidos

  • pedidoAlterar - Alterar pedido
  • pedidoGerarOrdemProducao - Gerar ordem de produção
  • pedidoGerarNotaFiscal - Gerar nota fiscal
  • pedidoAlterarSituacao - Alterar situação do pedido
  • pedidoMarcadoresIncluir - Incluir marcadores
  • pedidoMarcadoresRemover - Remover marcadores
  • pedidoLancarEstoque - Lançar estoque
  • pedidoEstornarEstoque - Estornar estoque
  • pedidoLancarContas - Lançar contas
  • pedidoEstornarContas - Estornar contas
  • pedidoCadastrarCodigoRastreamento - Cadastrar código de rastreamento

Notas Fiscais

  • notaFiscalPesquisar - Pesquisar notas fiscais
  • notaFiscalObter - Obter nota fiscal específica
  • notaFiscalIncluir - Incluir nova nota fiscal
  • notaFiscalEmitir - Emitir nota fiscal

Contas

  • contaReceberIncluir - Incluir conta a receber
  • contaReceberPesquisar - Pesquisar contas a receber
  • contaPagarIncluir - Incluir conta a pagar
  • contaPagarPesquisar - Pesquisar contas a pagar

💡 Exemplos de Uso

Pesquisar e Atualizar Produto

// Pesquisar produto
const produtos = await TinyERPv2.produtoPesquisar(token, {
  nome: 'Teclado',
});

// Obter produto específico
const produto = await TinyERPv2.produtoObter(token, { id: produtos[0].id });

// Alterar produto
await TinyERPv2.produtoAlterar(token, {
  id: produto.id,
  preco: 150.0,
});

Gerenciar Pedido

// Alterar pedido
await TinyERPv2.pedidoAlterar(token, {
  id: 12345,
  situacao: 'aprovado',
});

// Gerar nota fiscal
const nf = await TinyERPv2.pedidoGerarNotaFiscal(token, {
  id: 12345,
});

// Lançar estoque
await TinyERPv2.pedidoLancarEstoque(token, {
  id: 12345,
});

⚠️ Tratamento de Erros

try {
  const result = await TinyERPv2.contatoObter(token, { id: 999 });
} catch (error) {
  if (error.message.includes('HTTP error')) {
    console.error('Erro de conexão com API');
  } else {
    console.error('Erro:', error);
  }
}

🛠️ Desenvolvimento

Scripts Disponíveis

# Build
yarn build

# Testes
yarn test
yarn test:watch
yarn test:coverage

# Formatação
yarn prettier
yarn prettier:check

# Limpeza
yarn clean

Estrutura do Projeto

src/
├── index.ts                    # Exportação principal e objeto TinyERPv2
├── index.test.ts               # Testes unitários
├── controllers/                # Controladores e lógica de negócio
│   ├── index.ts
│   └── webhooks/               # Controladores de webhooks
│       ├── index.ts
│       └── notificacaoVendaController.ts
└── types/                      # Definições de tipos TypeScript
    ├── BaseRequest.ts          # Tipo base para requisições
    ├── BaseResponse.ts         # Tipo base para respostas
    ├── CodigoErro.ts           # Códigos de erro da API
    ├── StatusProcessamento.ts  # Status de processamento
    ├── index.ts                # Exportação de todos os tipos
    ├── contas-pagar/           # Tipos para contas a pagar
    ├── contas-receber/         # Tipos para contas a receber
    ├── contatos/               # Tipos para contatos
    ├── crm/                    # Tipos para CRM
    ├── info/                   # Tipos para informações
    ├── notas-fiscais/          # Tipos para notas fiscais
    ├── pedidos/                # Tipos para pedidos
    ├── produtos/               # Tipos para produtos
    ├── vendedores/             # Tipos para vendedores
    └── webhooks/               # Tipos para webhooks

⚖️ Aviso Legal

Este projeto não possui nenhuma associação, afiliação ou endosso oficial da Olist ou TinyERP. É um projeto independente desenvolvido por @linkiez para facilitar a integração com a API V2 do TinyERP.

As marcas TinyERP e Olist são propriedades de seus respectivos donos.

📝 Licença

MIT © @linkiez

🔗 Links Úteis

👤 Autor

@linkiez - Desenvolvedor e mantenedor do projeto