@linkiez/tinyerpv2-sdk
v1.0.5
Published
SDK for TinyERP v2 API
Maintainers
Readme
TinyERP V2 SDK
SDK TypeScript para integração com a API V2 do TinyERP.
📋 Índice
- TinyERP V2 SDK
🚀 Instalação
npm install @linkiez/tinyerpv2-sdk
# or
yarn add @linkiez/tinyerpv2-sdk⚙️ Configuração
Obtendo o Token de Acesso
- Acesse Menu > Configurações > Aba Geral > Aplicativos
- Clique em + novo aplicativo
- Preencha o Nome do aplicativo
- 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 contatoscontatoObter- Obter contato específicocontatoIncluir- Incluir novo contatocontatoAlterar- Alterar contato existente
Produtos
produtoPesquisar- Pesquisar produtosprodutoObter- Obter produto específicoprodutoIncluir- Incluir novo produtoprodutoAlterar- Alterar produto existenteprodutoEstoque- Consultar estoque
Vendedores
vendedorPesquisar- Pesquisar vendedores
CRM
crmPesquisar- Pesquisar assuntos CRMcrmObterAssunto- Obter assunto específicocrmIncluirAssunto- Incluir novo assuntocrmAlterarEstagioAssunto- Alterar estágio do assuntocrmListaEstagios- Listar estágios disponíveis
Pedidos
pedidoAlterar- Alterar pedidopedidoGerarOrdemProducao- Gerar ordem de produçãopedidoGerarNotaFiscal- Gerar nota fiscalpedidoAlterarSituacao- Alterar situação do pedidopedidoMarcadoresIncluir- Incluir marcadorespedidoMarcadoresRemover- Remover marcadorespedidoLancarEstoque- Lançar estoquepedidoEstornarEstoque- Estornar estoquepedidoLancarContas- Lançar contaspedidoEstornarContas- Estornar contaspedidoCadastrarCodigoRastreamento- Cadastrar código de rastreamento
Notas Fiscais
notaFiscalPesquisar- Pesquisar notas fiscaisnotaFiscalObter- Obter nota fiscal específicanotaFiscalIncluir- Incluir nova nota fiscalnotaFiscalEmitir- Emitir nota fiscal
Contas
contaReceberIncluir- Incluir conta a recebercontaReceberPesquisar- Pesquisar contas a recebercontaPagarIncluir- Incluir conta a pagarcontaPagarPesquisar- 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 cleanEstrutura 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
