sdk-node-apis-efi
Version:
Module for integration with Efi Bank API
98 lines (83 loc) • 2.38 kB
Markdown
# nova-sdk-node-apis-efi
Exemplo de uso do SDK com seleção automática de ambiente e API (PIX, DEFAULT, etc):
## Instalação
```
npm install nova-sdk-node-apis-efi
```
## Uso em TypeScript
```ts
import { EfiSdk } from 'nova-sdk-node-apis-efi/dist/wrapper';
import { PixCreateImmediateChargeBody } from 'nova-sdk-node-apis-efi/dist/types/pix';
const sdk = new EfiSdk({
sandbox: true, // ou false para produção
client_id: 'seu-client-id',
client_secret: 'seu-client-secret',
certificate: '/caminho/para/certificado.pfx',
// pemKey: '/caminho/para/chave.pem', // se usar PEM
cert_base64: false, // true se for base64
partner_token: 'seu-partner-token',
validateMtls: true,
});
// PIX: Criar cobrança imediata
const body: PixCreateImmediateChargeBody = {
calendario: { expiracao: 3600 },
valor: { original: '10.00' },
chave: 'sua-chave-pix',
};
sdk.pixCreateImmediateCharge(body)
.then(resposta => {
console.log(resposta);
})
.catch(erro => {
console.error(erro);
});
// DEFAULT: Listar cobranças
sdk.listCharges()
.then(resposta => {
console.log(resposta);
})
.catch(erro => {
console.error(erro);
});
```
## Uso em JavaScript
```js
const { EfiSdk } = require('nova-sdk-node-apis-efi/dist/wrapper');
const sdk = new EfiSdk({
sandbox: true,
client_id: 'seu-client-id',
client_secret: 'seu-client-secret',
certificate: '/caminho/para/certificado.pfx',
cert_base64: false,
partner_token: 'seu-partner-token',
validateMtls: true,
});
// PIX: Criar cobrança imediata
sdk.pixCreateImmediateCharge({
calendario: { expiracao: 3600 },
valor: { original: '10.00' },
chave: 'sua-chave-pix',
})
.then(resposta => {
console.log(resposta);
})
.catch(erro => {
console.error(erro);
});
// DEFAULT: Listar cobranças
sdk.listCharges({
charge_type: 'billet',
begin_date: '2024-05-05',
end_date: '2025-03-01'
})
.then(resposta => {
console.log(resposta);
})
.catch(erro => {
console.error(erro);
});
```
## Observações
- A SDK seleciona automaticamente a URL base e a autenticação correta para cada método, conforme a API (PIX, DEFAULT, etc) e o ambiente (sandbox ou produção).
- O token de autenticação é gerenciado internamente e renovado automaticamente quando necessário.
- Para adicionar outros métodos, basta seguir o padrão dos exemplos acima.