wyzecash 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +18 -0
- package/README.md +14 -4
- package/dist/client.d.ts +1 -1
- package/dist/client.js +1 -1
- package/dist/generated.d.ts +76 -208
- package/dist/generated.js +14 -60
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Mudanças
|
|
2
|
+
|
|
3
|
+
## 0.2.0
|
|
4
|
+
|
|
5
|
+
**Mudanças que pedem ajuste no seu código:**
|
|
6
|
+
|
|
7
|
+
- Saem `pix.send`, `pix.list` e `pix.retrieve`: enviar Pix e sacar são o mesmo Pix que sai, então use `withdrawals.create` (com `destination` ou `copyPaste`). A rota antiga `/v1/pix/payments` continua respondendo por enquanto, mas vai ser removida.
|
|
8
|
+
- Sai `meds.downloadAttachment`: as provas do MED são internas da WyzeCash e não se baixam pela API (a rota já recusava).
|
|
9
|
+
|
|
10
|
+
**Novidades:**
|
|
11
|
+
|
|
12
|
+
- `meds.respond(id, { defense, evidence })`: responde um MED com a defesa e até 5 provas (em base64), num pedido só. Precisa da permissão `/meds/respond` na chave.
|
|
13
|
+
- O endereço padrão passa a ser `https://api.wyzecash.com.br`. O antigo continua funcionando, e quem passa `baseUrl` não muda nada.
|
|
14
|
+
- `payments.retrieve` e `withdrawals.retrieve` explicam no editor que, para saber quando a cobrança é paga ou o saque conclui, o caminho é o webhook (ou o WebSocket), não a consulta em sequência, que gasta o limite de 100 pedidos por minuto da conta. O README ganhou a seção "Saber quando foi pago".
|
|
15
|
+
|
|
16
|
+
## 0.1.0
|
|
17
|
+
|
|
18
|
+
Primeira versão.
|
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# wyzecash
|
|
2
2
|
|
|
3
|
-
SDK oficial da [WyzeCash](https://
|
|
3
|
+
SDK oficial da [WyzeCash](https://docs.wyzecash.com.br) para Node.js 20+, Bun e Deno: cobranças por Pix, cartão e cripto, links de pagamento, saldo e extrato, saques, estornos, MED, subcontas e webhooks. Sem dependências.
|
|
4
4
|
|
|
5
5
|
```bash
|
|
6
6
|
npm install wyzecash
|
|
@@ -38,8 +38,7 @@ Não existe ambiente de testes: todo pedido é de verdade. Para testar, faça um
|
|
|
38
38
|
| `transactions` | `list`, `retrieve` |
|
|
39
39
|
| `search` | `query` |
|
|
40
40
|
| `receipts` | `retrieve` |
|
|
41
|
-
| `meds` | `list`, `retrieve`, `
|
|
42
|
-
| `pix` | `send`, `list`, `retrieve` |
|
|
41
|
+
| `meds` | `list`, `retrieve`, `respond` |
|
|
43
42
|
| `withdrawals` | `create`, `list`, `retrieve` |
|
|
44
43
|
| `refunds` | `create`, `list`, `retrieve` |
|
|
45
44
|
| `subaccounts` | `create`, `list`, `retrieve`, `update`, `delete`, `retrieveSettings`, `updateSettings`, `previewSettings`, `listEntries`, `fund`, `transfer`, `returnToAccount`, `withdraw` |
|
|
@@ -90,6 +89,17 @@ try {
|
|
|
90
89
|
|
|
91
90
|
Opções do cliente: `new WyzeCash(chave, { maxRetries: 2, timeout: 60000, baseUrl, fetch })`.
|
|
92
91
|
|
|
92
|
+
## Saber quando foi pago
|
|
93
|
+
|
|
94
|
+
**Use os webhooks ou o tempo real (WebSocket), não `payments.retrieve` em sequência.**
|
|
95
|
+
|
|
96
|
+
Chamar a consulta da cobrança em sequência para ver se ela foi paga gasta o limite de **100 pedidos por minuto da conta** (somando todas as rotas e todas as chaves). Uma tela consultando a cada 2 segundos gasta 30 por minuto; com quatro abertas, **todo** pedido da conta, até criar cobrança, volta `429 RATE_LIMITED` até liberar. Os avisos do webhook e do WebSocket não contam no limite.
|
|
97
|
+
|
|
98
|
+
- O seu sistema tem um endereço HTTPS: use os [webhooks](#webhooks) (`payment.paid`, `payment.expired`, `withdrawal.completed`...).
|
|
99
|
+
- Não tem (bot de Discord ou Telegram, programa num VPS): use o [tempo real](#tempo-real-websocket), de todas as cobranças ou só de uma (`ws.subscribePayment("BKY-…")`).
|
|
100
|
+
- A tela de "aguardando pagamento" pergunta ao **seu** servidor (que o webhook ou o WebSocket atualizou), nunca direto à WyzeCash: a chave de API não vai para o navegador nem para o app.
|
|
101
|
+
- `payments.retrieve` só para conferir uma vez (o webhook não chegou em alguns minutos). Sem webhook nem WebSocket, consulte no máximo a cada 5 segundos e pare na primeira situação final (`paid`, `expired` ou `refunded`).
|
|
102
|
+
|
|
93
103
|
## Webhooks
|
|
94
104
|
|
|
95
105
|
Cada aviso chega com o cabeçalho `X-Bukio-Signature`. Confira sempre com o corpo cru, como chegou:
|
|
@@ -149,4 +159,4 @@ ws.on("error", (erro) => console.error(erro.code, erro.message));
|
|
|
149
159
|
|
|
150
160
|
## Documentação
|
|
151
161
|
|
|
152
|
-
Referência completa da API: https://
|
|
162
|
+
Referência completa da API: https://docs.wyzecash.com.br
|
package/dist/client.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { type OperationId, Resources } from "./generated.js";
|
|
|
3
3
|
import { ListPromise } from "./pagination.js";
|
|
4
4
|
import { RealtimeConnection, type RealtimeOptions } from "./realtime.js";
|
|
5
5
|
import { Webhooks } from "./webhooks.js";
|
|
6
|
-
export declare const DEFAULT_BASE_URL = "https://
|
|
6
|
+
export declare const DEFAULT_BASE_URL = "https://api.wyzecash.com.br";
|
|
7
7
|
export interface ClientOptions {
|
|
8
8
|
/** A chave de API (`bk_live_…`). Sem ela, vale a variável de ambiente `WYZECASH_API_KEY`. */
|
|
9
9
|
apiKey?: string;
|
package/dist/client.js
CHANGED
|
@@ -11,7 +11,7 @@ import { ListPromise } from "./pagination.js";
|
|
|
11
11
|
import { RealtimeConnection } from "./realtime.js";
|
|
12
12
|
import { VERSION } from "./version.js";
|
|
13
13
|
import { Webhooks } from "./webhooks.js";
|
|
14
|
-
export const DEFAULT_BASE_URL = "https://
|
|
14
|
+
export const DEFAULT_BASE_URL = "https://api.wyzecash.com.br";
|
|
15
15
|
const env = (name) => globalThis.process?.env?.[name];
|
|
16
16
|
const wait = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
17
17
|
export class WyzeCash extends Resources {
|
package/dist/generated.d.ts
CHANGED
|
@@ -1362,153 +1362,74 @@ export type MedsRetrieveResponse = {
|
|
|
1362
1362
|
/** Quando foi criado. */
|
|
1363
1363
|
createdAt: string;
|
|
1364
1364
|
};
|
|
1365
|
-
/** Pedido de `
|
|
1366
|
-
export type
|
|
1367
|
-
/**
|
|
1368
|
-
|
|
1369
|
-
|
|
1370
|
-
|
|
1371
|
-
|
|
1372
|
-
keyType: "cpf" | "cnpj" | "email" | "phone" | "random";
|
|
1373
|
-
/** A chave Pix. */
|
|
1374
|
-
key: string;
|
|
1375
|
-
};
|
|
1376
|
-
/** Pix Copia e Cola estático para pagar (no lugar de `destination`). */
|
|
1377
|
-
copyPaste?: string;
|
|
1378
|
-
/** A sua referência (ex.: o número do pedido). Volta no Pix enviado e no webhook. */
|
|
1379
|
-
description?: string;
|
|
1380
|
-
};
|
|
1381
|
-
/** Resposta de `pix.send` (Enviar Pix). */
|
|
1382
|
-
export type PixSendResponse = {
|
|
1383
|
-
/** Código. */
|
|
1384
|
-
id: string;
|
|
1385
|
-
/** `processing` (Em processamento), `completed` (Concluído), `failed` ou `rejected` (Não realizado: o valor volta ao saldo). */
|
|
1386
|
-
status: string;
|
|
1387
|
-
/** Valor do Pix, em centavos. Com Copia e Cola que já tem valor, pode ficar sem ou precisa ser o mesmo. */
|
|
1388
|
-
amount: number;
|
|
1389
|
-
/** Tarifa, em centavos. */
|
|
1390
|
-
fee: number;
|
|
1391
|
-
/** O que sai no total (valor + tarifa), em centavos. */
|
|
1392
|
-
total: number;
|
|
1393
|
-
/** De onde foi pedido: `painel`, `app`, `api` ou `auto` (saque automático). */
|
|
1394
|
-
channel: string;
|
|
1395
|
-
/** A sua referência (ex.: o número do pedido). Volta no Pix enviado e no webhook. */
|
|
1396
|
-
description: string | null;
|
|
1397
|
-
/** Para onde vai o Pix. */
|
|
1398
|
-
destination: {
|
|
1399
|
-
/** Nome de quem recebe (o que o banco confirmou). */
|
|
1400
|
-
name: string;
|
|
1401
|
-
/** Banco de quem recebe. */
|
|
1402
|
-
institution: string | null;
|
|
1403
|
-
/** Tipo da chave Pix: `cpf`, `cnpj`, `email`, `phone` ou `random`. */
|
|
1404
|
-
keyType: string | null;
|
|
1405
|
-
/** A chave Pix. */
|
|
1406
|
-
key: string;
|
|
1407
|
-
/** Pix Copia e Cola. */
|
|
1408
|
-
copyPaste: boolean;
|
|
1409
|
-
};
|
|
1410
|
-
/** Identificador do Pix no Banco Central (E2E). */
|
|
1411
|
-
endToEndId: string | null;
|
|
1412
|
-
/** Por que não foi feito. */
|
|
1413
|
-
failureReason: string | null;
|
|
1414
|
-
/** Quando foi criado. */
|
|
1415
|
-
createdAt: string;
|
|
1416
|
-
/** Quando foi concluído. */
|
|
1417
|
-
completedAt: string | null;
|
|
1418
|
-
/** Link público do comprovante (imagem). `null` até concluir. */
|
|
1419
|
-
receiptUrl: string | null;
|
|
1420
|
-
};
|
|
1421
|
-
/** Pedido de `pix.list` (Listar Pix enviados). */
|
|
1422
|
-
export type PixListParams = {
|
|
1423
|
-
/** Quantos por página (até 100). */
|
|
1424
|
-
limit?: number;
|
|
1425
|
-
/** O `nextCursor` da página anterior. */
|
|
1426
|
-
cursor?: string;
|
|
1427
|
-
};
|
|
1428
|
-
/** Resposta de `pix.list` (Listar Pix enviados). */
|
|
1429
|
-
export type PixListResponse = {
|
|
1430
|
-
/** Os itens desta página. */
|
|
1431
|
-
items: Array<{
|
|
1432
|
-
/** Código. */
|
|
1433
|
-
id: string;
|
|
1434
|
-
/** Situação. */
|
|
1435
|
-
status: string;
|
|
1436
|
-
/** Valor, em centavos. */
|
|
1437
|
-
amount: number;
|
|
1438
|
-
/** Tarifa, em centavos. */
|
|
1439
|
-
fee: number;
|
|
1440
|
-
/** O que sai no total (valor + tarifa), em centavos. */
|
|
1441
|
-
total: number;
|
|
1442
|
-
/** De onde foi pedido: `painel`, `app`, `api` ou `auto` (saque automático). */
|
|
1443
|
-
channel: string;
|
|
1444
|
-
/** Descrição. */
|
|
1445
|
-
description: string | null;
|
|
1446
|
-
/** Para onde vai o Pix. */
|
|
1447
|
-
destination: {
|
|
1448
|
-
/** Nome de quem recebe (o que o banco confirmou). */
|
|
1449
|
-
name: string;
|
|
1450
|
-
/** Banco de quem recebe. */
|
|
1451
|
-
institution: string;
|
|
1452
|
-
/** Tipo da chave Pix: `cpf`, `cnpj`, `email`, `phone` ou `random`. */
|
|
1453
|
-
keyType: string;
|
|
1454
|
-
/** A chave Pix. */
|
|
1455
|
-
key: string;
|
|
1456
|
-
/** Pix Copia e Cola. */
|
|
1457
|
-
copyPaste: boolean;
|
|
1458
|
-
};
|
|
1459
|
-
/** Identificador do Pix no Banco Central (E2E). */
|
|
1460
|
-
endToEndId: string;
|
|
1461
|
-
/** Por que não foi feito. */
|
|
1462
|
-
failureReason: string | null;
|
|
1463
|
-
/** Quando foi criado. */
|
|
1464
|
-
createdAt: string;
|
|
1465
|
-
/** Quando foi concluído. */
|
|
1466
|
-
completedAt: string;
|
|
1467
|
-
/** Link público do comprovante (imagem). `null` até concluir. */
|
|
1468
|
-
receiptUrl: string;
|
|
1365
|
+
/** Pedido de `meds.respond` (Responder MED). */
|
|
1366
|
+
export type MedsRespondParams = {
|
|
1367
|
+
/** A defesa que você escreveu (a automática nunca aparece). */
|
|
1368
|
+
defense: string;
|
|
1369
|
+
evidence?: Array<{
|
|
1370
|
+
fileName?: string;
|
|
1371
|
+
contentBase64: string;
|
|
1469
1372
|
}>;
|
|
1470
|
-
/** Cursor da próxima página (`null` no fim). Mande em `cursor`. */
|
|
1471
|
-
nextCursor: string | null;
|
|
1472
1373
|
};
|
|
1473
|
-
/** Resposta de `
|
|
1474
|
-
export type
|
|
1374
|
+
/** Resposta de `meds.respond` (Responder MED). */
|
|
1375
|
+
export type MedsRespondResponse = {
|
|
1475
1376
|
/** Código. */
|
|
1476
1377
|
id: string;
|
|
1477
|
-
/**
|
|
1378
|
+
/** A venda paga em que o MED foi aberto. */
|
|
1379
|
+
original: unknown;
|
|
1380
|
+
/** Situação. */
|
|
1478
1381
|
status: string;
|
|
1382
|
+
/** Situação em texto, como aparece no painel. */
|
|
1383
|
+
statusTitle: string;
|
|
1479
1384
|
/** Valor, em centavos. */
|
|
1480
1385
|
amount: number;
|
|
1386
|
+
/** Reservado (MED ou estorno em andamento), em centavos. */
|
|
1387
|
+
blocked: number;
|
|
1388
|
+
/** O que ficou faltando quando foi devolvido sem saldo, em centavos. */
|
|
1389
|
+
owed: number;
|
|
1481
1390
|
/** Tarifa, em centavos. */
|
|
1482
1391
|
fee: number;
|
|
1483
|
-
/**
|
|
1484
|
-
|
|
1485
|
-
/**
|
|
1486
|
-
|
|
1392
|
+
/** Taxa de MED recebido, em centavos. */
|
|
1393
|
+
receivedFee: number;
|
|
1394
|
+
/** Parte da Taxa de MED recebido que ficou para as próximas entradas, em centavos. */
|
|
1395
|
+
receivedFeeOwed: number;
|
|
1396
|
+
/** Motivo. */
|
|
1397
|
+
reason: string;
|
|
1398
|
+
/** Motivo em texto. */
|
|
1399
|
+
reasonTitle: string;
|
|
1487
1400
|
/** Descrição. */
|
|
1488
1401
|
description: string | null;
|
|
1489
|
-
/**
|
|
1490
|
-
|
|
1491
|
-
|
|
1402
|
+
/** Prazo para responder. */
|
|
1403
|
+
deadline: string;
|
|
1404
|
+
/** A defesa que você escreveu (a automática nunca aparece). */
|
|
1405
|
+
defense: string;
|
|
1406
|
+
/** Quem respondeu: `user` (você), `auto` (defesa automática) ou `null`. */
|
|
1407
|
+
answered: string;
|
|
1408
|
+
/** Quando foi respondido. */
|
|
1409
|
+
answeredAt: string;
|
|
1410
|
+
/** Origem da defesa: `user` ou `auto`. */
|
|
1411
|
+
defenseSource: string;
|
|
1412
|
+
/** Arquivos enviados como prova. */
|
|
1413
|
+
attachments: Array<{
|
|
1414
|
+
/** Código do anexo. */
|
|
1415
|
+
id: string;
|
|
1416
|
+
/** Nome do arquivo. */
|
|
1492
1417
|
name: string;
|
|
1493
|
-
/**
|
|
1494
|
-
|
|
1495
|
-
/** Tipo
|
|
1496
|
-
|
|
1497
|
-
/**
|
|
1498
|
-
|
|
1499
|
-
|
|
1500
|
-
|
|
1501
|
-
|
|
1502
|
-
/**
|
|
1503
|
-
|
|
1504
|
-
/**
|
|
1505
|
-
|
|
1418
|
+
/** Tamanho, em bytes. */
|
|
1419
|
+
size: number;
|
|
1420
|
+
/** Tipo do arquivo. */
|
|
1421
|
+
contentType: string;
|
|
1422
|
+
/** Quando foi criado. */
|
|
1423
|
+
createdAt: string;
|
|
1424
|
+
}>;
|
|
1425
|
+
/** Observação da decisão. */
|
|
1426
|
+
decisionNote: string | null;
|
|
1427
|
+
/** Quando a defesa foi enviada. */
|
|
1428
|
+
defenseAt: string;
|
|
1429
|
+
/** Quando foi decidido. */
|
|
1430
|
+
decidedAt: unknown;
|
|
1506
1431
|
/** Quando foi criado. */
|
|
1507
1432
|
createdAt: string;
|
|
1508
|
-
/** Quando foi concluído. */
|
|
1509
|
-
completedAt: string | null;
|
|
1510
|
-
/** Link público do comprovante (imagem). `null` até concluir. */
|
|
1511
|
-
receiptUrl: string | null;
|
|
1512
1433
|
};
|
|
1513
1434
|
/** Pedido de `withdrawals.create` (Sacar). */
|
|
1514
1435
|
export type WithdrawalsCreateParams = {
|
|
@@ -1901,6 +1822,8 @@ export type SubaccountsCreateResponse = {
|
|
|
1901
1822
|
active: boolean;
|
|
1902
1823
|
/** Bloqueio: `none`, `receive` (não recebe), `withdraw` (não saca) ou `full` (bloqueio total). Devolver à principal sempre vale. */
|
|
1903
1824
|
lockMode: string;
|
|
1825
|
+
/** Bloqueio da WyzeCash: `none`, `receive` (não recebe), `withdraw` (não saca, não transfere, não devolve à principal e não é excluída) ou `full` (os dois). Vale por cima do `lockMode` e só a WyzeCash tira. */
|
|
1826
|
+
platformLock: string;
|
|
1904
1827
|
/** Saque travado pelo bloqueio automático do MED. */
|
|
1905
1828
|
medLocked: boolean;
|
|
1906
1829
|
/** O que falta reservar ou pagar do MED, em centavos (sai das próximas entradas da subconta). */
|
|
@@ -1996,6 +1919,8 @@ export type SubaccountsListResponse = {
|
|
|
1996
1919
|
active: boolean;
|
|
1997
1920
|
/** Bloqueio: `none`, `receive` (não recebe), `withdraw` (não saca) ou `full` (bloqueio total). Devolver à principal sempre vale. */
|
|
1998
1921
|
lockMode: string;
|
|
1922
|
+
/** Bloqueio da WyzeCash: `none`, `receive` (não recebe), `withdraw` (não saca, não transfere, não devolve à principal e não é excluída) ou `full` (os dois). Vale por cima do `lockMode` e só a WyzeCash tira. */
|
|
1923
|
+
platformLock: string;
|
|
1999
1924
|
/** Saque travado pelo bloqueio automático do MED. */
|
|
2000
1925
|
medLocked: boolean;
|
|
2001
1926
|
/** O que falta reservar ou pagar do MED, em centavos (sai das próximas entradas da subconta). */
|
|
@@ -2083,6 +2008,8 @@ export type SubaccountsRetrieveResponse = {
|
|
|
2083
2008
|
active?: boolean;
|
|
2084
2009
|
/** Bloqueio: `none`, `receive` (não recebe), `withdraw` (não saca) ou `full` (bloqueio total). Devolver à principal sempre vale. */
|
|
2085
2010
|
lockMode?: string;
|
|
2011
|
+
/** Bloqueio da WyzeCash: `none`, `receive` (não recebe), `withdraw` (não saca, não transfere, não devolve à principal e não é excluída) ou `full` (os dois). Vale por cima do `lockMode` e só a WyzeCash tira. */
|
|
2012
|
+
platformLock?: string;
|
|
2086
2013
|
/** Saque travado pelo bloqueio automático do MED. */
|
|
2087
2014
|
medLocked?: boolean;
|
|
2088
2015
|
/** O que falta reservar ou pagar do MED, em centavos (sai das próximas entradas da subconta). */
|
|
@@ -2246,6 +2173,8 @@ export type SubaccountsUpdateResponse = {
|
|
|
2246
2173
|
active: boolean;
|
|
2247
2174
|
/** Bloqueio: `none`, `receive` (não recebe), `withdraw` (não saca) ou `full` (bloqueio total). Devolver à principal sempre vale. */
|
|
2248
2175
|
lockMode: string;
|
|
2176
|
+
/** Bloqueio da WyzeCash: `none`, `receive` (não recebe), `withdraw` (não saca, não transfere, não devolve à principal e não é excluída) ou `full` (os dois). Vale por cima do `lockMode` e só a WyzeCash tira. */
|
|
2177
|
+
platformLock: string;
|
|
2249
2178
|
/** Saque travado pelo bloqueio automático do MED. */
|
|
2250
2179
|
medLocked: boolean;
|
|
2251
2180
|
/** O que falta reservar ou pagar do MED, em centavos (sai das próximas entradas da subconta). */
|
|
@@ -2951,38 +2880,11 @@ export declare const OPERATIONS: {
|
|
|
2951
2880
|
readonly moneyOut: false;
|
|
2952
2881
|
readonly binary: false;
|
|
2953
2882
|
};
|
|
2954
|
-
readonly
|
|
2955
|
-
readonly method: "GET";
|
|
2956
|
-
readonly path: "/v1/meds/{id}/attachments/{attachmentId}";
|
|
2957
|
-
readonly query: readonly [];
|
|
2958
|
-
readonly body: false;
|
|
2959
|
-
readonly idempotent: false;
|
|
2960
|
-
readonly moneyOut: false;
|
|
2961
|
-
readonly binary: true;
|
|
2962
|
-
};
|
|
2963
|
-
readonly enviar_pix: {
|
|
2883
|
+
readonly responder_med: {
|
|
2964
2884
|
readonly method: "POST";
|
|
2965
|
-
readonly path: "/v1/
|
|
2885
|
+
readonly path: "/v1/meds/{id}/respond";
|
|
2966
2886
|
readonly query: readonly [];
|
|
2967
2887
|
readonly body: true;
|
|
2968
|
-
readonly idempotent: true;
|
|
2969
|
-
readonly moneyOut: true;
|
|
2970
|
-
readonly binary: false;
|
|
2971
|
-
};
|
|
2972
|
-
readonly listar_pix_enviados: {
|
|
2973
|
-
readonly method: "GET";
|
|
2974
|
-
readonly path: "/v1/pix/payments";
|
|
2975
|
-
readonly query: readonly ["limit", "cursor"];
|
|
2976
|
-
readonly body: false;
|
|
2977
|
-
readonly idempotent: false;
|
|
2978
|
-
readonly moneyOut: false;
|
|
2979
|
-
readonly binary: false;
|
|
2980
|
-
};
|
|
2981
|
-
readonly consultar_pix_enviado: {
|
|
2982
|
-
readonly method: "GET";
|
|
2983
|
-
readonly path: "/v1/pix/payments/{id}";
|
|
2984
|
-
readonly query: readonly [];
|
|
2985
|
-
readonly body: false;
|
|
2986
2888
|
readonly idempotent: false;
|
|
2987
2889
|
readonly moneyOut: false;
|
|
2988
2890
|
readonly binary: false;
|
|
@@ -3211,6 +3113,8 @@ export declare class PaymentsResource {
|
|
|
3211
3113
|
*
|
|
3212
3114
|
* **Permissão da chave:** `payments:get`.
|
|
3213
3115
|
*
|
|
3116
|
+
* - Para saber quando é paga, use o webhook `payment.paid` (ou o WebSocket `/v1/ws`), não esta consulta em sequência: cada consulta conta no limite de 100 pedidos por minuto da conta e o excesso volta 429. Consulte uma vez para conferir.
|
|
3117
|
+
*
|
|
3214
3118
|
* `GET /v1/payments/{id}`
|
|
3215
3119
|
*/
|
|
3216
3120
|
retrieve(id: string, options?: RequestOptions): Promise<PaymentsRetrieveResponse>;
|
|
@@ -3466,56 +3370,19 @@ export declare class MedsResource {
|
|
|
3466
3370
|
*/
|
|
3467
3371
|
retrieve(id: string, options?: RequestOptions): Promise<MedsRetrieveResponse>;
|
|
3468
3372
|
/**
|
|
3469
|
-
*
|
|
3373
|
+
* Responder MED
|
|
3470
3374
|
*
|
|
3471
|
-
*
|
|
3375
|
+
* Manda a defesa de um MED aberto (`defense`, de 20 a 4.000 caracteres, explicando a venda e a entrega) com até 5 provas em `evidence` (imagem JPG, PNG ou WEBP ou PDF, em base64 em `contentBase64`, até 5 MB cada). A WyzeCash leva a defesa e as provas ao banco de quem pagou; depois disso o MED segue a situação de sempre.
|
|
3472
3376
|
*
|
|
3473
|
-
* **Permissão da chave:** `meds:
|
|
3377
|
+
* **Permissão da chave:** `meds:respond`.
|
|
3474
3378
|
*
|
|
3475
|
-
* `
|
|
3476
|
-
|
|
3477
|
-
|
|
3478
|
-
}
|
|
3479
|
-
export declare class PixResource {
|
|
3480
|
-
private readonly client;
|
|
3481
|
-
constructor(client: Requester);
|
|
3482
|
-
/**
|
|
3483
|
-
* Enviar Pix
|
|
3484
|
-
*
|
|
3485
|
-
* Envia um Pix (ENV-) para uma chave (`destination`) ou paga um Pix Copia e Cola (`copyPaste`).
|
|
3486
|
-
*
|
|
3487
|
-
* **Permissão da chave:** `pix:create`.
|
|
3488
|
-
*
|
|
3489
|
-
* Pede o cabeçalho `Idempotency-Key`.
|
|
3490
|
-
*
|
|
3491
|
-
* **Tira dinheiro da conta de verdade.**
|
|
3379
|
+
* - Só com o MED `open` e dentro do prazo (`deadline`): depois, `409 MED_NOT_OPEN` ou `409 MED_DEADLINE_PASSED`. Uma resposta por MED.
|
|
3380
|
+
* - As provas não voltam para baixar: ficam guardadas com a WyzeCash e só vão para o banco de quem pagou.
|
|
3381
|
+
* - O MCP não manda a defesa: só mostra como o seu sistema faz.
|
|
3492
3382
|
*
|
|
3493
|
-
*
|
|
3494
|
-
* - A resposta vem `processing` até concluir; o webhook `pix.sent` (com `receiptUrl`) ou `pix.failed` avisa o resultado.
|
|
3495
|
-
*
|
|
3496
|
-
* `POST /v1/pix/payments`
|
|
3497
|
-
*/
|
|
3498
|
-
send(params?: PixSendParams, options?: RequestOptions): Promise<PixSendResponse>;
|
|
3499
|
-
/**
|
|
3500
|
-
* Listar Pix enviados
|
|
3501
|
-
*
|
|
3502
|
-
* Os Pix enviados (concluído traz o `receiptUrl`).
|
|
3503
|
-
*
|
|
3504
|
-
* **Permissão da chave:** `pix:list`.
|
|
3505
|
-
*
|
|
3506
|
-
* `GET /v1/pix/payments`
|
|
3383
|
+
* `POST /v1/meds/{id}/respond`
|
|
3507
3384
|
*/
|
|
3508
|
-
|
|
3509
|
-
/**
|
|
3510
|
-
* Consultar Pix enviado
|
|
3511
|
-
*
|
|
3512
|
-
* Um Pix enviado pelo código ENV-.
|
|
3513
|
-
*
|
|
3514
|
-
* **Permissão da chave:** `pix:get`.
|
|
3515
|
-
*
|
|
3516
|
-
* `GET /v1/pix/payments/{id}`
|
|
3517
|
-
*/
|
|
3518
|
-
retrieve(id: string, options?: RequestOptions): Promise<PixRetrieveResponse>;
|
|
3385
|
+
respond(id: string, params: MedsRespondParams, options?: RequestOptions): Promise<MedsRespondResponse>;
|
|
3519
3386
|
}
|
|
3520
3387
|
export declare class WithdrawalsResource {
|
|
3521
3388
|
private readonly client;
|
|
@@ -3556,6 +3423,8 @@ export declare class WithdrawalsResource {
|
|
|
3556
3423
|
*
|
|
3557
3424
|
* **Permissão da chave:** `withdrawals:get`.
|
|
3558
3425
|
*
|
|
3426
|
+
* - Para saber quando conclui, use os webhooks `withdrawal.completed` e `withdrawal.failed` (ou o WebSocket `/v1/ws`), não esta consulta em sequência: ela conta no limite de 100 pedidos por minuto da conta.
|
|
3427
|
+
*
|
|
3559
3428
|
* `GET /v1/withdrawals/{id}`
|
|
3560
3429
|
*/
|
|
3561
3430
|
retrieve(id: string, options?: RequestOptions): Promise<WithdrawalsRetrieveResponse>;
|
|
@@ -3777,7 +3646,6 @@ export declare abstract class Resources {
|
|
|
3777
3646
|
readonly search: SearchResource;
|
|
3778
3647
|
readonly receipts: ReceiptsResource;
|
|
3779
3648
|
readonly meds: MedsResource;
|
|
3780
|
-
readonly pix: PixResource;
|
|
3781
3649
|
readonly withdrawals: WithdrawalsResource;
|
|
3782
3650
|
readonly refunds: RefundsResource;
|
|
3783
3651
|
readonly subaccounts: SubaccountsResource;
|
package/dist/generated.js
CHANGED
|
@@ -26,10 +26,7 @@ export const OPERATIONS = {
|
|
|
26
26
|
comprovante: { method: "GET", path: "/v1/receipts/{id}", query: [], body: false, idempotent: false, moneyOut: false, binary: false },
|
|
27
27
|
listar_meds: { method: "GET", path: "/v1/meds", query: ["limit", "cursor", "status"], body: false, idempotent: false, moneyOut: false, binary: false },
|
|
28
28
|
consultar_med: { method: "GET", path: "/v1/meds/{id}", query: [], body: false, idempotent: false, moneyOut: false, binary: false },
|
|
29
|
-
|
|
30
|
-
enviar_pix: { method: "POST", path: "/v1/pix/payments", query: [], body: true, idempotent: true, moneyOut: true, binary: false },
|
|
31
|
-
listar_pix_enviados: { method: "GET", path: "/v1/pix/payments", query: ["limit", "cursor"], body: false, idempotent: false, moneyOut: false, binary: false },
|
|
32
|
-
consultar_pix_enviado: { method: "GET", path: "/v1/pix/payments/{id}", query: [], body: false, idempotent: false, moneyOut: false, binary: false },
|
|
29
|
+
responder_med: { method: "POST", path: "/v1/meds/{id}/respond", query: [], body: true, idempotent: false, moneyOut: false, binary: false },
|
|
33
30
|
criar_saque: { method: "POST", path: "/v1/withdrawals", query: [], body: true, idempotent: true, moneyOut: true, binary: false },
|
|
34
31
|
listar_saques: { method: "GET", path: "/v1/withdrawals", query: ["limit", "cursor", "subaccountId"], body: false, idempotent: false, moneyOut: false, binary: false },
|
|
35
32
|
consultar_saque: { method: "GET", path: "/v1/withdrawals/{id}", query: [], body: false, idempotent: false, moneyOut: false, binary: false },
|
|
@@ -109,6 +106,8 @@ export class PaymentsResource {
|
|
|
109
106
|
*
|
|
110
107
|
* **Permissão da chave:** `payments:get`.
|
|
111
108
|
*
|
|
109
|
+
* - Para saber quando é paga, use o webhook `payment.paid` (ou o WebSocket `/v1/ws`), não esta consulta em sequência: cada consulta conta no limite de 100 pedidos por minuto da conta e o excesso volta 429. Consulte uma vez para conferir.
|
|
110
|
+
*
|
|
112
111
|
* `GET /v1/payments/{id}`
|
|
113
112
|
*/
|
|
114
113
|
retrieve(id, options) {
|
|
@@ -426,65 +425,20 @@ export class MedsResource {
|
|
|
426
425
|
return this.client.request("consultar_med", [id], undefined, options);
|
|
427
426
|
}
|
|
428
427
|
/**
|
|
429
|
-
*
|
|
430
|
-
*
|
|
431
|
-
* Baixa uma prova anexada à defesa de um MED (o arquivo, como anexo).
|
|
432
|
-
*
|
|
433
|
-
* **Permissão da chave:** `meds:evidence`.
|
|
434
|
-
*
|
|
435
|
-
* `GET /v1/meds/{id}/attachments/{attachmentId}`
|
|
436
|
-
*/
|
|
437
|
-
downloadAttachment(id, attachmentId, options) {
|
|
438
|
-
return this.client.request("baixar_prova_med", [id, attachmentId], undefined, options);
|
|
439
|
-
}
|
|
440
|
-
}
|
|
441
|
-
export class PixResource {
|
|
442
|
-
client;
|
|
443
|
-
constructor(client) {
|
|
444
|
-
this.client = client;
|
|
445
|
-
}
|
|
446
|
-
/**
|
|
447
|
-
* Enviar Pix
|
|
428
|
+
* Responder MED
|
|
448
429
|
*
|
|
449
|
-
*
|
|
430
|
+
* Manda a defesa de um MED aberto (`defense`, de 20 a 4.000 caracteres, explicando a venda e a entrega) com até 5 provas em `evidence` (imagem JPG, PNG ou WEBP ou PDF, em base64 em `contentBase64`, até 5 MB cada). A WyzeCash leva a defesa e as provas ao banco de quem pagou; depois disso o MED segue a situação de sempre.
|
|
450
431
|
*
|
|
451
|
-
* **Permissão da chave:** `
|
|
452
|
-
*
|
|
453
|
-
* Pede o cabeçalho `Idempotency-Key`.
|
|
454
|
-
*
|
|
455
|
-
* **Tira dinheiro da conta de verdade.**
|
|
432
|
+
* **Permissão da chave:** `meds:respond`.
|
|
456
433
|
*
|
|
457
|
-
* -
|
|
458
|
-
* -
|
|
434
|
+
* - Só com o MED `open` e dentro do prazo (`deadline`): depois, `409 MED_NOT_OPEN` ou `409 MED_DEADLINE_PASSED`. Uma resposta por MED.
|
|
435
|
+
* - As provas não voltam para baixar: ficam guardadas com a WyzeCash e só vão para o banco de quem pagou.
|
|
436
|
+
* - O MCP não manda a defesa: só mostra como o seu sistema faz.
|
|
459
437
|
*
|
|
460
|
-
* `POST /v1/
|
|
438
|
+
* `POST /v1/meds/{id}/respond`
|
|
461
439
|
*/
|
|
462
|
-
|
|
463
|
-
return this.client.request("
|
|
464
|
-
}
|
|
465
|
-
/**
|
|
466
|
-
* Listar Pix enviados
|
|
467
|
-
*
|
|
468
|
-
* Os Pix enviados (concluído traz o `receiptUrl`).
|
|
469
|
-
*
|
|
470
|
-
* **Permissão da chave:** `pix:list`.
|
|
471
|
-
*
|
|
472
|
-
* `GET /v1/pix/payments`
|
|
473
|
-
*/
|
|
474
|
-
list(params, options) {
|
|
475
|
-
return this.client.list("listar_pix_enviados", [], params, options);
|
|
476
|
-
}
|
|
477
|
-
/**
|
|
478
|
-
* Consultar Pix enviado
|
|
479
|
-
*
|
|
480
|
-
* Um Pix enviado pelo código ENV-.
|
|
481
|
-
*
|
|
482
|
-
* **Permissão da chave:** `pix:get`.
|
|
483
|
-
*
|
|
484
|
-
* `GET /v1/pix/payments/{id}`
|
|
485
|
-
*/
|
|
486
|
-
retrieve(id, options) {
|
|
487
|
-
return this.client.request("consultar_pix_enviado", [id], undefined, options);
|
|
440
|
+
respond(id, params, options) {
|
|
441
|
+
return this.client.request("responder_med", [id], params, options);
|
|
488
442
|
}
|
|
489
443
|
}
|
|
490
444
|
export class WithdrawalsResource {
|
|
@@ -532,6 +486,8 @@ export class WithdrawalsResource {
|
|
|
532
486
|
*
|
|
533
487
|
* **Permissão da chave:** `withdrawals:get`.
|
|
534
488
|
*
|
|
489
|
+
* - Para saber quando conclui, use os webhooks `withdrawal.completed` e `withdrawal.failed` (ou o WebSocket `/v1/ws`), não esta consulta em sequência: ela conta no limite de 100 pedidos por minuto da conta.
|
|
490
|
+
*
|
|
535
491
|
* `GET /v1/withdrawals/{id}`
|
|
536
492
|
*/
|
|
537
493
|
retrieve(id, options) {
|
|
@@ -791,7 +747,6 @@ export class Resources {
|
|
|
791
747
|
search;
|
|
792
748
|
receipts;
|
|
793
749
|
meds;
|
|
794
|
-
pix;
|
|
795
750
|
withdrawals;
|
|
796
751
|
refunds;
|
|
797
752
|
subaccounts;
|
|
@@ -807,7 +762,6 @@ export class Resources {
|
|
|
807
762
|
this.search = new SearchResource(client);
|
|
808
763
|
this.receipts = new ReceiptsResource(client);
|
|
809
764
|
this.meds = new MedsResource(client);
|
|
810
|
-
this.pix = new PixResource(client);
|
|
811
765
|
this.withdrawals = new WithdrawalsResource(client);
|
|
812
766
|
this.refunds = new RefundsResource(client);
|
|
813
767
|
this.subaccounts = new SubaccountsResource(client);
|
package/dist/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const VERSION = "0.
|
|
1
|
+
export declare const VERSION = "0.2.0";
|
package/dist/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const VERSION = "0.
|
|
1
|
+
export const VERSION = "0.2.0";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "wyzecash",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "SDK oficial da WyzeCash para Node.js, Bun e Deno: cobranças por Pix, cartão e cripto, saques, subcontas e webhooks (com plugin para o Fastify).",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
},
|
|
18
18
|
"./package.json": "./package.json"
|
|
19
19
|
},
|
|
20
|
-
"files": ["dist", "README.md", "LICENSE"],
|
|
20
|
+
"files": ["dist", "README.md", "CHANGELOG.md", "LICENSE"],
|
|
21
21
|
"sideEffects": false,
|
|
22
22
|
"engines": {
|
|
23
23
|
"node": ">=20"
|