Fatura

5 funções do TermoIntranetAPI para fatura.

// npm install termo_core --save-exact
import * as intranet from "termo_core/intranet";
// ou: import { intranet } from "termo_core";
FunçãoRotaO que faz
buscar_paginador_faturaGET /faturaLista faturas com paginação por cursor
buscar_auto_complete_faturaGET /fatura/autocompleteLista básica para seleção
buscar_pelo_filtro_faturaGET /fatura/filtroBusca por filtro
buscar_total_faturaGET /fatura/totalTotal de registros do paginador
buscar_pelo_id_faturaGET /fatura/{id}Busca pelo id

buscar_paginador_fatura

GET/fatura Exige credencial

Lista faturas com paginação por cursor

Exige qualquer permissão da área faturas. Ordena da data de emissão mais recente para a mais antiga e, no empate, pelo id decrescente, sempre 50 itens por página. Só leitura, a partir do banco da intranet. Sem cursor vem a primeira página; para a seguinte, envie em cursor o proximo_cursor recebido (nulo na última página). O total de registros não vem aqui: está em GET /fatura/total, para a lista não esperar o count(*).

function buscar_paginador_fatura(
  credencial_de_acesso: CredencialDeAcesso,
  parametros: ParametrosDeBuscarPaginadorFatura = {},
  opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.PaginaFaturaResumoI64>
Exemplo
import { CredencialDeAcesso } from "termo_core";
import { buscar_paginador_fatura } from "termo_core/intranet";

const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_paginador_fatura(credencial_de_acesso, { cursor: 1 });

Argumentos

Nome

Tipo

Retorno: Promise<tipos.PaginaFaturaResumoI64> · Rust: Result<tipos::PaginaFaturaResumoI64, ErroAoChamarServico> · veja PaginaFaturaResumoI64.

buscar_auto_complete_fatura

GET/fatura/autocomplete Exige credencial

Lista básica para seleção

Exige qualquer permissão da área faturas. Devolve só id, número, série e nome do cliente, da emissão mais recente para a mais antiga, para escolher uma fatura. busca procura por trecho do nome do cliente ou, quando é um número, pelo número exato da fatura. Paginação por cursor: tamanho tem padrão 10 e máximo 100, e para a página seguinte envie em cursor o proximo_cursor recebido.

function buscar_auto_complete_fatura(
  credencial_de_acesso: CredencialDeAcesso,
  parametros: ParametrosDeBuscarAutoCompleteFatura = {},
  opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.PaginaFaturaAutoCompleteI64>
Exemplo
import { CredencialDeAcesso } from "termo_core";
import { buscar_auto_complete_fatura } from "termo_core/intranet";

const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_auto_complete_fatura(credencial_de_acesso, { busca: "..." });

Argumentos

Nome

Tipo

Retorno: Promise<tipos.PaginaFaturaAutoCompleteI64> · Rust: Result<tipos::PaginaFaturaAutoCompleteI64, ErroAoChamarServico> · veja PaginaFaturaAutoCompleteI64.

buscar_pelo_filtro_fatura

GET/fatura/filtro Exige credencial

Busca por filtro

Exige qualquer permissão da área faturas. Aceita numero, cliente, cpf_cnpj, vendedor, numero_pedido, situacao, emitida_de e emitida_ate (datas em AAAA-MM-DD); informe ao menos um. Devolve no máximo 100 registros.

function buscar_pelo_filtro_fatura(
  credencial_de_acesso: CredencialDeAcesso,
  parametros: ParametrosDeBuscarPeloFiltroFatura = {},
  opcoes_da_chamada?: OpcoesDaChamada,
): Promise<Array<tipos.FaturaResumo>>
Exemplo
import { CredencialDeAcesso } from "termo_core";
import { buscar_pelo_filtro_fatura } from "termo_core/intranet";

const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_pelo_filtro_fatura(credencial_de_acesso, { numero: "..." });

Argumentos

Nome

Tipo

Retorno: Promise<Array<tipos.FaturaResumo>> · Rust: Result<Vec<tipos::FaturaResumo>, ErroAoChamarServico>

buscar_total_fatura

GET/fatura/total Exige credencial

Total de registros do paginador

Exige qualquer permissão da área faturas. Devolve só o count(*) com os mesmos filtros de GET /fatura, para o frontend montar o paginador sem atrasar a lista: a tela pede a primeira página e o total em paralelo. Conta as mesmas faturas do banco da intranet que a listagem devolve.

function buscar_total_fatura(
  credencial_de_acesso: CredencialDeAcesso,
  opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.Total>
Exemplo
import { CredencialDeAcesso } from "termo_core";
import { buscar_total_fatura } from "termo_core/intranet";

const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_total_fatura(credencial_de_acesso);

Argumentos

Nome

Tipo

Retorno: Promise<tipos.Total> · Rust: Result<tipos::Total, ErroAoChamarServico> · veja Total.

buscar_pelo_id_fatura

GET/fatura/{id} Exige credencial

Busca pelo id

Exige qualquer permissão da área faturas. Devolve a fatura completa, com itens e parcelas.

function buscar_pelo_id_fatura(
  credencial_de_acesso: CredencialDeAcesso,
  id: number,
  opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.Fatura>
Exemplo
import { CredencialDeAcesso } from "termo_core";
import { buscar_pelo_id_fatura } from "termo_core/intranet";

const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_pelo_id_fatura(credencial_de_acesso, id);

Argumentos

Nome

Tipo

Retorno: Promise<tipos.Fatura> · Rust: Result<tipos::Fatura, ErroAoChamarServico> · veja Fatura.

Tipos

Tipos usados pelas funções desta página. O nome é o mesmo nos dois pacotes.

Fatura

import type { Fatura } from "termo_core/intranet";

export interface Fatura {
  base_icms?: number | null;
  base_icms_st?: number | null;
  chave_acesso?: string | null;
  cliente_bairro?: string | null;
  cliente_cep?: string | null;
  cliente_cidade?: string | null;
  cliente_codigo?: string | null;
  cliente_complemento?: string | null;
  cliente_cpf_cnpj?: string | null;
  cliente_email?: string | null;
  cliente_inscricao_estadual?: string | null;
  cliente_logradouro?: string | null;
  cliente_nome?: string | null;
  cliente_numero?: string | null;
  cliente_telefone?: string | null;
  cliente_tipo_pessoa?: string | null;
  cliente_uf?: string | null;
  codigo_rastreamento?: string | null;
  condicao_pagamento?: string | null;
  descricao_situacao?: string | null;
  emitida_em?: string | null;
  entrega_bairro?: string | null;
  entrega_cep?: string | null;
  entrega_cidade?: string | null;
  entrega_complemento?: string | null;
  entrega_cpf_cnpj?: string | null;
  entrega_logradouro?: string | null;
  entrega_nome?: string | null;
  entrega_numero?: string | null;
  entrega_uf?: string | null;
  especie_volumes?: string | null;
  forma_pagamento?: string | null;
  frete_por_conta?: string | null;
  id: number;
  id_tiny: number;
  itens: Array<FaturaItem>;
  natureza_operacao?: string | null;
  numero?: number | null;
  numero_ecommerce?: string | null;
  numero_pedido?: number | null;
  observacoes?: string | null;
  parcelas: Array<FaturaParcela>;
  peso_bruto?: number | null;
  peso_liquido?: number | null;
  quantidade_volumes?: number | null;
  saida_em?: string | null;
  serie?: number | null;
  situacao?: number | null;
  transportadora_cidade?: string | null;
  transportadora_cpf_cnpj?: string | null;
  transportadora_nome?: string | null;
  transportadora_uf?: string | null;
  url_rastreamento?: string | null;
  valor_desconto?: number | null;
  valor_faturado?: number | null;
  valor_frete?: number | null;
  valor_icms?: number | null;
  valor_icms_st?: number | null;
  valor_ipi?: number | null;
  valor_outros?: number | null;
  valor_produtos?: number | null;
  valor_seguro?: number | null;
  valor_total?: number | null;
  vendedor?: string | null;
}

FaturaItem

import type { FaturaItem } from "termo_core/intranet";

export interface FaturaItem {
  cfop?: string | null;
  codigo?: string | null;
  descricao?: string | null;
  id: number;
  ncm?: string | null;
  quantidade?: number | null;
  unidade?: string | null;
  valor_total?: number | null;
  valor_unitario?: number | null;
}

FaturaParcela

import type { FaturaParcela } from "termo_core/intranet";

export interface FaturaParcela {
  dias?: number | null;
  forma_pagamento?: string | null;
  id: number;
  meio_pagamento?: string | null;
  observacao?: string | null;
  valor?: number | null;
  vencimento?: string | null;
}

FaturaResumo

import type { FaturaResumo } from "termo_core/intranet";

export interface FaturaResumo {
  cliente_cidade?: string | null;
  cliente_cpf_cnpj?: string | null;
  cliente_nome?: string | null;
  cliente_uf?: string | null;
  descricao_situacao?: string | null;
  emitida_em?: string | null;
  id: number;
  id_tiny: number;
  natureza_operacao?: string | null;
  numero?: number | null;
  numero_pedido?: number | null;
  serie?: number | null;
  situacao?: number | null;
  valor_total?: number | null;
  vendedor?: string | null;
}

PaginaFaturaAutoCompleteI64

import type { PaginaFaturaAutoCompleteI64 } from "termo_core/intranet";

export interface PaginaFaturaAutoCompleteI64 {
  itens: Array<PaginaFaturaAutoCompleteI64ItensItem>;
  proximo_cursor?: number;
  tamanho: number;
}

PaginaFaturaAutoCompleteI64ItensItem

import type { PaginaFaturaAutoCompleteI64ItensItem } from "termo_core/intranet";

export interface PaginaFaturaAutoCompleteI64ItensItem {
  cliente_nome?: string | null;
  id: number;
  numero?: number | null;
  serie?: number | null;
}

PaginaFaturaResumoI64

import type { PaginaFaturaResumoI64 } from "termo_core/intranet";

export interface PaginaFaturaResumoI64 {
  itens: Array<PaginaFaturaResumoI64ItensItem>;
  proximo_cursor?: number;
  tamanho: number;
}

PaginaFaturaResumoI64ItensItem

import type { PaginaFaturaResumoI64ItensItem } from "termo_core/intranet";

export interface PaginaFaturaResumoI64ItensItem {
  cliente_cidade?: string | null;
  cliente_cpf_cnpj?: string | null;
  cliente_nome?: string | null;
  cliente_uf?: string | null;
  descricao_situacao?: string | null;
  emitida_em?: string | null;
  id: number;
  id_tiny: number;
  natureza_operacao?: string | null;
  numero?: number | null;
  numero_pedido?: number | null;
  serie?: number | null;
  situacao?: number | null;
  valor_total?: number | null;
  vendedor?: string | null;
}

Total

import type { Total } from "termo_core/intranet";

export interface Total {
  total: number;
}

Nesta página