stablevoy 1.5.0 → 1.7.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 +13 -0
- package/README.md +51 -0
- package/dist/Stablevoy.d.ts +3 -1
- package/dist/Stablevoy.d.ts.map +1 -1
- package/dist/Stablevoy.js +5 -2
- package/dist/Stablevoy.js.map +1 -1
- package/dist/errors/ApiError.d.ts +8 -0
- package/dist/errors/ApiError.d.ts.map +1 -1
- package/dist/errors/ApiError.js +8 -0
- package/dist/errors/ApiError.js.map +1 -1
- package/dist/index.d.ts +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/model/Invoice.d.ts +5 -0
- package/dist/model/Invoice.d.ts.map +1 -1
- package/dist/model/InvoiceStatus.d.ts +2 -0
- package/dist/model/InvoiceStatus.d.ts.map +1 -1
- package/dist/model/InvoiceStatus.js +2 -0
- package/dist/model/InvoiceStatus.js.map +1 -1
- package/dist/model/InvoiceSummary.d.ts +42 -0
- package/dist/model/InvoiceSummary.d.ts.map +1 -0
- package/dist/model/InvoiceSummary.js +22 -0
- package/dist/model/InvoiceSummary.js.map +1 -0
- package/dist/model/Platform.d.ts +22 -1
- package/dist/model/Platform.d.ts.map +1 -1
- package/dist/model/Platform.js +14 -1
- package/dist/model/Platform.js.map +1 -1
- package/dist/model/UnmatchedTransfer.d.ts +28 -0
- package/dist/model/UnmatchedTransfer.d.ts.map +1 -0
- package/dist/model/UnmatchedTransfer.js +16 -0
- package/dist/model/UnmatchedTransfer.js.map +1 -0
- package/dist/resources/Invoices.d.ts +15 -0
- package/dist/resources/Invoices.d.ts.map +1 -1
- package/dist/resources/Invoices.js +50 -2
- package/dist/resources/Invoices.js.map +1 -1
- package/dist/resources/UnmatchedTransfers.d.ts +10 -0
- package/dist/resources/UnmatchedTransfers.d.ts.map +1 -0
- package/dist/resources/UnmatchedTransfers.js +18 -0
- package/dist/resources/UnmatchedTransfers.js.map +1 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/webhook/WebhookEvent.d.ts +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.7.0
|
|
4
|
+
|
|
5
|
+
- `invoices.summary({ period })` or `invoices.summary({ createdFrom, createdTo })`: totals of the invoices created in a range of UTC days, with the count per status, the invoiced amount and the money received, also per network and token. Periods are in `SummaryPeriod`; one request covers at most 92 days, and a longer range is refused with `ApiError.INVALID_INVOICE_FILTER`.
|
|
6
|
+
- `unmatchedTransfers.list()`: transfers to the payout wallet that matched no invoice, on the networks of the key's store, each with `sharedWithStores`. Read only; they are attached to an invoice in the dashboard.
|
|
7
|
+
- `Limits` carries `apiKeysPerStore` (`plugin`, `mcp`, `api`), `openInvoicesPerStore` and `invoicesPerMinutePerStore`. New `ApiError.OPEN_INVOICE_LIMIT_REACHED`. These need the API of 7 November 2026; an older answer without them is refused as an unexpected response.
|
|
8
|
+
- `Stablevoy` takes `UnmatchedTransfers` as a fourth constructor argument; `Stablevoy.create()` and `Stablevoy.fromTransport()` are unchanged.
|
|
9
|
+
|
|
10
|
+
## 1.6.0
|
|
11
|
+
|
|
12
|
+
- `invoices.cancel(id)` cancels an invoice that is still waiting for its first payment: the payment page tells the buyer not to pay and the webhook `invoice.cancelled` is sent. Cancelling it again returns it unchanged. Once a payment has been seen the API refuses with `ApiError.INVOICE_NOT_CANCELLABLE`; money that still arrives after a cancel makes the invoice `paid_late`. New status `InvoiceStatus.CANCELLED` and webhook type `invoice.cancelled`.
|
|
13
|
+
- `invoices.create()` takes `expiresInMinutes`: how long the buyer has to pay this invoice, 15 to 10080 minutes (7 days). Outside the bounds the API answers `ApiError.INVALID_INVOICE_LIFETIME`.
|
|
14
|
+
- `Store.invoiceLifetimeMinutes`: the store's payment window, null for the platform default. `Limits` carries `defaultInvoiceLifetimeMinutes`, `minInvoiceLifetimeMinutes` and `maxInvoiceLifetimeMinutes`. Both need the API of 6 November 2026; an older answer without them is refused as an unexpected response.
|
|
15
|
+
|
|
3
16
|
## 1.5.0
|
|
4
17
|
|
|
5
18
|
- `Store.payoutAddresses`: the account's payout wallets per network family (`evm`, `tron`), null when not set. Read only; they are changed in the dashboard with a wallet signature. Needs the API that sends the field (November 2026); an older answer without it is refused as an unexpected response.
|
package/README.md
CHANGED
|
@@ -34,6 +34,27 @@ const created = await stablevoy.invoices.create(
|
|
|
34
34
|
// Send the buyer to created.checkoutUrl
|
|
35
35
|
```
|
|
36
36
|
|
|
37
|
+
The buyer has the store's payment window to pay, or the platform default when the store sets none (`stablevoy.platform.limits()` gives it and the bounds). Pass `expiresInMinutes` (15 to 10080, that is 7 days) to set it for one invoice, for example a day or more for an invoice you send by email.
|
|
38
|
+
|
|
39
|
+
## Cancel an unpaid invoice
|
|
40
|
+
|
|
41
|
+
When the order is cancelled before the buyer pays, cancel its invoice. The payment page then tells the buyer not to pay, and the webhook `invoice.cancelled` is sent. Cancelling it again returns it unchanged.
|
|
42
|
+
|
|
43
|
+
```ts
|
|
44
|
+
import { ApiError, InvoiceStatus } from 'stablevoy';
|
|
45
|
+
|
|
46
|
+
try {
|
|
47
|
+
const invoice = await stablevoy.invoices.cancel(invoiceId);
|
|
48
|
+
console.log(invoice.status === InvoiceStatus.CANCELLED);
|
|
49
|
+
} catch (error) {
|
|
50
|
+
// A payment has already been seen on chain: fulfil or refund the order instead.
|
|
51
|
+
if (error instanceof ApiError && error.code === ApiError.INVOICE_NOT_CANCELLABLE) console.log(error.detail);
|
|
52
|
+
else throw error;
|
|
53
|
+
}
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
Money that still arrives after a cancel reaches your payout wallet as always and makes the invoice `paid_late`.
|
|
57
|
+
|
|
37
58
|
Read an invoice with `stablevoy.invoices.get(id)`, or walk them all:
|
|
38
59
|
|
|
39
60
|
```ts
|
|
@@ -52,6 +73,36 @@ for await (const invoice of stablevoy.invoices.all({ source: InvoiceSourceFilter
|
|
|
52
73
|
}
|
|
53
74
|
```
|
|
54
75
|
|
|
76
|
+
A store can have up to 1,000 invoices awaiting payment at once; over that `invoices.create()` fails with `ApiError.OPEN_INVOICE_LIMIT_REACHED`, so cancel the ones you no longer need. `stablevoy.platform.limits()` gives this and the other per-store limits.
|
|
77
|
+
|
|
78
|
+
## Totals for a period
|
|
79
|
+
|
|
80
|
+
Count the invoices of a period and add up what they brought, instead of walking the list. Pass a ready-made period or your own UTC days; one request covers at most 92 days, so ask for a year in four parts.
|
|
81
|
+
|
|
82
|
+
```ts
|
|
83
|
+
import { SummaryPeriod } from 'stablevoy';
|
|
84
|
+
|
|
85
|
+
const week = await stablevoy.invoices.summary({ period: SummaryPeriod.LAST_7_DAYS });
|
|
86
|
+
console.log(week.invoiceCount, week.invoicesByStatus.paid, week.invoicedUsdCents, week.receivedUsdMicros);
|
|
87
|
+
for (const total of week.byNetwork) console.log(total.network, total.token, total.receivedUsdMicros);
|
|
88
|
+
|
|
89
|
+
const october = await stablevoy.invoices.summary({ createdFrom: '2026-10-01', createdTo: '2026-10-31' });
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
`invoicedUsdCents` leaves out cancelled and expired invoices. `receivedUsdMicros` (millionths of a dollar, as a string) counts the confirmed payments that passed sanctions screening.
|
|
93
|
+
|
|
94
|
+
## Unmatched transfers
|
|
95
|
+
|
|
96
|
+
On Tron the buyer pays your own wallet and the last digits of the amount pick the invoice. A transfer whose amount matched no invoice, usually from an exchange that took its fee out of it, is listed here. Attach it to an invoice in the Stablevoy dashboard; an API key can only read the list.
|
|
97
|
+
|
|
98
|
+
```ts
|
|
99
|
+
for (const transfer of await stablevoy.unmatchedTransfers.list()) {
|
|
100
|
+
console.log(transfer.amountUsdMicros, transfer.fromAddress, transfer.explorerTxUrl + transfer.txHash.replace(/^0x/, ''));
|
|
101
|
+
}
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
The payout wallet belongs to your account, not to one store, so each transfer has `sharedWithStores`: 1 means it is certainly this store's, more means it may belong to any of that many of your stores.
|
|
105
|
+
|
|
55
106
|
## Check the store before going live
|
|
56
107
|
|
|
57
108
|
Invoices need a payout wallet for at least one network the store accepts; without one every invoice is refused with `payout_address_not_set`. An EVM payout wallet that is a smart contract wallet or an EIP-7702 delegation must be confirmed in the dashboard, and confirmed again when it changes; until then new invoices leave out the EVM networks, and a store with nothing else is refused with `payout_address_unacknowledged`. Read the store of the key to find out in advance, and tell the merchant about networks buyers will not be offered:
|
package/dist/Stablevoy.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ import type { Transport } from './http/Transport.js';
|
|
|
3
3
|
import { Invoices } from './resources/Invoices.js';
|
|
4
4
|
import { Platform } from './resources/Platform.js';
|
|
5
5
|
import { Stores } from './resources/Stores.js';
|
|
6
|
+
import { UnmatchedTransfers } from './resources/UnmatchedTransfers.js';
|
|
6
7
|
export interface StablevoyOptions extends ConnectionOptions {
|
|
7
8
|
/** The store's API key (sk_live_... or sk_test_...). */
|
|
8
9
|
readonly apiKey: string;
|
|
@@ -12,7 +13,8 @@ export declare class Stablevoy {
|
|
|
12
13
|
readonly invoices: Invoices;
|
|
13
14
|
readonly stores: Stores;
|
|
14
15
|
readonly platform: Platform;
|
|
15
|
-
|
|
16
|
+
readonly unmatchedTransfers: UnmatchedTransfers;
|
|
17
|
+
constructor(invoices: Invoices, stores: Stores, platform: Platform, unmatchedTransfers: UnmatchedTransfers);
|
|
16
18
|
static create(options: StablevoyOptions): Stablevoy;
|
|
17
19
|
static fromTransport(transport: Transport): Stablevoy;
|
|
18
20
|
}
|
package/dist/Stablevoy.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Stablevoy.d.ts","sourceRoot":"","sources":["../src/Stablevoy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAEhE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"Stablevoy.d.ts","sourceRoot":"","sources":["../src/Stablevoy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAEhE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAEvE,MAAM,WAAW,gBAAiB,SAAQ,iBAAiB;IACzD,wDAAwD;IACxD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,0GAA0G;AAC1G,qBAAa,SAAS;IAElB,QAAQ,CAAC,QAAQ,EAAE,QAAQ;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM;IACvB,QAAQ,CAAC,QAAQ,EAAE,QAAQ;IAC3B,QAAQ,CAAC,kBAAkB,EAAE,kBAAkB;gBAHtC,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAClB,kBAAkB,EAAE,kBAAkB;IAGjD,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,gBAAgB,GAAG,SAAS;IAInD,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS;CAGtD"}
|
package/dist/Stablevoy.js
CHANGED
|
@@ -2,21 +2,24 @@ import { createFetchTransport } from './http/createFetchTransport.js';
|
|
|
2
2
|
import { Invoices } from './resources/Invoices.js';
|
|
3
3
|
import { Platform } from './resources/Platform.js';
|
|
4
4
|
import { Stores } from './resources/Stores.js';
|
|
5
|
+
import { UnmatchedTransfers } from './resources/UnmatchedTransfers.js';
|
|
5
6
|
/** The Stablevoy API: `const stablevoy = Stablevoy.create({ apiKey: process.env.STABLEVOY_API_KEY })`. */
|
|
6
7
|
export class Stablevoy {
|
|
7
8
|
invoices;
|
|
8
9
|
stores;
|
|
9
10
|
platform;
|
|
10
|
-
|
|
11
|
+
unmatchedTransfers;
|
|
12
|
+
constructor(invoices, stores, platform, unmatchedTransfers) {
|
|
11
13
|
this.invoices = invoices;
|
|
12
14
|
this.stores = stores;
|
|
13
15
|
this.platform = platform;
|
|
16
|
+
this.unmatchedTransfers = unmatchedTransfers;
|
|
14
17
|
}
|
|
15
18
|
static create(options) {
|
|
16
19
|
return Stablevoy.fromTransport(createFetchTransport(options.apiKey, options));
|
|
17
20
|
}
|
|
18
21
|
static fromTransport(transport) {
|
|
19
|
-
return new Stablevoy(new Invoices(transport), new Stores(transport), new Platform(transport));
|
|
22
|
+
return new Stablevoy(new Invoices(transport), new Stores(transport), new Platform(transport), new UnmatchedTransfers(transport));
|
|
20
23
|
}
|
|
21
24
|
}
|
|
22
25
|
//# sourceMappingURL=Stablevoy.js.map
|
package/dist/Stablevoy.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Stablevoy.js","sourceRoot":"","sources":["../src/Stablevoy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAEtE,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"Stablevoy.js","sourceRoot":"","sources":["../src/Stablevoy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAEtE,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAOvE,0GAA0G;AAC1G,MAAM,OAAO,SAAS;IAET;IACA;IACA;IACA;IAJX,YACW,QAAkB,EAClB,MAAc,EACd,QAAkB,EAClB,kBAAsC;QAHtC,aAAQ,GAAR,QAAQ,CAAU;QAClB,WAAM,GAAN,MAAM,CAAQ;QACd,aAAQ,GAAR,QAAQ,CAAU;QAClB,uBAAkB,GAAlB,kBAAkB,CAAoB;IAC9C,CAAC;IAEJ,MAAM,CAAC,MAAM,CAAC,OAAyB;QACrC,OAAO,SAAS,CAAC,aAAa,CAAC,oBAAoB,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAChF,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,SAAoB;QACvC,OAAO,IAAI,SAAS,CAAC,IAAI,QAAQ,CAAC,SAAS,CAAC,EAAE,IAAI,MAAM,CAAC,SAAS,CAAC,EAAE,IAAI,QAAQ,CAAC,SAAS,CAAC,EAAE,IAAI,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC;IACnI,CAAC;CACF"}
|
|
@@ -24,6 +24,14 @@ export declare class ApiError extends StablevoyError {
|
|
|
24
24
|
* evmPayoutNeedsReview(store) and canAcceptPayments(store) tell it in advance.
|
|
25
25
|
*/
|
|
26
26
|
static readonly PAYOUT_ADDRESS_UNACKNOWLEDGED = "payout_address_unacknowledged";
|
|
27
|
+
/** invoices.cancel() on an invoice that already has a payment seen on chain, or is paid, expired, underpaid or on hold. */
|
|
28
|
+
static readonly INVOICE_NOT_CANCELLABLE = "invoice_not_cancellable";
|
|
29
|
+
/** expiresInMinutes is outside the bounds platform.limits() gives (15 to 10080 minutes). */
|
|
30
|
+
static readonly INVALID_INVOICE_LIFETIME = "invalid_invoice_lifetime";
|
|
31
|
+
/** The store already has as many invoices awaiting payment as platform.limits() allows: cancel unused ones or let them expire. */
|
|
32
|
+
static readonly OPEN_INVOICE_LIMIT_REACHED = "open_invoice_limit_reached";
|
|
33
|
+
/** A list or summary filter the API refuses, such as a summary range longer than 92 days or one that ends before it starts. */
|
|
34
|
+
static readonly INVALID_INVOICE_FILTER = "invalid_invoice_filter";
|
|
27
35
|
readonly status: number;
|
|
28
36
|
readonly code: string;
|
|
29
37
|
readonly detail: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ApiError.d.ts","sourceRoot":"","sources":["../../src/errors/ApiError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,CAAC;IACzC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CACvC;AAED;;;GAGG;AACH,qBAAa,QAAS,SAAQ,cAAc;IAC1C,yGAAyG;IACzG,MAAM,CAAC,QAAQ,CAAC,sBAAsB,4BAA4B;IAClE;;;OAGG;IACH,MAAM,CAAC,QAAQ,CAAC,6BAA6B,mCAAmC;
|
|
1
|
+
{"version":3,"file":"ApiError.d.ts","sourceRoot":"","sources":["../../src/errors/ApiError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,CAAC;IACzC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CACvC;AAED;;;GAGG;AACH,qBAAa,QAAS,SAAQ,cAAc;IAC1C,yGAAyG;IACzG,MAAM,CAAC,QAAQ,CAAC,sBAAsB,4BAA4B;IAClE;;;OAGG;IACH,MAAM,CAAC,QAAQ,CAAC,6BAA6B,mCAAmC;IAChF,2HAA2H;IAC3H,MAAM,CAAC,QAAQ,CAAC,uBAAuB,6BAA6B;IACpE,4FAA4F;IAC5F,MAAM,CAAC,QAAQ,CAAC,wBAAwB,8BAA8B;IACtE,kIAAkI;IAClI,MAAM,CAAC,QAAQ,CAAC,0BAA0B,gCAAgC;IAC1E,+HAA+H;IAC/H,MAAM,CAAC,QAAQ,CAAC,sBAAsB,4BAA4B;IAElE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,2CAA2C;IAC3C,QAAQ,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,CAAC;IACzC,8DAA8D;IAC9D,QAAQ,CAAC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,sHAAsH;IACtH,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;gBAE1B,OAAO,EAAE,eAAe;CAUrC"}
|
package/dist/errors/ApiError.js
CHANGED
|
@@ -11,6 +11,14 @@ export class ApiError extends StablevoyError {
|
|
|
11
11
|
* evmPayoutNeedsReview(store) and canAcceptPayments(store) tell it in advance.
|
|
12
12
|
*/
|
|
13
13
|
static PAYOUT_ADDRESS_UNACKNOWLEDGED = 'payout_address_unacknowledged';
|
|
14
|
+
/** invoices.cancel() on an invoice that already has a payment seen on chain, or is paid, expired, underpaid or on hold. */
|
|
15
|
+
static INVOICE_NOT_CANCELLABLE = 'invoice_not_cancellable';
|
|
16
|
+
/** expiresInMinutes is outside the bounds platform.limits() gives (15 to 10080 minutes). */
|
|
17
|
+
static INVALID_INVOICE_LIFETIME = 'invalid_invoice_lifetime';
|
|
18
|
+
/** The store already has as many invoices awaiting payment as platform.limits() allows: cancel unused ones or let them expire. */
|
|
19
|
+
static OPEN_INVOICE_LIMIT_REACHED = 'open_invoice_limit_reached';
|
|
20
|
+
/** A list or summary filter the API refuses, such as a summary range longer than 92 days or one that ends before it starts. */
|
|
21
|
+
static INVALID_INVOICE_FILTER = 'invalid_invoice_filter';
|
|
14
22
|
status;
|
|
15
23
|
code;
|
|
16
24
|
detail;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ApiError.js","sourceRoot":"","sources":["../../src/errors/ApiError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAiBrD;;;GAGG;AACH,MAAM,OAAO,QAAS,SAAQ,cAAc;IAC1C,yGAAyG;IACzG,MAAM,CAAU,sBAAsB,GAAG,wBAAwB,CAAC;IAClE;;;OAGG;IACH,MAAM,CAAU,6BAA6B,GAAG,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"ApiError.js","sourceRoot":"","sources":["../../src/errors/ApiError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAiBrD;;;GAGG;AACH,MAAM,OAAO,QAAS,SAAQ,cAAc;IAC1C,yGAAyG;IACzG,MAAM,CAAU,sBAAsB,GAAG,wBAAwB,CAAC;IAClE;;;OAGG;IACH,MAAM,CAAU,6BAA6B,GAAG,+BAA+B,CAAC;IAChF,2HAA2H;IAC3H,MAAM,CAAU,uBAAuB,GAAG,yBAAyB,CAAC;IACpE,4FAA4F;IAC5F,MAAM,CAAU,wBAAwB,GAAG,0BAA0B,CAAC;IACtE,kIAAkI;IAClI,MAAM,CAAU,0BAA0B,GAAG,4BAA4B,CAAC;IAC1E,+HAA+H;IAC/H,MAAM,CAAU,sBAAsB,GAAG,wBAAwB,CAAC;IAEzD,MAAM,CAAS;IACf,IAAI,CAAS;IACb,MAAM,CAAS;IACf,IAAI,CAAgB;IAC7B,2CAA2C;IAClC,MAAM,CAA0B;IACzC,8DAA8D;IACrD,iBAAiB,CAAgB;IAC1C,sHAAsH;IAC7G,aAAa,CAAgB;IAEtC,YAAY,OAAwB;QAClC,KAAK,CAAC,GAAG,OAAO,CAAC,MAAM,UAAU,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC;QACrE,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;QACnD,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;IAC7C,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -10,10 +10,13 @@ export type { Query, Transport } from './http/Transport.js';
|
|
|
10
10
|
export { Invoices, type InvoiceListFilter, type ListInvoicesOptions } from './resources/Invoices.js';
|
|
11
11
|
export { Stores } from './resources/Stores.js';
|
|
12
12
|
export { Platform } from './resources/Platform.js';
|
|
13
|
+
export { UnmatchedTransfers } from './resources/UnmatchedTransfers.js';
|
|
14
|
+
export type { UnmatchedTransfer } from './model/UnmatchedTransfer.js';
|
|
15
|
+
export { SummaryPeriod, type InvoiceSummary, type InvoiceSummaryInput, type NetworkTotal, type SummaryPeriodName } from './model/InvoiceSummary.js';
|
|
13
16
|
export { InvoiceStatus, isPaidStatus } from './model/InvoiceStatus.js';
|
|
14
17
|
export { InvoiceSourceFilter, InvoiceSourceKind, type InvoiceSource } from './model/InvoiceSource.js';
|
|
15
18
|
export type { CreateInvoiceInput, CreatedInvoice, DepositAddress, Invoice, InvoicePage, Payment } from './model/Invoice.js';
|
|
16
|
-
export type { Limits, Network, PayoutAddresses, Pricing, Store, Token } from './model/Platform.js';
|
|
19
|
+
export type { ApiKeysPerStore, Limits, Network, PayoutAddresses, Pricing, Store, Token } from './model/Platform.js';
|
|
17
20
|
export { canAcceptPayments, evmPayoutNeedsReview, EVM_PAYOUT_STATUS } from './model/Platform.js';
|
|
18
21
|
export { WebhookVerifier, type WebhookVerifierOptions } from './webhook/WebhookVerifier.js';
|
|
19
22
|
export type { WebhookEvent } from './webhook/WebhookEvent.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,KAAK,gBAAgB,EAAE,KAAK,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACpG,YAAY,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,YAAY,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC/E,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,YAAY,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,YAAY,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,KAAK,iBAAiB,EAAE,KAAK,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACrG,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACtG,YAAY,EAAE,kBAAkB,EAAE,cAAc,EAAE,cAAc,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC5H,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,KAAK,gBAAgB,EAAE,KAAK,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACpG,YAAY,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,YAAY,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC/E,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,YAAY,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,YAAY,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,KAAK,iBAAiB,EAAE,KAAK,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACrG,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,YAAY,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,KAAK,cAAc,EAAE,KAAK,mBAAmB,EAAE,KAAK,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACpJ,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACtG,YAAY,EAAE,kBAAkB,EAAE,cAAc,EAAE,cAAc,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC5H,YAAY,EAAE,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AACpH,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACjG,OAAO,EAAE,eAAe,EAAE,KAAK,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAC5F,YAAY,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,YAAY,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,KAAK,eAAe,EAAE,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -5,6 +5,8 @@ export { RetryPolicy } from './http/RetryPolicy.js';
|
|
|
5
5
|
export { Invoices } from './resources/Invoices.js';
|
|
6
6
|
export { Stores } from './resources/Stores.js';
|
|
7
7
|
export { Platform } from './resources/Platform.js';
|
|
8
|
+
export { UnmatchedTransfers } from './resources/UnmatchedTransfers.js';
|
|
9
|
+
export { SummaryPeriod } from './model/InvoiceSummary.js';
|
|
8
10
|
export { InvoiceStatus, isPaidStatus } from './model/InvoiceStatus.js';
|
|
9
11
|
export { InvoiceSourceFilter, InvoiceSourceKind } from './model/InvoiceSource.js';
|
|
10
12
|
export { canAcceptPayments, evmPayoutNeedsReview, EVM_PAYOUT_STATUS } from './model/Platform.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAyB,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAA6C,MAAM,uBAAuB,CAAC;AAIpG,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAGpD,OAAO,EAAE,QAAQ,EAAoD,MAAM,yBAAyB,CAAC;AACrG,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAsB,MAAM,0BAA0B,CAAC;AAGtG,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACjG,OAAO,EAAE,eAAe,EAA+B,MAAM,8BAA8B,CAAC;AAG5F,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAA2C,MAAM,sBAAsB,CAAC;AACzF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAyB,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAA6C,MAAM,uBAAuB,CAAC;AAIpG,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAGpD,OAAO,EAAE,QAAQ,EAAoD,MAAM,yBAAyB,CAAC;AACrG,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAEvE,OAAO,EAAE,aAAa,EAA4F,MAAM,2BAA2B,CAAC;AACpJ,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAsB,MAAM,0BAA0B,CAAC;AAGtG,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACjG,OAAO,EAAE,eAAe,EAA+B,MAAM,8BAA8B,CAAC;AAG5F,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAA2C,MAAM,sBAAsB,CAAC;AACzF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC"}
|
package/dist/model/Invoice.d.ts
CHANGED
|
@@ -62,5 +62,10 @@ export interface CreateInvoiceInput {
|
|
|
62
62
|
readonly amountUsdCents: number;
|
|
63
63
|
readonly externalReference?: string;
|
|
64
64
|
readonly returnUrl?: string;
|
|
65
|
+
/**
|
|
66
|
+
* How long the buyer has to pay, 15 to 10080 minutes (7 days). Left out: the store's payment window, else the platform
|
|
67
|
+
* default (platform.limits() tells it). Use a day or more for an invoice sent by email.
|
|
68
|
+
*/
|
|
69
|
+
readonly expiresInMinutes?: number;
|
|
65
70
|
}
|
|
66
71
|
//# sourceMappingURL=Invoice.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Invoice.d.ts","sourceRoot":"","sources":["../../src/model/Invoice.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Invoice.d.ts","sourceRoot":"","sources":["../../src/model/Invoice.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,8 @@ export declare const InvoiceStatus: {
|
|
|
11
11
|
readonly EXPIRED: "expired";
|
|
12
12
|
readonly PAID_LATE: "paid_late";
|
|
13
13
|
readonly ON_HOLD: "on_hold";
|
|
14
|
+
/** Cancelled before any payment was seen (invoices.cancel()); a payment that still arrives makes it paid_late. */
|
|
15
|
+
readonly CANCELLED: "cancelled";
|
|
14
16
|
};
|
|
15
17
|
/** The order can be fulfilled: the full amount, or more, has arrived and is confirmed. */
|
|
16
18
|
export declare function isPaidStatus(status: string): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InvoiceStatus.d.ts","sourceRoot":"","sources":["../../src/model/InvoiceStatus.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,aAAa;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"InvoiceStatus.d.ts","sourceRoot":"","sources":["../../src/model/InvoiceStatus.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,aAAa;;;;;;;;;IASxB,kHAAkH;;CAE1G,CAAC;AAEX,0FAA0F;AAC1F,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAEpD"}
|
|
@@ -11,6 +11,8 @@ export const InvoiceStatus = {
|
|
|
11
11
|
EXPIRED: 'expired',
|
|
12
12
|
PAID_LATE: 'paid_late',
|
|
13
13
|
ON_HOLD: 'on_hold',
|
|
14
|
+
/** Cancelled before any payment was seen (invoices.cancel()); a payment that still arrives makes it paid_late. */
|
|
15
|
+
CANCELLED: 'cancelled',
|
|
14
16
|
};
|
|
15
17
|
/** The order can be fulfilled: the full amount, or more, has arrived and is confirmed. */
|
|
16
18
|
export function isPaidStatus(status) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InvoiceStatus.js","sourceRoot":"","sources":["../../src/model/InvoiceStatus.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,gBAAgB,EAAE,kBAAkB;IACpC,UAAU,EAAE,YAAY;IACxB,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,UAAU;IACpB,SAAS,EAAE,WAAW;IACtB,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,WAAW;IACtB,OAAO,EAAE,SAAS;
|
|
1
|
+
{"version":3,"file":"InvoiceStatus.js","sourceRoot":"","sources":["../../src/model/InvoiceStatus.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,gBAAgB,EAAE,kBAAkB;IACpC,UAAU,EAAE,YAAY;IACxB,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,UAAU;IACpB,SAAS,EAAE,WAAW;IACtB,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,WAAW;IACtB,OAAO,EAAE,SAAS;IAClB,kHAAkH;IAClH,SAAS,EAAE,WAAW;CACd,CAAC;AAEX,0FAA0F;AAC1F,MAAM,UAAU,YAAY,CAAC,MAAc;IACzC,OAAO,MAAM,KAAK,aAAa,CAAC,IAAI,IAAI,MAAM,KAAK,aAAa,CAAC,QAAQ,IAAI,MAAM,KAAK,aAAa,CAAC,SAAS,CAAC;AAClH,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { Fields } from './Fields.js';
|
|
2
|
+
/** The ready-made ranges of invoices.summary(): UTC days ending today; last_3_months is the last 92 days. */
|
|
3
|
+
export declare const SummaryPeriod: {
|
|
4
|
+
readonly LAST_7_DAYS: "last_7_days";
|
|
5
|
+
readonly LAST_30_DAYS: "last_30_days";
|
|
6
|
+
readonly THIS_MONTH: "this_month";
|
|
7
|
+
readonly LAST_MONTH: "last_month";
|
|
8
|
+
readonly LAST_3_MONTHS: "last_3_months";
|
|
9
|
+
};
|
|
10
|
+
export type SummaryPeriodName = (typeof SummaryPeriod)[keyof typeof SummaryPeriod];
|
|
11
|
+
/** A ready-made period, or both days (YYYY-MM-DD, UTC, both included). One request covers at most 92 days. */
|
|
12
|
+
export type InvoiceSummaryInput = {
|
|
13
|
+
readonly period: SummaryPeriodName;
|
|
14
|
+
} | {
|
|
15
|
+
readonly createdFrom: string;
|
|
16
|
+
readonly createdTo: string;
|
|
17
|
+
};
|
|
18
|
+
/** The received money on one network in one token. */
|
|
19
|
+
export interface NetworkTotal {
|
|
20
|
+
readonly network: string;
|
|
21
|
+
/** USDT or USDC. */
|
|
22
|
+
readonly token: string;
|
|
23
|
+
readonly payments: number;
|
|
24
|
+
/** Millionths of a dollar, as a string: "251200000" is $251.20. */
|
|
25
|
+
readonly receivedUsdMicros: string;
|
|
26
|
+
}
|
|
27
|
+
/** Totals of the store's invoices created in a range of UTC days. */
|
|
28
|
+
export interface InvoiceSummary {
|
|
29
|
+
/** The first and last day counted, YYYY-MM-DD, also when a period was asked for. */
|
|
30
|
+
readonly createdFrom: string;
|
|
31
|
+
readonly createdTo: string;
|
|
32
|
+
readonly invoiceCount: number;
|
|
33
|
+
/** How many of them are in each status now, every status included (see InvoiceStatus). */
|
|
34
|
+
readonly invoicesByStatus: Readonly<Record<string, number>>;
|
|
35
|
+
/** Sum of their amounts in US cents, cancelled and expired invoices left out. */
|
|
36
|
+
readonly invoicedUsdCents: number;
|
|
37
|
+
/** The money that counts for them (confirmed and screened clear), in millionths of a dollar, as a string. */
|
|
38
|
+
readonly receivedUsdMicros: string;
|
|
39
|
+
readonly byNetwork: readonly NetworkTotal[];
|
|
40
|
+
}
|
|
41
|
+
export declare function parseInvoiceSummary(f: Fields): InvoiceSummary;
|
|
42
|
+
//# sourceMappingURL=InvoiceSummary.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InvoiceSummary.d.ts","sourceRoot":"","sources":["../../src/model/InvoiceSummary.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,6GAA6G;AAC7G,eAAO,MAAM,aAAa;;;;;;CAMhB,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AAEnF,8GAA8G;AAC9G,MAAM,MAAM,mBAAmB,GAAG;IAAE,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAA;CAAE,GAAG;IAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AAExI,sDAAsD;AACtD,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,oBAAoB;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,mEAAmE;IACnE,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;CACpC;AAED,qEAAqE;AACrE,MAAM,WAAW,cAAc;IAC7B,oFAAoF;IACpF,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,0FAA0F;IAC1F,QAAQ,CAAC,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC5D,iFAAiF;IACjF,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,6GAA6G;IAC7G,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,SAAS,EAAE,SAAS,YAAY,EAAE,CAAC;CAC7C;AAED,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,MAAM,GAAG,cAAc,CAY7D"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/** The ready-made ranges of invoices.summary(): UTC days ending today; last_3_months is the last 92 days. */
|
|
2
|
+
export const SummaryPeriod = {
|
|
3
|
+
LAST_7_DAYS: 'last_7_days',
|
|
4
|
+
LAST_30_DAYS: 'last_30_days',
|
|
5
|
+
THIS_MONTH: 'this_month',
|
|
6
|
+
LAST_MONTH: 'last_month',
|
|
7
|
+
LAST_3_MONTHS: 'last_3_months',
|
|
8
|
+
};
|
|
9
|
+
export function parseInvoiceSummary(f) {
|
|
10
|
+
const invoices = f.object('invoices');
|
|
11
|
+
const byStatus = invoices.object('byStatus');
|
|
12
|
+
return {
|
|
13
|
+
createdFrom: f.string('createdFrom'),
|
|
14
|
+
createdTo: f.string('createdTo'),
|
|
15
|
+
invoiceCount: invoices.int('count'),
|
|
16
|
+
invoicesByStatus: Object.fromEntries(Object.keys(byStatus.raw()).map((status) => [status, byStatus.int(status)])),
|
|
17
|
+
invoicedUsdCents: f.int('invoicedUsdCents'),
|
|
18
|
+
receivedUsdMicros: f.string('receivedUsdMicros'),
|
|
19
|
+
byNetwork: f.objects('byNetwork', (n) => ({ network: n.string('network'), token: n.string('token'), payments: n.int('payments'), receivedUsdMicros: n.string('receivedUsdMicros') })),
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=InvoiceSummary.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InvoiceSummary.js","sourceRoot":"","sources":["../../src/model/InvoiceSummary.ts"],"names":[],"mappings":"AAEA,6GAA6G;AAC7G,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,WAAW,EAAE,aAAa;IAC1B,YAAY,EAAE,cAAc;IAC5B,UAAU,EAAE,YAAY;IACxB,UAAU,EAAE,YAAY;IACxB,aAAa,EAAE,eAAe;CACtB,CAAC;AAgCX,MAAM,UAAU,mBAAmB,CAAC,CAAS;IAC3C,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACtC,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAC7C,OAAO;QACL,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC;QACpC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC;QAChC,YAAY,EAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;QACnC,gBAAgB,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACjH,gBAAgB,EAAE,CAAC,CAAC,GAAG,CAAC,kBAAkB,CAAC;QAC3C,iBAAiB,EAAE,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC;QAChD,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;KACtL,CAAC;AACJ,CAAC"}
|
package/dist/model/Platform.d.ts
CHANGED
|
@@ -20,6 +20,8 @@ export interface Store {
|
|
|
20
20
|
readonly webhookUrl: string | null;
|
|
21
21
|
readonly websiteUrl: string | null;
|
|
22
22
|
readonly defaultReturnUrl: string | null;
|
|
23
|
+
/** The store's payment window: how long its invoices can be paid, in minutes, when the request names none; null means the platform default. */
|
|
24
|
+
readonly invoiceLifetimeMinutes: number | null;
|
|
23
25
|
readonly createdAt: Date;
|
|
24
26
|
/** The plugin connected to the store in one click ('woocommerce', 'edd', 'whmcs'), or null. */
|
|
25
27
|
readonly connectedPlatform: string | null;
|
|
@@ -52,10 +54,29 @@ export declare function canAcceptPayments(store: Store): boolean;
|
|
|
52
54
|
* send them to the dashboard. A store.payout_attention webhook tells when this changes.
|
|
53
55
|
*/
|
|
54
56
|
export declare function evmPayoutNeedsReview(store: Store): boolean;
|
|
55
|
-
/** The smallest and largest invoice the platform accepts, in US cents. */
|
|
57
|
+
/** The smallest and largest invoice the platform accepts, in US cents, and how long an invoice can be paid, in minutes. */
|
|
56
58
|
export interface Limits {
|
|
57
59
|
readonly minInvoiceUsdCents: number;
|
|
58
60
|
readonly maxInvoiceUsdCents: number;
|
|
61
|
+
/** The lifetime of an invoice when neither the request nor the store names one. */
|
|
62
|
+
readonly defaultInvoiceLifetimeMinutes: number;
|
|
63
|
+
/** The bounds of expiresInMinutes and of a store's payment window. */
|
|
64
|
+
readonly minInvoiceLifetimeMinutes: number;
|
|
65
|
+
readonly maxInvoiceLifetimeMinutes: number;
|
|
66
|
+
/** How many active API keys one store may hold per integration; revoked keys do not count. */
|
|
67
|
+
readonly apiKeysPerStore: ApiKeysPerStore;
|
|
68
|
+
/** Invoices awaiting payment one store may have at once; over it invoices.create() fails with ApiError.OPEN_INVOICE_LIMIT_REACHED. */
|
|
69
|
+
readonly openInvoicesPerStore: number;
|
|
70
|
+
/** New invoices one store may create per minute; over it the API answers 429 (RateLimitedError). */
|
|
71
|
+
readonly invoicesPerMinutePerStore: number;
|
|
72
|
+
}
|
|
73
|
+
export interface ApiKeysPerStore {
|
|
74
|
+
/** Keys of one plugin (WooCommerce, Easy Digital Downloads, WHMCS). */
|
|
75
|
+
readonly plugin: number;
|
|
76
|
+
/** AI assistant (MCP) keys, one per computer. */
|
|
77
|
+
readonly mcp: number;
|
|
78
|
+
/** Keys for your own code. */
|
|
79
|
+
readonly api: number;
|
|
59
80
|
}
|
|
60
81
|
export declare function parseLimits(f: Fields): Limits;
|
|
61
82
|
/** The live price list: the free volume per payout wallet, the fee and the cap written into the contracts (50 bps is 0.5%). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Platform.d.ts","sourceRoot":"","sources":["../../src/model/Platform.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,uCAAuC;AACvC,eAAO,MAAM,iBAAiB;;;;;CAKpB,CAAC;AAEX,wCAAwC;AACxC,MAAM,WAAW,KAAK;IACpB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,yCAAyC;IACzC,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5C,yHAAyH;IACzH,QAAQ,CAAC,qBAAqB,EAAE,SAAS,MAAM,EAAE,CAAC;IAClD,QAAQ,CAAC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,QAAQ,CAAC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC;IACzB,+FAA+F;IAC/F,QAAQ,CAAC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C;;;;;OAKG;IACH,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,8GAA8G;IAC9G,QAAQ,CAAC,kBAAkB,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/C,2IAA2I;IAC3I,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;CAC3C;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,KAAK,
|
|
1
|
+
{"version":3,"file":"Platform.d.ts","sourceRoot":"","sources":["../../src/model/Platform.ts"],"names":[],"mappings":"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"}
|
package/dist/model/Platform.js
CHANGED
|
@@ -17,6 +17,7 @@ export function parseStore(f) {
|
|
|
17
17
|
webhookUrl: f.nullableString('webhookUrl'),
|
|
18
18
|
websiteUrl: f.nullableString('websiteUrl'),
|
|
19
19
|
defaultReturnUrl: f.nullableString('defaultReturnUrl'),
|
|
20
|
+
invoiceLifetimeMinutes: f.nullableInt('invoiceLifetimeMinutes'),
|
|
20
21
|
createdAt: f.date('createdAt'),
|
|
21
22
|
connectedPlatform: f.nullableString('connectedPlatform'),
|
|
22
23
|
evmPayoutStatus: f.nullableString('evmPayoutStatus'),
|
|
@@ -44,7 +45,19 @@ export function evmPayoutNeedsReview(store) {
|
|
|
44
45
|
return store.evmPayoutStatus === EVM_PAYOUT_STATUS.UNACKNOWLEDGED;
|
|
45
46
|
}
|
|
46
47
|
export function parseLimits(f) {
|
|
47
|
-
return {
|
|
48
|
+
return {
|
|
49
|
+
minInvoiceUsdCents: f.int('minInvoiceUsdCents'),
|
|
50
|
+
maxInvoiceUsdCents: f.int('maxInvoiceUsdCents'),
|
|
51
|
+
defaultInvoiceLifetimeMinutes: f.int('defaultInvoiceLifetimeMinutes'),
|
|
52
|
+
minInvoiceLifetimeMinutes: f.int('minInvoiceLifetimeMinutes'),
|
|
53
|
+
maxInvoiceLifetimeMinutes: f.int('maxInvoiceLifetimeMinutes'),
|
|
54
|
+
apiKeysPerStore: parseApiKeysPerStore(f.object('apiKeysPerStore')),
|
|
55
|
+
openInvoicesPerStore: f.int('openInvoicesPerStore'),
|
|
56
|
+
invoicesPerMinutePerStore: f.int('invoicesPerMinutePerStore'),
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
function parseApiKeysPerStore(f) {
|
|
60
|
+
return { plugin: f.int('plugin'), mcp: f.int('mcp'), api: f.int('api') };
|
|
48
61
|
}
|
|
49
62
|
export function parsePricing(f) {
|
|
50
63
|
return { freeVolumeUsdCents: f.int('freeVolumeUsdCents'), feeBps: f.int('feeBps'), maxFeeBps: f.int('maxFeeBps') };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Platform.js","sourceRoot":"","sources":["../../src/model/Platform.ts"],"names":[],"mappings":"AAEA,uCAAuC;AACvC,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,KAAK,EAAE,OAAO;IACd,YAAY,EAAE,cAAc;IAC5B,cAAc,EAAE,gBAAgB;IAChC,SAAS,EAAE,WAAW;CACd,CAAC;
|
|
1
|
+
{"version":3,"file":"Platform.js","sourceRoot":"","sources":["../../src/model/Platform.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { Fields } from './Fields.js';
|
|
2
|
+
/**
|
|
3
|
+
* A payment to the payout wallet on a direct network (Tron) that matched no invoice, usually an exchange that took its
|
|
4
|
+
* withdrawal fee out of the amount. Attach it to an invoice in the Stablevoy dashboard; an API key cannot.
|
|
5
|
+
*/
|
|
6
|
+
export interface UnmatchedTransfer {
|
|
7
|
+
readonly id: string;
|
|
8
|
+
/** Network key, for example tron. */
|
|
9
|
+
readonly network: string;
|
|
10
|
+
readonly networkName: string;
|
|
11
|
+
/** The payout wallet the transfer arrived at. */
|
|
12
|
+
readonly payoutAddress: string;
|
|
13
|
+
readonly fromAddress: string;
|
|
14
|
+
readonly txHash: string;
|
|
15
|
+
readonly tokenSymbol: string;
|
|
16
|
+
/** What arrived, in millionths of a dollar, as a string: "98500137" is $98.500137. */
|
|
17
|
+
readonly amountUsdMicros: string;
|
|
18
|
+
readonly detectedAt: Date;
|
|
19
|
+
/** Prefix of the transaction page on the block explorer; Tronscan takes the hash without its 0x prefix. */
|
|
20
|
+
readonly explorerTxUrl: string;
|
|
21
|
+
/**
|
|
22
|
+
* How many active stores of the account offer this network. The payout wallet belongs to the account, not to one store,
|
|
23
|
+
* so 1 means the transfer is certainly this store's and more means it may belong to any of that many stores.
|
|
24
|
+
*/
|
|
25
|
+
readonly sharedWithStores: number;
|
|
26
|
+
}
|
|
27
|
+
export declare function parseUnmatchedTransfer(f: Fields): UnmatchedTransfer;
|
|
28
|
+
//# sourceMappingURL=UnmatchedTransfer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UnmatchedTransfer.d.ts","sourceRoot":"","sources":["../../src/model/UnmatchedTransfer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,qCAAqC;IACrC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,iDAAiD;IACjD,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,sFAAsF;IACtF,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC;IAC1B,2GAA2G;IAC3G,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;CACnC;AAED,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,MAAM,GAAG,iBAAiB,CAcnE"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export function parseUnmatchedTransfer(f) {
|
|
2
|
+
return {
|
|
3
|
+
id: f.string('id'),
|
|
4
|
+
network: f.string('network'),
|
|
5
|
+
networkName: f.string('networkName'),
|
|
6
|
+
payoutAddress: f.string('payoutAddress'),
|
|
7
|
+
fromAddress: f.string('fromAddress'),
|
|
8
|
+
txHash: f.string('txHash'),
|
|
9
|
+
tokenSymbol: f.string('tokenSymbol'),
|
|
10
|
+
amountUsdMicros: f.string('amountUsdMicros'),
|
|
11
|
+
detectedAt: f.date('detectedAt'),
|
|
12
|
+
explorerTxUrl: f.string('explorerTxUrl'),
|
|
13
|
+
sharedWithStores: f.int('sharedWithStores'),
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=UnmatchedTransfer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UnmatchedTransfer.js","sourceRoot":"","sources":["../../src/model/UnmatchedTransfer.ts"],"names":[],"mappings":"AA4BA,MAAM,UAAU,sBAAsB,CAAC,CAAS;IAC9C,OAAO;QACL,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;QAClB,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC;QAC5B,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC;QACpC,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC;QACxC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC;QACpC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;QAC1B,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC;QACpC,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC;QAC5C,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC;QAChC,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC;QACxC,gBAAgB,EAAE,CAAC,CAAC,GAAG,CAAC,kBAAkB,CAAC;KAC5C,CAAC;AACJ,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { Transport } from '../http/Transport.js';
|
|
2
2
|
import { type CreatedInvoice, type CreateInvoiceInput, type Invoice, type InvoicePage } from '../model/Invoice.js';
|
|
3
|
+
import { type InvoiceSummary, type InvoiceSummaryInput } from '../model/InvoiceSummary.js';
|
|
3
4
|
/** Which invoices to list. Every filter is optional and they combine. Days are whole UTC days, both ends included. */
|
|
4
5
|
export interface InvoiceListFilter {
|
|
5
6
|
/** Only invoices in this status (see InvoiceStatus). */
|
|
@@ -30,8 +31,22 @@ export declare class Invoices {
|
|
|
30
31
|
readonly idempotencyKey?: string;
|
|
31
32
|
}): Promise<CreatedInvoice>;
|
|
32
33
|
get(invoiceId: string): Promise<Invoice>;
|
|
34
|
+
/**
|
|
35
|
+
* Cancels an invoice that is still waiting for its first payment, for example when the order was cancelled: the payment
|
|
36
|
+
* page tells the buyer not to pay and the webhook invoice.cancelled is sent. Cancelling it again returns it unchanged.
|
|
37
|
+
* Once a payment has been seen the API refuses with ApiError.INVOICE_NOT_CANCELLABLE; money that still arrives after a
|
|
38
|
+
* cancel makes the invoice paid_late. Not retried on its own; calling it again is safe.
|
|
39
|
+
*/
|
|
40
|
+
cancel(invoiceId: string): Promise<Invoice>;
|
|
41
|
+
private static checkId;
|
|
33
42
|
/** One page of invoices, newest first. */
|
|
34
43
|
list(options?: ListInvoicesOptions): Promise<InvoicePage>;
|
|
44
|
+
/**
|
|
45
|
+
* Totals of the invoices created in a range of UTC days: counts per status, the invoiced amount and the money received,
|
|
46
|
+
* also per network and token. Pass a period (SummaryPeriod) or both days. One request covers at most 92 days, so ask for
|
|
47
|
+
* a year in four parts; a longer range is refused with ApiError.INVALID_INVOICE_FILTER. The API allows 30 calls a minute per store.
|
|
48
|
+
*/
|
|
49
|
+
summary(input: InvoiceSummaryInput): Promise<InvoiceSummary>;
|
|
35
50
|
/** Every invoice, newest first, fetching the pages as you iterate: `for await (const invoice of invoices.all())`. */
|
|
36
51
|
all(options?: InvoiceListFilter & {
|
|
37
52
|
readonly pageSize?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Invoices.d.ts","sourceRoot":"","sources":["../../src/resources/Invoices.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAS,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAE7D,OAAO,EAAuD,KAAK,cAAc,EAAE,KAAK,kBAAkB,EAAE,KAAK,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"Invoices.d.ts","sourceRoot":"","sources":["../../src/resources/Invoices.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAS,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAE7D,OAAO,EAAuD,KAAK,cAAc,EAAE,KAAK,kBAAkB,EAAE,KAAK,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACxK,OAAO,EAAsC,KAAK,cAAc,EAAE,KAAK,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAM/H,sHAAsH;AACtH,MAAM,WAAW,iBAAiB;IAChC,wDAAwD;IACxD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,+FAA+F;IAC/F,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,kBAAkB;IAClB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,kBAAkB;IAClB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,mEAAmE;IACnE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,mBAAoB,SAAQ,iBAAiB;IAC5D,+BAA+B;IAC/B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,oDAAoD;AACpD,qBAAa,QAAQ;IACP,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAAT,SAAS,EAAE,SAAS;IAEjD;;;OAGG;IACG,MAAM,CAAC,KAAK,EAAE,kBAAkB,EAAE,OAAO,GAAE;QAAE,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,cAAc,CAAC;IAmB9G,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAK9C;;;;;OAKG;IACG,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAMjD,OAAO,CAAC,MAAM,CAAC,OAAO;IAItB,0CAA0C;IACpC,IAAI,CAAC,OAAO,GAAE,mBAAwB,GAAG,OAAO,CAAC,WAAW,CAAC;IAkBnE;;;;OAIG;IACG,OAAO,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,cAAc,CAAC;IAoBlE,qHAAqH;IAC9G,GAAG,CAAC,OAAO,GAAE,iBAAiB,GAAG;QAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,cAAc,CAAC,OAAO,CAAC;CAStG"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Fields } from '../model/Fields.js';
|
|
2
2
|
import { parseCreatedInvoice, parseInvoice, parseInvoicePage } from '../model/Invoice.js';
|
|
3
|
+
import { parseInvoiceSummary, SummaryPeriod } from '../model/InvoiceSummary.js';
|
|
3
4
|
const UUID = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
|
|
4
5
|
const DAY = /^\d{4}-\d{2}-\d{2}$/;
|
|
5
6
|
const IDEMPOTENCY_KEY = /^[\x21-\x7e]{1,255}$/;
|
|
@@ -21,18 +22,37 @@ export class Invoices {
|
|
|
21
22
|
if (options.idempotencyKey !== undefined && !IDEMPOTENCY_KEY.test(options.idempotencyKey)) {
|
|
22
23
|
throw new RangeError('The idempotency key must be 1 to 255 printable ASCII characters without spaces, such as your order id');
|
|
23
24
|
}
|
|
25
|
+
// The bounds (platform.limits()) are checked by the API, which answers invalid_invoice_lifetime.
|
|
26
|
+
if (input.expiresInMinutes !== undefined && !Number.isSafeInteger(input.expiresInMinutes)) {
|
|
27
|
+
throw new RangeError('expiresInMinutes must be a whole number of minutes, for example 60 or 1440');
|
|
28
|
+
}
|
|
24
29
|
const body = { amountUsdCents: input.amountUsdCents };
|
|
25
30
|
if (input.externalReference !== undefined)
|
|
26
31
|
body['externalReference'] = input.externalReference;
|
|
27
32
|
if (input.returnUrl !== undefined)
|
|
28
33
|
body['returnUrl'] = input.returnUrl;
|
|
34
|
+
if (input.expiresInMinutes !== undefined)
|
|
35
|
+
body['expiresInMinutes'] = input.expiresInMinutes;
|
|
29
36
|
return parseCreatedInvoice(Fields.of(await this.transport.post('/v1/invoices', body, options.idempotencyKey), 'invoice'));
|
|
30
37
|
}
|
|
31
38
|
async get(invoiceId) {
|
|
32
|
-
|
|
39
|
+
Invoices.checkId(invoiceId);
|
|
40
|
+
return parseInvoice(Fields.of(await this.transport.get(`/v1/invoices/${invoiceId}`), 'invoice'));
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Cancels an invoice that is still waiting for its first payment, for example when the order was cancelled: the payment
|
|
44
|
+
* page tells the buyer not to pay and the webhook invoice.cancelled is sent. Cancelling it again returns it unchanged.
|
|
45
|
+
* Once a payment has been seen the API refuses with ApiError.INVOICE_NOT_CANCELLABLE; money that still arrives after a
|
|
46
|
+
* cancel makes the invoice paid_late. Not retried on its own; calling it again is safe.
|
|
47
|
+
*/
|
|
48
|
+
async cancel(invoiceId) {
|
|
49
|
+
Invoices.checkId(invoiceId);
|
|
50
|
+
return parseInvoice(Fields.of(await this.transport.post(`/v1/invoices/${invoiceId}/cancel`, {}), 'invoice'));
|
|
51
|
+
}
|
|
52
|
+
// Ids are UUIDs; anything else (such as "..") could make the request reach another path with your key.
|
|
53
|
+
static checkId(invoiceId) {
|
|
33
54
|
if (!UUID.test(invoiceId))
|
|
34
55
|
throw new RangeError('An invoice id is a UUID, like 7c3360b5-e8cc-4775-8a13-7324d4f1296e');
|
|
35
|
-
return parseInvoice(Fields.of(await this.transport.get(`/v1/invoices/${invoiceId}`), 'invoice'));
|
|
36
56
|
}
|
|
37
57
|
/** One page of invoices, newest first. */
|
|
38
58
|
async list(options = {}) {
|
|
@@ -61,6 +81,34 @@ export class Invoices {
|
|
|
61
81
|
query['q'] = options.search;
|
|
62
82
|
return parseInvoicePage(Fields.of(await this.transport.get('/v1/invoices', query), 'invoices'));
|
|
63
83
|
}
|
|
84
|
+
/**
|
|
85
|
+
* Totals of the invoices created in a range of UTC days: counts per status, the invoiced amount and the money received,
|
|
86
|
+
* also per network and token. Pass a period (SummaryPeriod) or both days. One request covers at most 92 days, so ask for
|
|
87
|
+
* a year in four parts; a longer range is refused with ApiError.INVALID_INVOICE_FILTER. The API allows 30 calls a minute per store.
|
|
88
|
+
*/
|
|
89
|
+
async summary(input) {
|
|
90
|
+
// Read loosely: a JavaScript caller can pass any mix, and it is refused here rather than by the API.
|
|
91
|
+
const given = input;
|
|
92
|
+
const query = {};
|
|
93
|
+
const hasDays = given.createdFrom !== undefined || given.createdTo !== undefined;
|
|
94
|
+
if ((given.period !== undefined) === hasDays)
|
|
95
|
+
throw new RangeError('Pass either period or both createdFrom and createdTo');
|
|
96
|
+
if (hasDays) {
|
|
97
|
+
for (const name of ['createdFrom', 'createdTo']) {
|
|
98
|
+
const day = given[name];
|
|
99
|
+
if (typeof day !== 'string' || !DAY.test(day))
|
|
100
|
+
throw new RangeError(`${name} must be a date as YYYY-MM-DD`);
|
|
101
|
+
query[name] = day;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
else {
|
|
105
|
+
const period = given.period;
|
|
106
|
+
if (typeof period !== 'string' || !Object.values(SummaryPeriod).includes(period))
|
|
107
|
+
throw new RangeError(`period must be one of ${Object.values(SummaryPeriod).join(', ')}`);
|
|
108
|
+
query['period'] = period;
|
|
109
|
+
}
|
|
110
|
+
return parseInvoiceSummary(Fields.of(await this.transport.get('/v1/invoices/summary', query), 'summary'));
|
|
111
|
+
}
|
|
64
112
|
/** Every invoice, newest first, fetching the pages as you iterate: `for await (const invoice of invoices.all())`. */
|
|
65
113
|
async *all(options = {}) {
|
|
66
114
|
const { pageSize, ...filter } = options;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Invoices.js","sourceRoot":"","sources":["../../src/resources/Invoices.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,gBAAgB,EAAgF,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"Invoices.js","sourceRoot":"","sources":["../../src/resources/Invoices.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { Transport } from '../http/Transport.js';
|
|
2
|
+
import { type UnmatchedTransfer } from '../model/UnmatchedTransfer.js';
|
|
3
|
+
/** Transfers to the payout wallet that matched no invoice, on the networks of the key's store. Read only. */
|
|
4
|
+
export declare class UnmatchedTransfers {
|
|
5
|
+
private readonly transport;
|
|
6
|
+
constructor(transport: Transport);
|
|
7
|
+
/** Newest first, at most 100. The API allows 30 calls a minute per store. */
|
|
8
|
+
list(): Promise<UnmatchedTransfer[]>;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=UnmatchedTransfers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UnmatchedTransfers.d.ts","sourceRoot":"","sources":["../../src/resources/UnmatchedTransfers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAA0B,KAAK,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAE/F,6GAA6G;AAC7G,qBAAa,kBAAkB;IACjB,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAAT,SAAS,EAAE,SAAS;IAEjD,6EAA6E;IACvE,IAAI,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;CAK3C"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { UnexpectedResponseError } from '../errors/UnexpectedResponseError.js';
|
|
2
|
+
import { Fields } from '../model/Fields.js';
|
|
3
|
+
import { parseUnmatchedTransfer } from '../model/UnmatchedTransfer.js';
|
|
4
|
+
/** Transfers to the payout wallet that matched no invoice, on the networks of the key's store. Read only. */
|
|
5
|
+
export class UnmatchedTransfers {
|
|
6
|
+
transport;
|
|
7
|
+
constructor(transport) {
|
|
8
|
+
this.transport = transport;
|
|
9
|
+
}
|
|
10
|
+
/** Newest first, at most 100. The API allows 30 calls a minute per store. */
|
|
11
|
+
async list() {
|
|
12
|
+
const data = await this.transport.get('/v1/unmatched-transfers');
|
|
13
|
+
if (!Array.isArray(data))
|
|
14
|
+
throw new UnexpectedResponseError('unmatchedTransfers is not a list');
|
|
15
|
+
return data.map((item, i) => parseUnmatchedTransfer(Fields.of(item, `unmatchedTransfers[${i}]`)));
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=UnmatchedTransfers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UnmatchedTransfers.js","sourceRoot":"","sources":["../../src/resources/UnmatchedTransfers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAE/E,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,sBAAsB,EAA0B,MAAM,+BAA+B,CAAC;AAE/F,6GAA6G;AAC7G,MAAM,OAAO,kBAAkB;IACA;IAA7B,YAA6B,SAAoB;QAApB,cAAS,GAAT,SAAS,CAAW;IAAG,CAAC;IAErD,6EAA6E;IAC7E,KAAK,CAAC,IAAI;QACR,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;QACjE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,uBAAuB,CAAC,kCAAkC,CAAC,CAAC;QAChG,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACpG,CAAC;CACF"}
|
package/dist/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const VERSION = "1.
|
|
1
|
+
export declare const VERSION = "1.7.0";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/version.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const VERSION = '1.
|
|
1
|
+
export const VERSION = '1.7.0';
|
|
2
2
|
//# sourceMappingURL=version.js.map
|
|
@@ -2,7 +2,7 @@ import type { Fields } from '../model/Fields.js';
|
|
|
2
2
|
import { type Invoice } from '../model/Invoice.js';
|
|
3
3
|
/**
|
|
4
4
|
* A verified webhook. Types: invoice.paid, invoice.overpaid, invoice.underpaid, invoice.expired, invoice.paid_late,
|
|
5
|
-
* invoice.on_hold, invoice.payment_flagged, store.payout_attention and webhook.test. invoice.payment_flagged: a payment of a
|
|
5
|
+
* invoice.on_hold, invoice.cancelled, invoice.payment_flagged, store.payout_attention and webhook.test. invoice.payment_flagged: a payment of a
|
|
6
6
|
* settled invoice was flagged by screening; the invoice keeps its status and `data.payment` holds the payment.
|
|
7
7
|
* store.payout_attention: the EVM payout wallet of the account became unconfirmed or is fine again; `invoice` is null and
|
|
8
8
|
* `data.payout` holds status, blockedNetworks and dashboardUrl. Read stores.current() again for the current state.
|
package/package.json
CHANGED