Integração

SDK

Os blocos do SDK: login, customers, uso e faturas.

Referência dos principais blocos do SDK do Infi.

Login

Login por código de 6 dígitos por email:

await infi.auth.sendEmailCode("cliente@empresa.com");
const session = await infi.auth.verifyEmailCode(
  "cliente@empresa.com",
  "123456",
);

sendEmailCode envia o código; verifyEmailCode valida e cria a sessão. O Infi emite um user + customer 1:1.

Customers

Sem login Infi? Crie o customer direto:

const customer = await infi.customers.create({
  email: "cliente@empresa.com",
  metadata: { plan: "pro" },
});

Uso

Registre uso no runtime. Fica fora do caminho crítico, billing não vira gargalo da sua API:

await infi.usage.record({
  customerId: customer.id,
  event: "tokens",
  quantity: 1_500,
});

Híbrido

Combine usage.record com um plano fixo para um modelo híbrido: assinatura base

  • excedente por uso.

Faturas

Liste e inspecione faturas por customer:

const invoices = await infi.invoices.list({ customerId: customer.id });

Webhooks

Reaja a eventos do ciclo de cobrança:

| Evento | Quando dispara | | --- | --- | | usage.threshold | Uso passa um limite definido | | invoice.closed | Fatura fechada no fim do ciclo | | payment.succeeded | Pagamento aprovado | | payment.failed | Pagamento recusado |