Pular para o conteúdo principal

Como começar

Instalando​

Preferencialmente, recomendamos o NodeJs em sua versão LTS (latest).

Execute o comando abaixo que instala as dependências necessárias com o npm:

$ npm install @woovi/node-sdk

Dessa forma, o SDK será instalado.

Criando o cliente​

O ponto de entrada do SDK é um createClient para o serviço.

CommonJs:

const WooviSdk = require("@woovi/node-sdk");

// Para inicializar
const woovi = WooviSdk.createClient({appId: "seu-app-id"});

Ts/Module:

import { createClient } from "@woovi/node-sdk"

// Para inicializar
const woovi = createClient({appId: "seu-app-id"})

O método createClient cria um novo cliente a partir de um ID de aplicativo obtido no site da woovi.

Chamando a API​

Um cliente possui recursos (por exemplo: clientes, cobranças, assinaturas, etc.) que podem ser acessados através de createClient.

woovi.customer

Cada recurso irá ter um conjunto de métodos que podem serem executados para realizarem operações:

const client = woovi.customer.create({}); //lembre-se de passar o payload de criação de cliente

Operações em recursos​

Em cada recurso, há uma convenção nos nomes das operações, na qual, em sua maioria, se resumem em:

  • get: Obter apenas um recurso. Associado ao verbo HTTP GET.
  • list: Obter vários recursos, de forma paginada. Associado ao verbo HTTP GET.
  • create: Criar um recurso. Associado ao verbo HTTP POST.
  • delete: Remover um recurso. Associado ao verbo HTTP DELETE.

Formato das entradas​

No caso de operações de listagem, normalmente se aceita um objeto com um uma chave opcional de paginação.

woovi.refund.list({ skip: 0, limit: 20 })

Formato de saída​

A execução de uma operação irá devolver resultados da API na forma de um array direto ou na forma de um paginador, caso este seja aplicado ao metodo usado.

Tipagem​

Em cada operação disponível para um determinado tipo de recurso, existem tipagens disponíveis direto na resposta, informando o formato de entrada e saída da operação com um link para a documentação da API Rest e exemplo de utilização.

Para utilizar, é sugerido utilizar um editor com Intellisense como Visual Studio Code.

Também é possível consultar a documentação no site da woovi caso haja dúvidas.

Recursos disponíveis​

Os seguintes recursos estão disponíveis no Client gerado:

  • woovi.account: Operações em uma conta.
  • woovi.cashback: Operações em cashback.
  • woovi.charge: Operações em uma carga de pagamento.
  • woovi.chargeRefund: Operações em em extorno de uma carga.
  • woovi.customer: Operações em clientes.
  • woovi.partner: Operações em parceiros.
  • woovi.pixQrCode: Operações em codigos qr relacionados a pix.
  • woovi.refund: Operações em extorno.
  • woovi.subAccount: Operações em sub contas.
  • woovi.subscription: Operações em inscrições.
  • woovi.transactions: Operações em transações.
  • woovi.transfer: Operações em transferencias.
  • woovi.webhook: Operações em webhook.

Webhook

O método webhook conta com um recurso especial chamado handle, ótimo para ser usado para validar recursos diretamente na sua api. Veja a seguir como ultiliza-lo:

import { createClient } from "@woovi/node-sdk";

const woovi = createClient({ appId: "seu-app-id" });

const handler = woovi.webhook.handler({
onChargeCompleted: async (payload) => {},
onChargeExpired: async (payload) => {},
});

export const POST = handler.POST;

Post recebe sua requisição.

Dependências​

O projeto não ultiliza de dependencias externas para seu funcionamento.