@elyonar/einvoice-js 0.1.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/LICENSE +21 -0
- package/README.md +230 -0
- package/dist/cjs/client/http-client.d.ts +52 -0
- package/dist/cjs/client/http-client.d.ts.map +1 -0
- package/dist/cjs/client/http-client.js +117 -0
- package/dist/cjs/client/http-client.js.map +1 -0
- package/dist/cjs/client/index.d.ts +3 -0
- package/dist/cjs/client/index.d.ts.map +1 -0
- package/dist/cjs/client/index.js +6 -0
- package/dist/cjs/client/index.js.map +1 -0
- package/dist/cjs/einvoice.d.ts +69 -0
- package/dist/cjs/einvoice.d.ts.map +1 -0
- package/dist/cjs/einvoice.js +79 -0
- package/dist/cjs/einvoice.js.map +1 -0
- package/dist/cjs/errors.d.ts +74 -0
- package/dist/cjs/errors.d.ts.map +1 -0
- package/dist/cjs/errors.js +98 -0
- package/dist/cjs/errors.js.map +1 -0
- package/dist/cjs/index.d.ts +12 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +40 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/services/billing.d.ts +75 -0
- package/dist/cjs/services/billing.d.ts.map +1 -0
- package/dist/cjs/services/billing.js +172 -0
- package/dist/cjs/services/billing.js.map +1 -0
- package/dist/cjs/services/buyers.d.ts +57 -0
- package/dist/cjs/services/buyers.d.ts.map +1 -0
- package/dist/cjs/services/buyers.js +110 -0
- package/dist/cjs/services/buyers.js.map +1 -0
- package/dist/cjs/services/index.d.ts +5 -0
- package/dist/cjs/services/index.d.ts.map +1 -0
- package/dist/cjs/services/index.js +12 -0
- package/dist/cjs/services/index.js.map +1 -0
- package/dist/cjs/services/invoices.d.ts +94 -0
- package/dist/cjs/services/invoices.d.ts.map +1 -0
- package/dist/cjs/services/invoices.js +193 -0
- package/dist/cjs/services/invoices.js.map +1 -0
- package/dist/cjs/services/sellers.d.ts +61 -0
- package/dist/cjs/services/sellers.d.ts.map +1 -0
- package/dist/cjs/services/sellers.js +114 -0
- package/dist/cjs/services/sellers.js.map +1 -0
- package/dist/cjs/types/billing.d.ts +174 -0
- package/dist/cjs/types/billing.d.ts.map +1 -0
- package/dist/cjs/types/billing.js +6 -0
- package/dist/cjs/types/billing.js.map +1 -0
- package/dist/cjs/types/common.d.ts +53 -0
- package/dist/cjs/types/common.d.ts.map +1 -0
- package/dist/cjs/types/common.js +6 -0
- package/dist/cjs/types/common.js.map +1 -0
- package/dist/cjs/types/index.d.ts +6 -0
- package/dist/cjs/types/index.d.ts.map +1 -0
- package/dist/cjs/types/index.js +3 -0
- package/dist/cjs/types/index.js.map +1 -0
- package/dist/cjs/types/invoice.d.ts +183 -0
- package/dist/cjs/types/invoice.d.ts.map +1 -0
- package/dist/cjs/types/invoice.js +6 -0
- package/dist/cjs/types/invoice.js.map +1 -0
- package/dist/cjs/types/party.d.ts +128 -0
- package/dist/cjs/types/party.d.ts.map +1 -0
- package/dist/cjs/types/party.js +3 -0
- package/dist/cjs/types/party.js.map +1 -0
- package/dist/cjs/types/webhook.d.ts +14 -0
- package/dist/cjs/types/webhook.d.ts.map +1 -0
- package/dist/cjs/types/webhook.js +6 -0
- package/dist/cjs/types/webhook.js.map +1 -0
- package/dist/cjs/webhooks/index.d.ts +3 -0
- package/dist/cjs/webhooks/index.d.ts.map +1 -0
- package/dist/cjs/webhooks/index.js +6 -0
- package/dist/cjs/webhooks/index.js.map +1 -0
- package/dist/cjs/webhooks/verify.d.ts +43 -0
- package/dist/cjs/webhooks/verify.d.ts.map +1 -0
- package/dist/cjs/webhooks/verify.js +92 -0
- package/dist/cjs/webhooks/verify.js.map +1 -0
- package/dist/esm/client/http-client.d.ts +52 -0
- package/dist/esm/client/http-client.d.ts.map +1 -0
- package/dist/esm/client/http-client.js +113 -0
- package/dist/esm/client/http-client.js.map +1 -0
- package/dist/esm/client/index.d.ts +3 -0
- package/dist/esm/client/index.d.ts.map +1 -0
- package/dist/esm/client/index.js +2 -0
- package/dist/esm/client/index.js.map +1 -0
- package/dist/esm/einvoice.d.ts +69 -0
- package/dist/esm/einvoice.d.ts.map +1 -0
- package/dist/esm/einvoice.js +75 -0
- package/dist/esm/einvoice.js.map +1 -0
- package/dist/esm/errors.d.ts +74 -0
- package/dist/esm/errors.d.ts.map +1 -0
- package/dist/esm/errors.js +89 -0
- package/dist/esm/errors.js.map +1 -0
- package/dist/esm/index.d.ts +12 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +24 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/services/billing.d.ts +75 -0
- package/dist/esm/services/billing.d.ts.map +1 -0
- package/dist/esm/services/billing.js +168 -0
- package/dist/esm/services/billing.js.map +1 -0
- package/dist/esm/services/buyers.d.ts +57 -0
- package/dist/esm/services/buyers.d.ts.map +1 -0
- package/dist/esm/services/buyers.js +106 -0
- package/dist/esm/services/buyers.js.map +1 -0
- package/dist/esm/services/index.d.ts +5 -0
- package/dist/esm/services/index.d.ts.map +1 -0
- package/dist/esm/services/index.js +5 -0
- package/dist/esm/services/index.js.map +1 -0
- package/dist/esm/services/invoices.d.ts +94 -0
- package/dist/esm/services/invoices.d.ts.map +1 -0
- package/dist/esm/services/invoices.js +189 -0
- package/dist/esm/services/invoices.js.map +1 -0
- package/dist/esm/services/sellers.d.ts +61 -0
- package/dist/esm/services/sellers.d.ts.map +1 -0
- package/dist/esm/services/sellers.js +110 -0
- package/dist/esm/services/sellers.js.map +1 -0
- package/dist/esm/types/billing.d.ts +174 -0
- package/dist/esm/types/billing.d.ts.map +1 -0
- package/dist/esm/types/billing.js +5 -0
- package/dist/esm/types/billing.js.map +1 -0
- package/dist/esm/types/common.d.ts +53 -0
- package/dist/esm/types/common.d.ts.map +1 -0
- package/dist/esm/types/common.js +5 -0
- package/dist/esm/types/common.js.map +1 -0
- package/dist/esm/types/index.d.ts +6 -0
- package/dist/esm/types/index.d.ts.map +1 -0
- package/dist/esm/types/index.js +2 -0
- package/dist/esm/types/index.js.map +1 -0
- package/dist/esm/types/invoice.d.ts +183 -0
- package/dist/esm/types/invoice.d.ts.map +1 -0
- package/dist/esm/types/invoice.js +5 -0
- package/dist/esm/types/invoice.js.map +1 -0
- package/dist/esm/types/party.d.ts +128 -0
- package/dist/esm/types/party.d.ts.map +1 -0
- package/dist/esm/types/party.js +2 -0
- package/dist/esm/types/party.js.map +1 -0
- package/dist/esm/types/webhook.d.ts +14 -0
- package/dist/esm/types/webhook.d.ts.map +1 -0
- package/dist/esm/types/webhook.js +5 -0
- package/dist/esm/types/webhook.js.map +1 -0
- package/dist/esm/webhooks/index.d.ts +3 -0
- package/dist/esm/webhooks/index.d.ts.map +1 -0
- package/dist/esm/webhooks/index.js +2 -0
- package/dist/esm/webhooks/index.js.map +1 -0
- package/dist/esm/webhooks/verify.d.ts +43 -0
- package/dist/esm/webhooks/verify.d.ts.map +1 -0
- package/dist/esm/webhooks/verify.js +89 -0
- package/dist/esm/webhooks/verify.js.map +1 -0
- package/package.json +87 -0
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base error class for all E-Invoice SDK errors.
|
|
3
|
+
*/
|
|
4
|
+
export class EInvoiceError extends Error {
|
|
5
|
+
constructor(message) {
|
|
6
|
+
super(message);
|
|
7
|
+
this.name = 'EInvoiceError';
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Represents an API error response from the E-Invoice platform.
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```ts
|
|
15
|
+
* try {
|
|
16
|
+
* await client.invoices.get('inv_123');
|
|
17
|
+
* } catch (err) {
|
|
18
|
+
* if (err instanceof EInvoiceApiError) {
|
|
19
|
+
* console.log(err.statusCode); // 404
|
|
20
|
+
* console.log(err.errorCode); // 'INVOICE_NOT_FOUND'
|
|
21
|
+
* console.log(err.errors); // [{ field: 'id', message: 'Invoice not found' }]
|
|
22
|
+
* }
|
|
23
|
+
* }
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export class EInvoiceApiError extends EInvoiceError {
|
|
27
|
+
statusCode;
|
|
28
|
+
errorCode;
|
|
29
|
+
errors;
|
|
30
|
+
constructor(message, statusCode, errorCode, errors = []) {
|
|
31
|
+
super(message);
|
|
32
|
+
this.statusCode = statusCode;
|
|
33
|
+
this.errorCode = errorCode;
|
|
34
|
+
this.errors = errors;
|
|
35
|
+
this.name = 'EInvoiceApiError';
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Thrown when the API returns HTTP 429 (Too Many Requests).
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* ```ts
|
|
43
|
+
* try {
|
|
44
|
+
* await client.invoices.list();
|
|
45
|
+
* } catch (err) {
|
|
46
|
+
* if (err instanceof EInvoiceRateLimitError) {
|
|
47
|
+
* console.log(`Retry after ${err.retryAfter} seconds`);
|
|
48
|
+
* }
|
|
49
|
+
* }
|
|
50
|
+
* ```
|
|
51
|
+
*/
|
|
52
|
+
export class EInvoiceRateLimitError extends EInvoiceApiError {
|
|
53
|
+
retryAfter;
|
|
54
|
+
constructor(message, retryAfter) {
|
|
55
|
+
super(message, 429, 'RATE_LIMIT_EXCEEDED');
|
|
56
|
+
this.retryAfter = retryAfter;
|
|
57
|
+
this.name = 'EInvoiceRateLimitError';
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Thrown when a request times out.
|
|
62
|
+
*/
|
|
63
|
+
export class EInvoiceTimeoutError extends EInvoiceError {
|
|
64
|
+
timeoutMs;
|
|
65
|
+
constructor(timeoutMs) {
|
|
66
|
+
super(`Request timed out after ${timeoutMs}ms`);
|
|
67
|
+
this.timeoutMs = timeoutMs;
|
|
68
|
+
this.name = 'EInvoiceTimeoutError';
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Thrown when the SDK is misconfigured (e.g. missing API key).
|
|
73
|
+
*/
|
|
74
|
+
export class EInvoiceConfigError extends EInvoiceError {
|
|
75
|
+
constructor(message) {
|
|
76
|
+
super(message);
|
|
77
|
+
this.name = 'EInvoiceConfigError';
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Thrown when webhook signature verification fails.
|
|
82
|
+
*/
|
|
83
|
+
export class EInvoiceWebhookError extends EInvoiceError {
|
|
84
|
+
constructor(message) {
|
|
85
|
+
super(message);
|
|
86
|
+
this.name = 'EInvoiceWebhookError';
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,KAAK;IACtC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;IAC9B,CAAC;CACF;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,OAAO,gBAAiB,SAAQ,aAAa;IAG/B;IACA;IACA;IAJlB,YACE,OAAe,EACC,UAAkB,EAClB,SAAkB,EAClB,SAAoE,EAAE;QAEtF,KAAK,CAAC,OAAO,CAAC,CAAC;QAJC,eAAU,GAAV,UAAU,CAAQ;QAClB,cAAS,GAAT,SAAS,CAAS;QAClB,WAAM,GAAN,MAAM,CAAgE;QAGtF,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;IACjC,CAAC;CACF;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAO,sBAAuB,SAAQ,gBAAgB;IAGxC;IAFlB,YACE,OAAe,EACC,UAAkB;QAElC,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,qBAAqB,CAAC,CAAC;QAF3B,eAAU,GAAV,UAAU,CAAQ;QAGlC,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;IACvC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,oBAAqB,SAAQ,aAAa;IACzB;IAA5B,YAA4B,SAAiB;QAC3C,KAAK,CAAC,2BAA2B,SAAS,IAAI,CAAC,CAAC;QADtB,cAAS,GAAT,SAAS,CAAQ;QAE3C,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;IACrC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,mBAAoB,SAAQ,aAAa;IACpD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACpC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,oBAAqB,SAAQ,aAAa;IACrD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;IACrC,CAAC;CACF"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export { EInvoice } from './einvoice.js';
|
|
2
|
+
export { InvoiceService } from './services/invoices.js';
|
|
3
|
+
export { SellerService } from './services/sellers.js';
|
|
4
|
+
export { BuyerService } from './services/buyers.js';
|
|
5
|
+
export { BillingService } from './services/billing.js';
|
|
6
|
+
export { HttpClient } from './client/http-client.js';
|
|
7
|
+
export type { HttpClientConfig } from './client/http-client.js';
|
|
8
|
+
export { EInvoiceError, EInvoiceApiError, EInvoiceRateLimitError, EInvoiceTimeoutError, EInvoiceConfigError, EInvoiceWebhookError, } from './errors.js';
|
|
9
|
+
export { verifyWebhook } from './webhooks/verify.js';
|
|
10
|
+
export type { VerifyWebhookOptions } from './webhooks/verify.js';
|
|
11
|
+
export type { ApiResponse, ApiResponseMeta, PaginationMeta, PaginationParams, PaginatedResult, RateLimitInfo, RequestOptions, InvoiceType, InvoiceStatus, PaymentStatus, Currency, PostalAddress, LineItem, Invoice, CreateInvoiceParams, UpdateInvoiceParams, ListInvoicesParams, SubmitResult, BatchSubmitResult, RetryResult, InvoiceStatusResult, ValidationResult, DownloadResult, InvoiceStatistics, InvoiceStatisticsParams, CancelInvoiceParams, PartyType, PartyStatus, TinVerificationStatus, Seller, Buyer, CreateSellerParams, UpdateSellerParams, CreateBuyerParams, UpdateBuyerParams, ListSellersParams, ListBuyersParams, TinVerificationResult, SearchResult, BillingMode, BillingAccountStatus, SubscriptionStatus, SubscriptionInterval, BillingPaymentStatus, CreditTransactionType, CreditTransactionStatus, BillingAccount, SubscriptionPlan, SubscriptionPlanPrice, Subscription, CreditPackage, CreditPackagePrice, CreditTransaction, Payment, BalanceCheck, PurchaseCreditsParams, PurchaseResult, UsageAnalytics, BillingSetup, ListPlansParams, ListPackagesParams, ListPaymentsParams, ListTransactionsParams, UsageAnalyticsParams, WebhookEventType, WebhookEvent, WebhookHeaders, } from './types/index.js';
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAKzC,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAKvD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,YAAY,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAKhE,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,aAAa,CAAC;AAKrB,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,YAAY,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAKjE,YAAY,EAEV,WAAW,EACX,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,cAAc,EAGd,WAAW,EACX,aAAa,EACb,aAAa,EACb,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,OAAO,EACP,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,EACjB,WAAW,EACX,mBAAmB,EACnB,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,uBAAuB,EACvB,mBAAmB,EAGnB,SAAS,EACT,WAAW,EACX,qBAAqB,EACrB,MAAM,EACN,KAAK,EACL,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,YAAY,EAGZ,WAAW,EACX,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,uBAAuB,EACvB,cAAc,EACd,gBAAgB,EAChB,qBAAqB,EACrB,YAAY,EACZ,aAAa,EACb,kBAAkB,EAClB,iBAAiB,EACjB,OAAO,EACP,YAAY,EACZ,qBAAqB,EACrB,cAAc,EACd,cAAc,EACd,YAAY,EACZ,eAAe,EACf,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,oBAAoB,EAGpB,gBAAgB,EAChB,YAAY,EACZ,cAAc,GACf,MAAM,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
// ═══════════════════════════════════════════
|
|
2
|
+
// Main Client
|
|
3
|
+
// ═══════════════════════════════════════════
|
|
4
|
+
export { EInvoice } from './einvoice.js';
|
|
5
|
+
// ═══════════════════════════════════════════
|
|
6
|
+
// Services (for advanced/custom usage)
|
|
7
|
+
// ═══════════════════════════════════════════
|
|
8
|
+
export { InvoiceService } from './services/invoices.js';
|
|
9
|
+
export { SellerService } from './services/sellers.js';
|
|
10
|
+
export { BuyerService } from './services/buyers.js';
|
|
11
|
+
export { BillingService } from './services/billing.js';
|
|
12
|
+
// ═══════════════════════════════════════════
|
|
13
|
+
// HTTP Client (for advanced/custom usage)
|
|
14
|
+
// ═══════════════════════════════════════════
|
|
15
|
+
export { HttpClient } from './client/http-client.js';
|
|
16
|
+
// ═══════════════════════════════════════════
|
|
17
|
+
// Errors
|
|
18
|
+
// ═══════════════════════════════════════════
|
|
19
|
+
export { EInvoiceError, EInvoiceApiError, EInvoiceRateLimitError, EInvoiceTimeoutError, EInvoiceConfigError, EInvoiceWebhookError, } from './errors.js';
|
|
20
|
+
// ═══════════════════════════════════════════
|
|
21
|
+
// Webhooks
|
|
22
|
+
// ═══════════════════════════════════════════
|
|
23
|
+
export { verifyWebhook } from './webhooks/verify.js';
|
|
24
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAC9C,cAAc;AACd,8CAA8C;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,8CAA8C;AAC9C,uCAAuC;AACvC,8CAA8C;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,8CAA8C;AAC9C,0CAA0C;AAC1C,8CAA8C;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAGrD,8CAA8C;AAC9C,SAAS;AACT,8CAA8C;AAC9C,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,aAAa,CAAC;AAErB,8CAA8C;AAC9C,WAAW;AACX,8CAA8C;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import type { HttpClient } from '../client/http-client.js';
|
|
2
|
+
import type { ApiResponse, RequestOptions } from '../types/common.js';
|
|
3
|
+
import type { BillingAccount, BalanceCheck, BillingSetup, SubscriptionPlan, CreditPackage, Subscription, Payment, CreditTransaction, PurchaseCreditsParams, PurchaseResult, UsageAnalytics, ListPlansParams, ListPackagesParams, ListPaymentsParams, ListTransactionsParams, UsageAnalyticsParams } from '../types/billing.js';
|
|
4
|
+
/**
|
|
5
|
+
* Service for managing billing, subscriptions, credits, and payments.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```ts
|
|
9
|
+
* const client = new EInvoice({ apiKey: 'sk_test_...' });
|
|
10
|
+
*
|
|
11
|
+
* // Check credit balance
|
|
12
|
+
* const account = await client.billing.getAccount();
|
|
13
|
+
* console.log(account.data.creditBalance);
|
|
14
|
+
*
|
|
15
|
+
* // Verify sufficient credits before submitting
|
|
16
|
+
* const check = await client.billing.checkBalance(5);
|
|
17
|
+
* if (!check.data.sufficient) {
|
|
18
|
+
* console.log(`Need ${check.data.deficit} more credits`);
|
|
19
|
+
* }
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
export declare class BillingService {
|
|
23
|
+
private readonly http;
|
|
24
|
+
/** @internal */
|
|
25
|
+
constructor(http: HttpClient);
|
|
26
|
+
/**
|
|
27
|
+
* Get the current billing account details including credit balance.
|
|
28
|
+
*/
|
|
29
|
+
getAccount(options?: RequestOptions): Promise<ApiResponse<BillingAccount>>;
|
|
30
|
+
/**
|
|
31
|
+
* Check if the account has sufficient credits for a given number of submissions.
|
|
32
|
+
*/
|
|
33
|
+
checkBalance(credits: number, options?: RequestOptions): Promise<ApiResponse<BalanceCheck>>;
|
|
34
|
+
/**
|
|
35
|
+
* Get full billing setup overview (account, subscription, plans, usage).
|
|
36
|
+
*/
|
|
37
|
+
getSetup(options?: RequestOptions): Promise<ApiResponse<BillingSetup>>;
|
|
38
|
+
/**
|
|
39
|
+
* List available subscription plans.
|
|
40
|
+
*/
|
|
41
|
+
getPlans(params?: ListPlansParams, options?: RequestOptions): Promise<ApiResponse<SubscriptionPlan[]>>;
|
|
42
|
+
/**
|
|
43
|
+
* List available credit packages for one-time purchase.
|
|
44
|
+
*/
|
|
45
|
+
getPackages(params?: ListPackagesParams, options?: RequestOptions): Promise<ApiResponse<CreditPackage[]>>;
|
|
46
|
+
/**
|
|
47
|
+
* Get the currently active subscription.
|
|
48
|
+
*/
|
|
49
|
+
getActiveSubscription(options?: RequestOptions): Promise<ApiResponse<Subscription>>;
|
|
50
|
+
/**
|
|
51
|
+
* Get subscription history.
|
|
52
|
+
*/
|
|
53
|
+
getSubscriptionHistory(options?: RequestOptions): Promise<ApiResponse<Subscription[]>>;
|
|
54
|
+
/**
|
|
55
|
+
* Purchase credits. Returns a checkout URL for payment.
|
|
56
|
+
*/
|
|
57
|
+
purchaseCredits(params: PurchaseCreditsParams, options?: RequestOptions): Promise<ApiResponse<PurchaseResult>>;
|
|
58
|
+
/**
|
|
59
|
+
* Get payment history.
|
|
60
|
+
*/
|
|
61
|
+
getPayments(params?: ListPaymentsParams, options?: RequestOptions): Promise<ApiResponse<Payment[]>>;
|
|
62
|
+
/**
|
|
63
|
+
* Get credit transaction history.
|
|
64
|
+
*/
|
|
65
|
+
getTransactions(params?: ListTransactionsParams, options?: RequestOptions): Promise<ApiResponse<CreditTransaction[]>>;
|
|
66
|
+
/**
|
|
67
|
+
* Get usage analytics: submissions, credits used, daily breakdown.
|
|
68
|
+
*/
|
|
69
|
+
getUsageAnalytics(params?: UsageAnalyticsParams, options?: RequestOptions): Promise<ApiResponse<UsageAnalytics>>;
|
|
70
|
+
/**
|
|
71
|
+
* Get credit consumption breakdown by API endpoint.
|
|
72
|
+
*/
|
|
73
|
+
getConsumptionBreakdown(options?: RequestOptions): Promise<ApiResponse<Record<string, unknown>>>;
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=billing.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"billing.d.ts","sourceRoot":"","sources":["../../../src/services/billing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,OAAO,EACP,iBAAiB,EACjB,qBAAqB,EACrB,cAAc,EACd,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,oBAAoB,EACrB,MAAM,qBAAqB,CAAC;AAE7B;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,cAAc;IAEb,OAAO,CAAC,QAAQ,CAAC,IAAI;IADjC,gBAAgB;gBACa,IAAI,EAAE,UAAU;IAM7C;;OAEG;IACG,UAAU,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IAQhF;;OAEG;IACG,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IASjG;;OAEG;IACG,QAAQ,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IAY5E;;OAEG;IACG,QAAQ,CAAC,MAAM,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAS5G;;OAEG;IACG,WAAW,CAAC,MAAM,CAAC,EAAE,kBAAkB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC,CAAC;IAa/G;;OAEG;IACG,qBAAqB,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IAQzF;;OAEG;IACG,sBAAsB,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC;IAY5F;;OAEG;IACG,eAAe,CAAC,MAAM,EAAE,qBAAqB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IASpH;;OAEG;IACG,WAAW,CAAC,MAAM,CAAC,EAAE,kBAAkB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;IASzG;;OAEG;IACG,eAAe,CAAC,MAAM,CAAC,EAAE,sBAAsB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAa3H;;OAEG;IACG,iBAAiB,CAAC,MAAM,CAAC,EAAE,oBAAoB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IAStH;;OAEG;IACG,uBAAuB,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAOvG"}
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Service for managing billing, subscriptions, credits, and payments.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* ```ts
|
|
6
|
+
* const client = new EInvoice({ apiKey: 'sk_test_...' });
|
|
7
|
+
*
|
|
8
|
+
* // Check credit balance
|
|
9
|
+
* const account = await client.billing.getAccount();
|
|
10
|
+
* console.log(account.data.creditBalance);
|
|
11
|
+
*
|
|
12
|
+
* // Verify sufficient credits before submitting
|
|
13
|
+
* const check = await client.billing.checkBalance(5);
|
|
14
|
+
* if (!check.data.sufficient) {
|
|
15
|
+
* console.log(`Need ${check.data.deficit} more credits`);
|
|
16
|
+
* }
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
export class BillingService {
|
|
20
|
+
http;
|
|
21
|
+
/** @internal */
|
|
22
|
+
constructor(http) {
|
|
23
|
+
this.http = http;
|
|
24
|
+
}
|
|
25
|
+
// ═══════════════════════════════════════════
|
|
26
|
+
// Account
|
|
27
|
+
// ═══════════════════════════════════════════
|
|
28
|
+
/**
|
|
29
|
+
* Get the current billing account details including credit balance.
|
|
30
|
+
*/
|
|
31
|
+
async getAccount(options) {
|
|
32
|
+
return this.http.request({
|
|
33
|
+
method: 'GET',
|
|
34
|
+
path: '/b/v1/billing-accounts/me',
|
|
35
|
+
requestOptions: options,
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Check if the account has sufficient credits for a given number of submissions.
|
|
40
|
+
*/
|
|
41
|
+
async checkBalance(credits, options) {
|
|
42
|
+
return this.http.request({
|
|
43
|
+
method: 'GET',
|
|
44
|
+
path: '/b/v1/billing-accounts/me/check-balance',
|
|
45
|
+
query: { credits },
|
|
46
|
+
requestOptions: options,
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Get full billing setup overview (account, subscription, plans, usage).
|
|
51
|
+
*/
|
|
52
|
+
async getSetup(options) {
|
|
53
|
+
return this.http.request({
|
|
54
|
+
method: 'GET',
|
|
55
|
+
path: '/b/v1/setup',
|
|
56
|
+
requestOptions: options,
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
// ═══════════════════════════════════════════
|
|
60
|
+
// Plans & Packages
|
|
61
|
+
// ═══════════════════════════════════════════
|
|
62
|
+
/**
|
|
63
|
+
* List available subscription plans.
|
|
64
|
+
*/
|
|
65
|
+
async getPlans(params, options) {
|
|
66
|
+
return this.http.request({
|
|
67
|
+
method: 'GET',
|
|
68
|
+
path: '/b/v1/plans/subscriptions',
|
|
69
|
+
query: params,
|
|
70
|
+
requestOptions: options,
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* List available credit packages for one-time purchase.
|
|
75
|
+
*/
|
|
76
|
+
async getPackages(params, options) {
|
|
77
|
+
return this.http.request({
|
|
78
|
+
method: 'GET',
|
|
79
|
+
path: '/b/v1/plans/packages',
|
|
80
|
+
query: params,
|
|
81
|
+
requestOptions: options,
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
// ═══════════════════════════════════════════
|
|
85
|
+
// Subscriptions
|
|
86
|
+
// ═══════════════════════════════════════════
|
|
87
|
+
/**
|
|
88
|
+
* Get the currently active subscription.
|
|
89
|
+
*/
|
|
90
|
+
async getActiveSubscription(options) {
|
|
91
|
+
return this.http.request({
|
|
92
|
+
method: 'GET',
|
|
93
|
+
path: '/b/v1/subscriptions/active',
|
|
94
|
+
requestOptions: options,
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Get subscription history.
|
|
99
|
+
*/
|
|
100
|
+
async getSubscriptionHistory(options) {
|
|
101
|
+
return this.http.request({
|
|
102
|
+
method: 'GET',
|
|
103
|
+
path: '/b/v1/subscriptions/history',
|
|
104
|
+
requestOptions: options,
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
// ═══════════════════════════════════════════
|
|
108
|
+
// Payments & Credits
|
|
109
|
+
// ═══════════════════════════════════════════
|
|
110
|
+
/**
|
|
111
|
+
* Purchase credits. Returns a checkout URL for payment.
|
|
112
|
+
*/
|
|
113
|
+
async purchaseCredits(params, options) {
|
|
114
|
+
return this.http.request({
|
|
115
|
+
method: 'POST',
|
|
116
|
+
path: '/b/v1/payments/purchase',
|
|
117
|
+
body: params,
|
|
118
|
+
requestOptions: options,
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Get payment history.
|
|
123
|
+
*/
|
|
124
|
+
async getPayments(params, options) {
|
|
125
|
+
return this.http.request({
|
|
126
|
+
method: 'GET',
|
|
127
|
+
path: '/b/v1/payments/history',
|
|
128
|
+
query: params,
|
|
129
|
+
requestOptions: options,
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Get credit transaction history.
|
|
134
|
+
*/
|
|
135
|
+
async getTransactions(params, options) {
|
|
136
|
+
return this.http.request({
|
|
137
|
+
method: 'GET',
|
|
138
|
+
path: '/b/v1/transactions',
|
|
139
|
+
query: params,
|
|
140
|
+
requestOptions: options,
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
// ═══════════════════════════════════════════
|
|
144
|
+
// Analytics
|
|
145
|
+
// ═══════════════════════════════════════════
|
|
146
|
+
/**
|
|
147
|
+
* Get usage analytics: submissions, credits used, daily breakdown.
|
|
148
|
+
*/
|
|
149
|
+
async getUsageAnalytics(params, options) {
|
|
150
|
+
return this.http.request({
|
|
151
|
+
method: 'GET',
|
|
152
|
+
path: '/b/v1/transactions/analytics/usage',
|
|
153
|
+
query: params,
|
|
154
|
+
requestOptions: options,
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Get credit consumption breakdown by API endpoint.
|
|
159
|
+
*/
|
|
160
|
+
async getConsumptionBreakdown(options) {
|
|
161
|
+
return this.http.request({
|
|
162
|
+
method: 'GET',
|
|
163
|
+
path: '/b/v1/transactions/breakdown/by-endpoint',
|
|
164
|
+
requestOptions: options,
|
|
165
|
+
});
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
//# sourceMappingURL=billing.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"billing.js","sourceRoot":"","sources":["../../../src/services/billing.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import type { HttpClient } from '../client/http-client.js';
|
|
2
|
+
import type { ApiResponse, RequestOptions } from '../types/common.js';
|
|
3
|
+
import type { Buyer, CreateBuyerParams, UpdateBuyerParams, ListBuyersParams, TinVerificationResult, SearchResult } from '../types/party.js';
|
|
4
|
+
/**
|
|
5
|
+
* Service for managing buyers (customers who receive invoices).
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```ts
|
|
9
|
+
* const client = new EInvoice({ apiKey: 'sk_test_...' });
|
|
10
|
+
*
|
|
11
|
+
* const buyer = await client.buyers.create({
|
|
12
|
+
* partyName: 'Widget Co',
|
|
13
|
+
* tin: '98765432-0001',
|
|
14
|
+
* buyerType: 'COMPANY',
|
|
15
|
+
* });
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
export declare class BuyerService {
|
|
19
|
+
private readonly http;
|
|
20
|
+
/** @internal */
|
|
21
|
+
constructor(http: HttpClient);
|
|
22
|
+
/**
|
|
23
|
+
* Register a new buyer.
|
|
24
|
+
*/
|
|
25
|
+
create(params: CreateBuyerParams, options?: RequestOptions): Promise<ApiResponse<Buyer>>;
|
|
26
|
+
/**
|
|
27
|
+
* Get a buyer by ID.
|
|
28
|
+
*/
|
|
29
|
+
get(id: string, options?: RequestOptions): Promise<ApiResponse<Buyer>>;
|
|
30
|
+
/**
|
|
31
|
+
* List buyers with optional filtering and pagination.
|
|
32
|
+
*/
|
|
33
|
+
list(params?: ListBuyersParams, options?: RequestOptions): Promise<ApiResponse<Buyer[]>>;
|
|
34
|
+
/**
|
|
35
|
+
* Update buyer details. Note: TIN cannot be changed after creation.
|
|
36
|
+
*/
|
|
37
|
+
update(id: string, params: UpdateBuyerParams, options?: RequestOptions): Promise<ApiResponse<Buyer>>;
|
|
38
|
+
/**
|
|
39
|
+
* Delete a buyer. Only buyers with no associated invoices can be deleted.
|
|
40
|
+
*/
|
|
41
|
+
delete(id: string, options?: RequestOptions): Promise<ApiResponse<{
|
|
42
|
+
deleted: boolean;
|
|
43
|
+
}>>;
|
|
44
|
+
/**
|
|
45
|
+
* Trigger TIN verification with the tax authority.
|
|
46
|
+
*/
|
|
47
|
+
verifyTin(id: string, options?: RequestOptions): Promise<ApiResponse<TinVerificationResult>>;
|
|
48
|
+
/**
|
|
49
|
+
* Check TIN verification status.
|
|
50
|
+
*/
|
|
51
|
+
getVerificationStatus(id: string, options?: RequestOptions): Promise<ApiResponse<TinVerificationResult>>;
|
|
52
|
+
/**
|
|
53
|
+
* Search buyers by name or TIN.
|
|
54
|
+
*/
|
|
55
|
+
search(query: string, options?: RequestOptions): Promise<ApiResponse<SearchResult>>;
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=buyers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buyers.d.ts","sourceRoot":"","sources":["../../../src/services/buyers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,KAAK,EACV,KAAK,EACL,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,YAAY,EACb,MAAM,mBAAmB,CAAC;AAE3B;;;;;;;;;;;;;GAaG;AACH,qBAAa,YAAY;IAEX,OAAO,CAAC,QAAQ,CAAC,IAAI;IADjC,gBAAgB;gBACa,IAAI,EAAE,UAAU;IAE7C;;OAEG;IACG,MAAM,CAAC,MAAM,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAS9F;;OAEG;IACG,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAQ5E;;OAEG;IACG,IAAI,CAAC,MAAM,CAAC,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC;IAS9F;;OAEG;IACG,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAS1G;;OAEG;IACG,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IAQ9F;;OAEG;IACG,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,qBAAqB,CAAC,CAAC;IAQlG;;OAEG;IACG,qBAAqB,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,qBAAqB,CAAC,CAAC;IAQ9G;;OAEG;IACG,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;CAQ1F"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Service for managing buyers (customers who receive invoices).
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* ```ts
|
|
6
|
+
* const client = new EInvoice({ apiKey: 'sk_test_...' });
|
|
7
|
+
*
|
|
8
|
+
* const buyer = await client.buyers.create({
|
|
9
|
+
* partyName: 'Widget Co',
|
|
10
|
+
* tin: '98765432-0001',
|
|
11
|
+
* buyerType: 'COMPANY',
|
|
12
|
+
* });
|
|
13
|
+
* ```
|
|
14
|
+
*/
|
|
15
|
+
export class BuyerService {
|
|
16
|
+
http;
|
|
17
|
+
/** @internal */
|
|
18
|
+
constructor(http) {
|
|
19
|
+
this.http = http;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Register a new buyer.
|
|
23
|
+
*/
|
|
24
|
+
async create(params, options) {
|
|
25
|
+
return this.http.request({
|
|
26
|
+
method: 'POST',
|
|
27
|
+
path: '/i/v1/buyers',
|
|
28
|
+
body: params,
|
|
29
|
+
requestOptions: options,
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Get a buyer by ID.
|
|
34
|
+
*/
|
|
35
|
+
async get(id, options) {
|
|
36
|
+
return this.http.request({
|
|
37
|
+
method: 'GET',
|
|
38
|
+
path: `/i/v1/buyers/${id}`,
|
|
39
|
+
requestOptions: options,
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* List buyers with optional filtering and pagination.
|
|
44
|
+
*/
|
|
45
|
+
async list(params, options) {
|
|
46
|
+
return this.http.request({
|
|
47
|
+
method: 'GET',
|
|
48
|
+
path: '/i/v1/buyers',
|
|
49
|
+
query: params,
|
|
50
|
+
requestOptions: options,
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Update buyer details. Note: TIN cannot be changed after creation.
|
|
55
|
+
*/
|
|
56
|
+
async update(id, params, options) {
|
|
57
|
+
return this.http.request({
|
|
58
|
+
method: 'PATCH',
|
|
59
|
+
path: `/i/v1/buyers/${id}`,
|
|
60
|
+
body: params,
|
|
61
|
+
requestOptions: options,
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Delete a buyer. Only buyers with no associated invoices can be deleted.
|
|
66
|
+
*/
|
|
67
|
+
async delete(id, options) {
|
|
68
|
+
return this.http.request({
|
|
69
|
+
method: 'DELETE',
|
|
70
|
+
path: `/i/v1/buyers/${id}`,
|
|
71
|
+
requestOptions: options,
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Trigger TIN verification with the tax authority.
|
|
76
|
+
*/
|
|
77
|
+
async verifyTin(id, options) {
|
|
78
|
+
return this.http.request({
|
|
79
|
+
method: 'POST',
|
|
80
|
+
path: `/i/v1/buyers/${id}/verify-tax-number`,
|
|
81
|
+
requestOptions: options,
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Check TIN verification status.
|
|
86
|
+
*/
|
|
87
|
+
async getVerificationStatus(id, options) {
|
|
88
|
+
return this.http.request({
|
|
89
|
+
method: 'GET',
|
|
90
|
+
path: `/i/v1/buyers/${id}/verification-status`,
|
|
91
|
+
requestOptions: options,
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Search buyers by name or TIN.
|
|
96
|
+
*/
|
|
97
|
+
async search(query, options) {
|
|
98
|
+
return this.http.request({
|
|
99
|
+
method: 'GET',
|
|
100
|
+
path: '/i/v1/buyers/search',
|
|
101
|
+
query: { q: query },
|
|
102
|
+
requestOptions: options,
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=buyers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buyers.js","sourceRoot":"","sources":["../../../src/services/buyers.ts"],"names":[],"mappings":"AAWA;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAO,YAAY;IAEM;IAD7B,gBAAgB;IAChB,YAA6B,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;IAAG,CAAC;IAEjD;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,MAAyB,EAAE,OAAwB;QAC9D,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAQ;YAC9B,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,MAAM;YACZ,cAAc,EAAE,OAAO;SACxB,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,GAAG,CAAC,EAAU,EAAE,OAAwB;QAC5C,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAQ;YAC9B,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,gBAAgB,EAAE,EAAE;YAC1B,cAAc,EAAE,OAAO;SACxB,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,CAAC,MAAyB,EAAE,OAAwB;QAC5D,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAU;YAChC,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,cAAc;YACpB,KAAK,EAAE,MAAqD;YAC5D,cAAc,EAAE,OAAO;SACxB,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,MAAyB,EAAE,OAAwB;QAC1E,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAQ;YAC9B,MAAM,EAAE,OAAO;YACf,IAAI,EAAE,gBAAgB,EAAE,EAAE;YAC1B,IAAI,EAAE,MAAM;YACZ,cAAc,EAAE,OAAO;SACxB,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,OAAwB;QAC/C,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAuB;YAC7C,MAAM,EAAE,QAAQ;YAChB,IAAI,EAAE,gBAAgB,EAAE,EAAE;YAC1B,cAAc,EAAE,OAAO;SACxB,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CAAC,EAAU,EAAE,OAAwB;QAClD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAwB;YAC9C,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,gBAAgB,EAAE,oBAAoB;YAC5C,cAAc,EAAE,OAAO;SACxB,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,qBAAqB,CAAC,EAAU,EAAE,OAAwB;QAC9D,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAwB;YAC9C,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,gBAAgB,EAAE,sBAAsB;YAC9C,cAAc,EAAE,OAAO;SACxB,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,KAAa,EAAE,OAAwB;QAClD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAe;YACrC,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,qBAAqB;YAC3B,KAAK,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE;YACnB,cAAc,EAAE,OAAO;SACxB,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC"}
|