Unofficial Asaas Payment Gateway SDK
❗SDK and documentation under development.
A simple sdk made to abstract most of the Asaas payment gateway api requests.
last update: 06/05/2024 Items updated:
- Global: Added option to disable automatic error logging (printError)
- Payments: Added support split array.
Author
Reference
-
Features
- <input checked="" disabled="" type="checkbox"> Customers (Clientes)
- <input checked="" disabled="" type="checkbox"> Payments (Cobranças)
- <input disabled="" type="checkbox"> Notifications (Notificações)
- <input checked="" disabled="" type="checkbox"> Installments (Parcelamentos)
- <input checked="" disabled="" type="checkbox"> Subscriptions (Assinaturas)
- <input disabled="" type="checkbox"> Pix (Pix)
- <input disabled="" type="checkbox"> Pix Transactions (Transações Pix)
- <input disabled="" type="checkbox"> Payment Links (soon) (Link de pagamentos)
- <input checked="" disabled="" type="checkbox"> Transfers (Transferências)
- <input disabled="" type="checkbox"> Anticipations (Antecipações)
- <input disabled="" type="checkbox"> Payment Dunnings (Negativações)
- <input checked="" disabled="" type="checkbox"> Bill (Pagamento de contas)
- <input disabled="" type="checkbox"> Mobile Phone Recharges (Recargas de celular)
- <input disabled="" type="checkbox"> Credit Bureau Report (Consulta Serasa)
- <input disabled="" type="checkbox"> Financial Transactions (Extrato)
- <input disabled="" type="checkbox"> Finance (Informações financeiras)
- <input checked="" disabled="" type="checkbox"> My Account (Informações e personalização da conta)
- <input checked="" disabled="" type="checkbox"> Invoices (Notas fiscais)
- <input disabled="" type="checkbox"> Fiscal Info (Informações fiscais)
- <input checked="" disabled="" type="checkbox"> Webhooks (Configurações de Webhooks)
- <input checked="" disabled="" type="checkbox"> Accounts (Subcontas Asaas)
- <input disabled="" type="checkbox"> Documents (Envio de documentos White Label)
SDK Documentation
Get Start
Import the package and instantitate a new Client:
import { AsaasClient } from 'asaas';
const asaas = new AsaasClient(process.env.ASAAS_API_KEY);
Authentication
Every request to the Asaas API needs an API Key, which must be passed as the first parameter in the constructor. To obtain your API Key, access the Integration Tab in the Account Settings area.
Optionally you can set base url, enable sandbox mode and set sandbox mode base url.
import { AsaasClient } from 'asaas';
//Instantiate a new client
const asaas = new AsaasClient(process.env.ASAAS_API_KEY, {
//baseUrl?: string (default: https://api.asaas.com/v3);
//sandbox?: boolean;
//sandboxUrl?: string (default: https://sandbox.asaas.com/api/v3);
//printError?: boolean (default: true); // Determines whether errors will be automatically logged to the console
});
Sandbox Mode
To enable Sandbox Mode, pass to the client's constructor, as the second parameter, an object with sandbox
information as true
. The default sandbox URL is https://sandbox.asaas.com/api/v3
import { AsaasClient } from 'asaas';
const asaas = new AsaasClient(process.env.ASAAS_API_KEY, {
sandbox: true;
//sandboxUrl?: string (default: https://sandbox.asaas.com/api/v3);
//baseUrl?: string (default: https://api.asaas.com/v3);
});
Error Logging
By default, the library automatically logs errors to the console when request failures occur. You can disable this behavior by setting the printError
option to false
:
import { AsaasClient } from 'asaas';
const asaas = new AsaasClient(process.env.ASAAS_API_KEY, {
printError: false // Disables automatic error logging to the console
});
Customers
Return all customers
Returns customers. Filters can be applied, passing an object with the items allowed in the official documentation.
import { AsaasClient } from 'asaas';
const asaas = new AsaasClient(process.env.ASAAS_API_KEY, {
// sandbox: boolean;
//sandboxUrl?: string (default: https://sandbox.asaas.com/api/v3);
//baseUrl?: string (default: https://api.asaas.com/v3);
});
//It lists all registered customers and makes a filter by email.
await asaas.customers.list({
email: "email@email.com"
});
Parameter | Type | Description |
---|---|---|
name |
string |
Filter by Name. |
email |
string |
Filter by Email. |
cpfCnpj |
string |
Filter by CPF or CNPJ. |
groupName |
string |
Filter by Group. |
externalReference |
string |
Filter by External Reference. |
offset |
number |
Offset of search. |
limit |
number |
Limit of results. |
Return customer by ID
import { AsaasClient } from 'asaas';
const asaas = new AsaasClient(process.env.ASAAS_API_KEY, {
// sandbox: boolean;
//sandboxUrl?: string (default: https://sandbox.asaas.com/api/v3);
//baseUrl?: string (default: https://api.asaas.com/v3);
});
//It returns a customer by ID.
await asaas.customers.getById("cus_123abcde456");
Parameter | Type | Description |
---|---|---|
id |
string |
Required. Customer ID |
Payments
Return all payments
Returns payments. Filters can be applied, passing an object with the items allowed in the official documentation.
import { AsaasClient } from 'asaas';
const asaas = new AsaasClient(process.env.ASAAS_API_KEY, {
// sandbox: boolean;
//sandboxUrl?: string (default: https://sandbox.asaas.com/api/v3);
//baseUrl?: string (default: https://api.asaas.com/v3);
});
//It lists all registered payments and makes a filter by customer ID.
await asaas.payments.list({
customer: "cus_123abcde456"
});
Parameter | Type | Description |
---|---|---|
customer |
string |
Filter by Customer ID. |
customerGroupName |
string |
Filter by Customer group name. |
billingType |
string |
Filter by Billing Type. |
status |
string |
Filter by Status. |
subscription |
string |
Filter by Subscription ID. |
installment |
string |
Filter by Installment ID. |
externalReference |
string |
Filter by External Reference. |
paymentDate |
` |