@fiatden/openpay 0.0.0-stage → 0.0.1

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.
Files changed (101) hide show
  1. package/README.md +269 -2
  2. package/dist/analytics.test.d.ts +2 -0
  3. package/dist/analytics.test.d.ts.map +1 -0
  4. package/dist/analytics.test.js +184 -0
  5. package/dist/apps.test.d.ts +2 -0
  6. package/dist/apps.test.d.ts.map +1 -0
  7. package/dist/apps.test.js +92 -0
  8. package/dist/http.d.ts +22 -0
  9. package/dist/http.d.ts.map +1 -0
  10. package/dist/http.js +56 -0
  11. package/dist/http.test.d.ts +2 -0
  12. package/dist/http.test.d.ts.map +1 -0
  13. package/dist/http.test.js +47 -0
  14. package/dist/index.d.ts +145 -0
  15. package/dist/index.d.ts.map +1 -0
  16. package/dist/index.js +190 -0
  17. package/dist/resources/analytics.d.ts +215 -0
  18. package/dist/resources/analytics.d.ts.map +1 -0
  19. package/dist/resources/analytics.js +66 -0
  20. package/dist/resources/apiKeys.d.ts +22 -0
  21. package/dist/resources/apiKeys.d.ts.map +1 -0
  22. package/dist/resources/apiKeys.js +40 -0
  23. package/dist/resources/apps.d.ts +108 -0
  24. package/dist/resources/apps.d.ts.map +1 -0
  25. package/dist/resources/apps.js +32 -0
  26. package/dist/resources/auth.d.ts +71 -0
  27. package/dist/resources/auth.d.ts.map +1 -0
  28. package/dist/resources/auth.js +71 -0
  29. package/dist/resources/billing.d.ts +148 -0
  30. package/dist/resources/billing.d.ts.map +1 -0
  31. package/dist/resources/billing.js +55 -0
  32. package/dist/resources/charges.d.ts +67 -0
  33. package/dist/resources/charges.d.ts.map +1 -0
  34. package/dist/resources/charges.js +103 -0
  35. package/dist/resources/checkout.d.ts +80 -0
  36. package/dist/resources/checkout.d.ts.map +1 -0
  37. package/dist/resources/checkout.js +36 -0
  38. package/dist/resources/coupons.d.ts +66 -0
  39. package/dist/resources/coupons.d.ts.map +1 -0
  40. package/dist/resources/coupons.js +39 -0
  41. package/dist/resources/currencies.d.ts +45 -0
  42. package/dist/resources/currencies.d.ts.map +1 -0
  43. package/dist/resources/currencies.js +48 -0
  44. package/dist/resources/customers.d.ts +135 -0
  45. package/dist/resources/customers.d.ts.map +1 -0
  46. package/dist/resources/customers.js +50 -0
  47. package/dist/resources/disputes.d.ts +48 -0
  48. package/dist/resources/disputes.d.ts.map +1 -0
  49. package/dist/resources/disputes.js +47 -0
  50. package/dist/resources/emailTemplates.d.ts +55 -0
  51. package/dist/resources/emailTemplates.d.ts.map +1 -0
  52. package/dist/resources/emailTemplates.js +49 -0
  53. package/dist/resources/fx.d.ts +34 -0
  54. package/dist/resources/fx.d.ts.map +1 -0
  55. package/dist/resources/fx.js +27 -0
  56. package/dist/resources/invoices.d.ts +32 -0
  57. package/dist/resources/invoices.d.ts.map +1 -0
  58. package/dist/resources/invoices.js +36 -0
  59. package/dist/resources/merchants.d.ts +77 -0
  60. package/dist/resources/merchants.d.ts.map +1 -0
  61. package/dist/resources/merchants.js +97 -0
  62. package/dist/resources/metering.d.ts +65 -0
  63. package/dist/resources/metering.d.ts.map +1 -0
  64. package/dist/resources/metering.js +36 -0
  65. package/dist/resources/paymentLinks.d.ts +45 -0
  66. package/dist/resources/paymentLinks.d.ts.map +1 -0
  67. package/dist/resources/paymentLinks.js +32 -0
  68. package/dist/resources/payouts.d.ts +49 -0
  69. package/dist/resources/payouts.d.ts.map +1 -0
  70. package/dist/resources/payouts.js +55 -0
  71. package/dist/resources/providers.d.ts +52 -0
  72. package/dist/resources/providers.d.ts.map +1 -0
  73. package/dist/resources/providers.js +38 -0
  74. package/dist/resources/reconciliation.d.ts +125 -0
  75. package/dist/resources/reconciliation.d.ts.map +1 -0
  76. package/dist/resources/reconciliation.js +50 -0
  77. package/dist/resources/referrals.d.ts +25 -0
  78. package/dist/resources/referrals.d.ts.map +1 -0
  79. package/dist/resources/referrals.js +16 -0
  80. package/dist/resources/riskReview.d.ts +96 -0
  81. package/dist/resources/riskReview.d.ts.map +1 -0
  82. package/dist/resources/riskReview.js +44 -0
  83. package/dist/resources/roles.d.ts +59 -0
  84. package/dist/resources/roles.d.ts.map +1 -0
  85. package/dist/resources/roles.js +42 -0
  86. package/dist/resources/subscriptions.d.ts +42 -0
  87. package/dist/resources/subscriptions.d.ts.map +1 -0
  88. package/dist/resources/subscriptions.js +61 -0
  89. package/dist/resources/totp.d.ts +36 -0
  90. package/dist/resources/totp.d.ts.map +1 -0
  91. package/dist/resources/totp.js +41 -0
  92. package/dist/resources/wallets.d.ts +124 -0
  93. package/dist/resources/wallets.d.ts.map +1 -0
  94. package/dist/resources/wallets.js +68 -0
  95. package/dist/resources/webhooks.d.ts +47 -0
  96. package/dist/resources/webhooks.d.ts.map +1 -0
  97. package/dist/resources/webhooks.js +41 -0
  98. package/dist/types.d.ts +484 -0
  99. package/dist/types.d.ts.map +1 -0
  100. package/dist/types.js +15 -0
  101. package/package.json +46 -4
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CustomersResource = void 0;
4
+ class CustomersResource {
5
+ client;
6
+ constructor(client) {
7
+ this.client = client;
8
+ }
9
+ async list(params) {
10
+ const qs = params ? '?' + new URLSearchParams(params).toString() : '';
11
+ return this.client.request(`/v1/customers${qs}`);
12
+ }
13
+ async get(id) {
14
+ return this.client.request(`/v1/customers/${id}`);
15
+ }
16
+ async paymentMethods(id) {
17
+ return this.client.request(`/v1/customers/${id}/payment-methods`);
18
+ }
19
+ async transactions(id, params) {
20
+ const qs = params ? '?' + new URLSearchParams(params).toString() : '';
21
+ return this.client.request(`/v1/customers/${id}/transactions${qs}`);
22
+ }
23
+ async subscriptions(id) {
24
+ return this.client.request(`/v1/customers/${id}/subscriptions`);
25
+ }
26
+ async disputes(id) {
27
+ return this.client.request(`/v1/customers/${id}/disputes`);
28
+ }
29
+ async recomputeRisk(id) {
30
+ return this.client.request(`/v1/customers/${id}/risk-score`, { method: 'POST' });
31
+ }
32
+ async update(id, body) {
33
+ return this.client.request(`/v1/customers/${id}`, { method: 'PATCH', body });
34
+ }
35
+ async exportData(id) {
36
+ return this.client.request(`/v1/customers/${id}/export`, { method: 'POST' });
37
+ }
38
+ async erase(id) {
39
+ return this.client.request(`/v1/customers/${id}/erase`, { method: 'POST' });
40
+ }
41
+ /** Export customers as CSV — mirrors GET /v1/customers/export (same filters as list). Returns raw CSV text. */
42
+ async exportCsv(params) {
43
+ const qs = params ? '?' + Object.entries(params).filter(([, v]) => v !== undefined).map(([k, v]) => `${encodeURIComponent(k)}=${encodeURIComponent(String(v))}`).join('&') : '';
44
+ const res = await fetch(`${this.client.baseUrl}/v1/customers/export${qs}`, { headers: { 'x-api-key': this.client.apiKey } });
45
+ if (!res.ok)
46
+ throw new Error(`Customers export failed: ${res.status}`);
47
+ return res.text();
48
+ }
49
+ }
50
+ exports.CustomersResource = CustomersResource;
@@ -0,0 +1,48 @@
1
+ import { HttpClient } from '../http';
2
+ import { Dispute, DisputeEvidenceSubmissionSdk as DisputeEvidenceSubmission, ListResponse } from '../types';
3
+ export declare class DisputesResource {
4
+ private client;
5
+ constructor(client: HttpClient);
6
+ /** List all disputes, optionally filtered by status or provider. */
7
+ list(params?: {
8
+ status?: string;
9
+ provider?: string;
10
+ }): Promise<ListResponse<Dispute>>;
11
+ /** Fetch a single dispute with its full evidence submissions history. */
12
+ get(id: string): Promise<Dispute & {
13
+ evidence_submissions: DisputeEvidenceSubmission[];
14
+ }>;
15
+ /**
16
+ * Submit an evidence packet for a dispute. Compiles a structured
17
+ * packet from the linked transaction (refund history, customer
18
+ * info, prior submissions) and persists it. Best-effort calls
19
+ * provider.submitDisputeEvidence when the provider exposes one.
20
+ */
21
+ submitEvidence(disputeId: string, submission: {
22
+ narrative: string;
23
+ evidence?: Record<string, unknown>;
24
+ file_urls?: string[];
25
+ auto_generate?: boolean;
26
+ template_version?: string;
27
+ }): Promise<DisputeEvidenceSubmission>;
28
+ /** List every evidence submission attempt for a dispute. */
29
+ listEvidenceSubmissions(disputeId: string): Promise<{
30
+ data: DisputeEvidenceSubmission[];
31
+ }>;
32
+ /**
33
+ * Mark a packet as hand-submitted to the upstream provider's
34
+ * dashboard. Used for providers without a public API endpoint
35
+ * for evidence submission (most of them today).
36
+ */
37
+ markSubmitted(disputeId: string, submissionId: string): Promise<DisputeEvidenceSubmission>;
38
+ /** Export disputes as CSV — mirrors GET /v1/disputes/export (status/provider/app_id/search/date). Returns raw CSV text. */
39
+ exportCsv(params?: {
40
+ status?: string;
41
+ provider?: string;
42
+ app_id?: string;
43
+ search?: string;
44
+ start_date?: string;
45
+ end_date?: string;
46
+ }): Promise<string>;
47
+ }
48
+ //# sourceMappingURL=disputes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"disputes.d.ts","sourceRoot":"","sources":["../../src/resources/disputes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,4BAA4B,IAAI,yBAAyB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAE5G,qBAAa,gBAAgB;IACf,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,UAAU;IAEtC,oEAAoE;IAC9D,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IAI3F,yEAAyE;IACnE,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG;QAAE,oBAAoB,EAAE,yBAAyB,EAAE,CAAA;KAAE,CAAC;IAI/F;;;;;OAKG;IACG,cAAc,CAClB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE;QACV,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACnC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;QACrB,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B,GACA,OAAO,CAAC,yBAAyB,CAAC;IAOrC,4DAA4D;IACtD,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,yBAAyB,EAAE,CAAA;KAAE,CAAC;IAIhG;;;;OAIG;IACG,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAOhG,2HAA2H;IACrH,SAAS,CAAC,MAAM,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;CAM5J"}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DisputesResource = void 0;
4
+ class DisputesResource {
5
+ client;
6
+ constructor(client) {
7
+ this.client = client;
8
+ }
9
+ /** List all disputes, optionally filtered by status or provider. */
10
+ async list(params) {
11
+ return this.client.request('/v1/disputes', { params });
12
+ }
13
+ /** Fetch a single dispute with its full evidence submissions history. */
14
+ async get(id) {
15
+ return this.client.request(`/v1/disputes/${id}`);
16
+ }
17
+ /**
18
+ * Submit an evidence packet for a dispute. Compiles a structured
19
+ * packet from the linked transaction (refund history, customer
20
+ * info, prior submissions) and persists it. Best-effort calls
21
+ * provider.submitDisputeEvidence when the provider exposes one.
22
+ */
23
+ async submitEvidence(disputeId, submission) {
24
+ return this.client.request(`/v1/disputes/${disputeId}/evidence`, { method: 'POST', body: submission });
25
+ }
26
+ /** List every evidence submission attempt for a dispute. */
27
+ async listEvidenceSubmissions(disputeId) {
28
+ return this.client.request(`/v1/disputes/${disputeId}/evidence-submissions`);
29
+ }
30
+ /**
31
+ * Mark a packet as hand-submitted to the upstream provider's
32
+ * dashboard. Used for providers without a public API endpoint
33
+ * for evidence submission (most of them today).
34
+ */
35
+ async markSubmitted(disputeId, submissionId) {
36
+ return this.client.request(`/v1/disputes/${disputeId}/evidence-submissions/${submissionId}/mark-submitted`, { method: 'POST' });
37
+ }
38
+ /** Export disputes as CSV — mirrors GET /v1/disputes/export (status/provider/app_id/search/date). Returns raw CSV text. */
39
+ async exportCsv(params) {
40
+ const qs = params ? '?' + Object.entries(params).filter(([, v]) => v !== undefined).map(([k, v]) => `${encodeURIComponent(k)}=${encodeURIComponent(String(v))}`).join('&') : '';
41
+ const res = await fetch(`${this.client.baseUrl}/v1/disputes/export${qs}`, { headers: { 'x-api-key': this.client.apiKey } });
42
+ if (!res.ok)
43
+ throw new Error(`Disputes export failed: ${res.status}`);
44
+ return res.text();
45
+ }
46
+ }
47
+ exports.DisputesResource = DisputesResource;
@@ -0,0 +1,55 @@
1
+ import { HttpClient } from '../http';
2
+ import { ListResponse } from '../types';
3
+ export type EmailTemplateType = 'welcome' | 'payment_receipt' | 'password_reset' | 'payment_failed' | 'verification' | 'custom';
4
+ export interface EmailTemplate {
5
+ id: string;
6
+ merchant_id: string;
7
+ name: string;
8
+ template_type: EmailTemplateType;
9
+ subject_template: string;
10
+ html_content: string;
11
+ variables: string[];
12
+ is_default: boolean;
13
+ is_active: boolean;
14
+ created_at: string;
15
+ updated_at: string;
16
+ }
17
+ export interface EmailTemplateCreateParams {
18
+ name: string;
19
+ template_type: EmailTemplateType;
20
+ subject_template: string;
21
+ html_content: string;
22
+ variables?: string[];
23
+ is_default?: boolean;
24
+ }
25
+ export interface EmailTemplateUpdateParams {
26
+ name?: string;
27
+ subject_template?: string;
28
+ html_content?: string;
29
+ variables?: string[];
30
+ is_default?: boolean;
31
+ is_active?: boolean;
32
+ }
33
+ export declare class EmailTemplatesResource {
34
+ private client;
35
+ constructor(client: HttpClient);
36
+ /** List all email templates for the authenticated merchant. */
37
+ list(params?: {
38
+ template_type?: EmailTemplateType;
39
+ limit?: number;
40
+ }): Promise<ListResponse<EmailTemplate>>;
41
+ /** Get a single email template by ID. */
42
+ get(id: string): Promise<EmailTemplate>;
43
+ /** Create a new email template. */
44
+ create(params: EmailTemplateCreateParams): Promise<EmailTemplate>;
45
+ /** Update an existing email template. */
46
+ update(id: string, params: EmailTemplateUpdateParams): Promise<EmailTemplate>;
47
+ /** Soft-delete (deactivate) an email template. */
48
+ delete(id: string): Promise<{
49
+ deleted: boolean;
50
+ id: string;
51
+ }>;
52
+ /** Preview a template rendered with sample data (returns HTML). */
53
+ preview(id: string): Promise<string>;
54
+ }
55
+ //# sourceMappingURL=emailTemplates.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emailTemplates.d.ts","sourceRoot":"","sources":["../../src/resources/emailTemplates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,MAAM,MAAM,iBAAiB,GACzB,SAAS,GACT,iBAAiB,GACjB,gBAAgB,GAChB,gBAAgB,GAChB,cAAc,GACd,QAAQ,CAAC;AAEb,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,iBAAiB,CAAC;IACjC,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,iBAAiB,CAAC;IACjC,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,qBAAa,sBAAsB;IACrB,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,UAAU;IAEtC,+DAA+D;IACzD,IAAI,CAAC,MAAM,CAAC,EAAE;QAClB,aAAa,CAAC,EAAE,iBAAiB,CAAC;QAClC,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;IAIxC,yCAAyC;IACnC,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAI7C,mCAAmC;IAC7B,MAAM,CAAC,MAAM,EAAE,yBAAyB,GAAG,OAAO,CAAC,aAAa,CAAC;IAOvE,yCAAyC;IACnC,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,yBAAyB,GAAG,OAAO,CAAC,aAAa,CAAC;IAOnF,kDAAkD;IAC5C,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IAOnE,mEAAmE;IAC7D,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAe3C"}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EmailTemplatesResource = void 0;
4
+ class EmailTemplatesResource {
5
+ client;
6
+ constructor(client) {
7
+ this.client = client;
8
+ }
9
+ /** List all email templates for the authenticated merchant. */
10
+ async list(params) {
11
+ return this.client.request('/v1/email-templates', { params });
12
+ }
13
+ /** Get a single email template by ID. */
14
+ async get(id) {
15
+ return this.client.request(`/v1/email-templates/${id}`);
16
+ }
17
+ /** Create a new email template. */
18
+ async create(params) {
19
+ return this.client.request('/v1/email-templates', {
20
+ method: 'POST',
21
+ body: params,
22
+ });
23
+ }
24
+ /** Update an existing email template. */
25
+ async update(id, params) {
26
+ return this.client.request(`/v1/email-templates/${id}`, {
27
+ method: 'PATCH',
28
+ body: params,
29
+ });
30
+ }
31
+ /** Soft-delete (deactivate) an email template. */
32
+ async delete(id) {
33
+ return this.client.request(`/v1/email-templates/${id}`, { method: 'DELETE' });
34
+ }
35
+ /** Preview a template rendered with sample data (returns HTML). */
36
+ async preview(id) {
37
+ const response = await fetch(`${this.client.baseUrl}/v1/email-templates/preview/${encodeURIComponent(id)}`, {
38
+ headers: {
39
+ Accept: 'text/html',
40
+ 'x-api-key': this.client.apiKey,
41
+ },
42
+ });
43
+ if (!response.ok) {
44
+ throw new Error(`Template preview failed: ${response.status}`);
45
+ }
46
+ return response.text();
47
+ }
48
+ }
49
+ exports.EmailTemplatesResource = EmailTemplatesResource;
@@ -0,0 +1,34 @@
1
+ import { HttpClient } from '../http';
2
+ export interface FxRate {
3
+ base: string;
4
+ target: string;
5
+ rate: number;
6
+ source: string;
7
+ spread: number;
8
+ scope: 'platform' | 'merchant';
9
+ /** Null for platform rates; merchant UUID for per-merchant overrides. */
10
+ merchant_id: string | null;
11
+ }
12
+ export interface SetFxRateParams {
13
+ base_currency: string;
14
+ target_currency: string;
15
+ rate: number;
16
+ source?: string;
17
+ expires_at?: string | null;
18
+ }
19
+ /**
20
+ * Currency exchange rates. GET returns ALL active rates (platform
21
+ * + per-merchant overrides) when the calling API key belongs to a
22
+ * merchant. POST creates a per-merchant override for the calling
23
+ * merchant when the key is merchant-scoped, or a platform-wide
24
+ * rate when the key is admin-scoped.
25
+ */
26
+ export declare class FxResource {
27
+ private client;
28
+ constructor(client: HttpClient);
29
+ list(): Promise<{
30
+ data: FxRate[];
31
+ }>;
32
+ set(params: SetFxRateParams): Promise<FxRate>;
33
+ }
34
+ //# sourceMappingURL=fx.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fx.d.ts","sourceRoot":"","sources":["../../src/resources/fx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAIrC,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,UAAU,GAAG,UAAU,CAAC;IAC/B,yEAAyE;IACzE,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAID;;;;;;GAMG;AACH,qBAAa,UAAU;IACT,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,UAAU;IAEhC,IAAI,IAAI,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAInC,GAAG,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC;CAMpD"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FxResource = void 0;
4
+ // ── Resource ───────────────────────────────────────────────────────
5
+ /**
6
+ * Currency exchange rates. GET returns ALL active rates (platform
7
+ * + per-merchant overrides) when the calling API key belongs to a
8
+ * merchant. POST creates a per-merchant override for the calling
9
+ * merchant when the key is merchant-scoped, or a platform-wide
10
+ * rate when the key is admin-scoped.
11
+ */
12
+ class FxResource {
13
+ client;
14
+ constructor(client) {
15
+ this.client = client;
16
+ }
17
+ async list() {
18
+ return this.client.request('/v1/analytics/fx-rates');
19
+ }
20
+ async set(params) {
21
+ return this.client.request('/v1/analytics/fx-rates', {
22
+ method: 'POST',
23
+ body: params,
24
+ });
25
+ }
26
+ }
27
+ exports.FxResource = FxResource;
@@ -0,0 +1,32 @@
1
+ import { HttpClient } from '../http';
2
+ import { Invoice, InvoiceLineItem, ListResponse } from '../types';
3
+ export interface InvoiceCreateParams {
4
+ customer_id?: string | null;
5
+ currency?: string;
6
+ net_days?: number;
7
+ line_items: InvoiceLineItem[];
8
+ notes?: string | null;
9
+ metadata?: Record<string, unknown>;
10
+ app_id?: string | null;
11
+ status?: 'draft' | 'open';
12
+ }
13
+ export declare class InvoicesResource {
14
+ private client;
15
+ constructor(client: HttpClient);
16
+ /** Issue an invoice with net payment terms. */
17
+ create(params: InvoiceCreateParams): Promise<Invoice>;
18
+ /** List invoices, optionally filtered by status or customer. */
19
+ list(params?: {
20
+ status?: string;
21
+ customer_id?: string;
22
+ limit?: number;
23
+ offset?: number;
24
+ }): Promise<ListResponse<Invoice>>;
25
+ /** Retrieve an invoice by id. */
26
+ retrieve(id: string): Promise<Invoice>;
27
+ /** Mark an invoice paid (optionally partially, in minor units). */
28
+ markPaid(id: string, amount?: number): Promise<Invoice>;
29
+ /** Void an unpaid invoice. */
30
+ void(id: string, reason?: string): Promise<Invoice>;
31
+ }
32
+ //# sourceMappingURL=invoices.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"invoices.d.ts","sourceRoot":"","sources":["../../src/resources/invoices.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAElE,MAAM,WAAW,mBAAmB;IAClC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,eAAe,EAAE,CAAC;IAC9B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CAC3B;AAED,qBAAa,gBAAgB;IACf,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,UAAU;IAEtC,+CAA+C;IACzC,MAAM,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;IAI3D,gEAAgE;IAC1D,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IAI/H,iCAAiC;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAI5C,mEAAmE;IAC7D,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAO7D,8BAA8B;IACxB,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAM1D"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InvoicesResource = void 0;
4
+ class InvoicesResource {
5
+ client;
6
+ constructor(client) {
7
+ this.client = client;
8
+ }
9
+ /** Issue an invoice with net payment terms. */
10
+ async create(params) {
11
+ return this.client.request('/v1/invoices', { method: 'POST', body: params });
12
+ }
13
+ /** List invoices, optionally filtered by status or customer. */
14
+ async list(params) {
15
+ return this.client.request('/v1/invoices', { params });
16
+ }
17
+ /** Retrieve an invoice by id. */
18
+ async retrieve(id) {
19
+ return this.client.request(`/v1/invoices/${id}`);
20
+ }
21
+ /** Mark an invoice paid (optionally partially, in minor units). */
22
+ async markPaid(id, amount) {
23
+ return this.client.request(`/v1/invoices/${id}/paid`, {
24
+ method: 'POST',
25
+ body: amount !== undefined ? { amount } : {},
26
+ });
27
+ }
28
+ /** Void an unpaid invoice. */
29
+ async void(id, reason) {
30
+ return this.client.request(`/v1/invoices/${id}/void`, {
31
+ method: 'POST',
32
+ body: reason ? { reason } : {},
33
+ });
34
+ }
35
+ }
36
+ exports.InvoicesResource = InvoicesResource;
@@ -0,0 +1,77 @@
1
+ import { HttpClient } from '../http';
2
+ import { MerchantCreateParams, Merchant, MerchantBalance, KYCUpdateParams, ListResponse, PayoutPolicy, AutoPayoutSchedule } from '../types';
3
+ export declare class MerchantsResource {
4
+ private client;
5
+ constructor(client: HttpClient);
6
+ /** Register a new merchant. A wallet is auto-created. */
7
+ create(params: MerchantCreateParams): Promise<Merchant>;
8
+ /** Retrieve a merchant by ID. */
9
+ retrieve(id: string): Promise<Merchant>;
10
+ /** List all merchants. */
11
+ list(): Promise<ListResponse<Merchant>>;
12
+ /** Get merchant wallet balance. */
13
+ balance(id: string): Promise<MerchantBalance>;
14
+ /** Update merchant KYC / settlement bank details. */
15
+ updateKYC(id: string, params: KYCUpdateParams): Promise<Merchant>;
16
+ /** Upload structured KYC documents and move the merchant into review. */
17
+ updateKYCDocuments(id: string, documents: Record<string, unknown>): Promise<{
18
+ id: string;
19
+ kyc_status: string;
20
+ kyc_documents: Record<string, unknown>;
21
+ }>;
22
+ /** Create or refresh a provider subaccount for the merchant. */
23
+ createSubaccount(id: string, provider: 'paystack' | 'flutterwave' | 'korapay' | 'hyperswitch'): Promise<{
24
+ merchant_id: string;
25
+ provider: string;
26
+ subaccount_code: string;
27
+ }>;
28
+ /** Fetch the merchant's effective payout governance policy (minimum + approval). */
29
+ getPayoutPolicy(id: string): Promise<PayoutPolicy & {
30
+ effective_minimum: number;
31
+ effective_approval_threshold: number;
32
+ }>;
33
+ /** Fetch the merchant's auto-payout schedule (null when none is configured). */
34
+ getAutoPayoutSchedule(id: string): Promise<{
35
+ merchant_id: string;
36
+ schedule: AutoPayoutSchedule | null;
37
+ }>;
38
+ /** Create or update the merchant's auto-payout schedule. */
39
+ updateAutoPayoutSchedule(id: string, params: {
40
+ enabled?: boolean;
41
+ minimum_amount?: number | null;
42
+ run_hour?: number | null;
43
+ }): Promise<{
44
+ merchant_id: string;
45
+ schedule: AutoPayoutSchedule;
46
+ }>;
47
+ /** Disable the merchant's auto-payout schedule. */
48
+ disableAutoPayoutSchedule(id: string): Promise<{
49
+ merchant_id: string;
50
+ schedule: AutoPayoutSchedule;
51
+ disabled: boolean;
52
+ }>;
53
+ /** 8.4 marketplace: onboard a child merchant under this parent. */
54
+ createChild(id: string, params: {
55
+ business_name: string;
56
+ email: string;
57
+ phone?: string;
58
+ country?: string;
59
+ parent_commission_bps?: number;
60
+ }): Promise<Merchant>;
61
+ /** List this parent's immediate child merchants. */
62
+ listChildren(id: string): Promise<{
63
+ data: Merchant[];
64
+ }>;
65
+ /** List the whole descendant subtree (children, grandchildren, ...). */
66
+ listDescendants(id: string): Promise<{
67
+ data: Merchant[];
68
+ }>;
69
+ /** Update a child merchant's marketplace commission (basis points). */
70
+ updateChildCommission(id: string, childId: string, parentCommissionBps: number): Promise<Merchant>;
71
+ /** Detach a child merchant from this parent. */
72
+ detachChild(id: string, childId: string): Promise<{
73
+ id: string;
74
+ detached: boolean;
75
+ }>;
76
+ }
77
+ //# sourceMappingURL=merchants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merchants.d.ts","sourceRoot":"","sources":["../../src/resources/merchants.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MerchantsResource = void 0;
4
+ class MerchantsResource {
5
+ client;
6
+ constructor(client) {
7
+ this.client = client;
8
+ }
9
+ /** Register a new merchant. A wallet is auto-created. */
10
+ async create(params) {
11
+ return this.client.request('/v1/merchants', {
12
+ method: 'POST',
13
+ body: params,
14
+ });
15
+ }
16
+ /** Retrieve a merchant by ID. */
17
+ async retrieve(id) {
18
+ return this.client.request(`/v1/merchants/${id}`);
19
+ }
20
+ /** List all merchants. */
21
+ async list() {
22
+ return this.client.request('/v1/merchants');
23
+ }
24
+ /** Get merchant wallet balance. */
25
+ async balance(id) {
26
+ return this.client.request(`/v1/merchants/${id}/balance`);
27
+ }
28
+ /** Update merchant KYC / settlement bank details. */
29
+ async updateKYC(id, params) {
30
+ return this.client.request(`/v1/merchants/${id}/kyc`, {
31
+ method: 'PATCH',
32
+ body: params,
33
+ });
34
+ }
35
+ /** Upload structured KYC documents and move the merchant into review. */
36
+ async updateKYCDocuments(id, documents) {
37
+ return this.client.request(`/v1/merchants/${id}/kyc-documents`, {
38
+ method: 'PATCH',
39
+ body: { documents },
40
+ });
41
+ }
42
+ /** Create or refresh a provider subaccount for the merchant. */
43
+ async createSubaccount(id, provider) {
44
+ return this.client.request(`/v1/merchants/${id}/subaccount`, {
45
+ method: 'POST',
46
+ body: { provider },
47
+ });
48
+ }
49
+ /** Fetch the merchant's effective payout governance policy (minimum + approval). */
50
+ async getPayoutPolicy(id) {
51
+ return this.client.request(`/v1/merchants/${id}/payout-policy`);
52
+ }
53
+ /** Fetch the merchant's auto-payout schedule (null when none is configured). */
54
+ async getAutoPayoutSchedule(id) {
55
+ return this.client.request(`/v1/merchants/${id}/auto-payout-schedule`);
56
+ }
57
+ /** Create or update the merchant's auto-payout schedule. */
58
+ async updateAutoPayoutSchedule(id, params) {
59
+ return this.client.request(`/v1/merchants/${id}/auto-payout-schedule`, {
60
+ method: 'PUT',
61
+ body: params,
62
+ });
63
+ }
64
+ /** Disable the merchant's auto-payout schedule. */
65
+ async disableAutoPayoutSchedule(id) {
66
+ return this.client.request(`/v1/merchants/${id}/auto-payout-schedule`, {
67
+ method: 'DELETE',
68
+ });
69
+ }
70
+ /** 8.4 marketplace: onboard a child merchant under this parent. */
71
+ async createChild(id, params) {
72
+ return this.client.request(`/v1/merchants/${id}/children`, {
73
+ method: 'POST',
74
+ body: params,
75
+ });
76
+ }
77
+ /** List this parent's immediate child merchants. */
78
+ async listChildren(id) {
79
+ return this.client.request(`/v1/merchants/${id}/children`);
80
+ }
81
+ /** List the whole descendant subtree (children, grandchildren, ...). */
82
+ async listDescendants(id) {
83
+ return this.client.request(`/v1/merchants/${id}/descendants`);
84
+ }
85
+ /** Update a child merchant's marketplace commission (basis points). */
86
+ async updateChildCommission(id, childId, parentCommissionBps) {
87
+ return this.client.request(`/v1/merchants/${id}/children/${childId}`, {
88
+ method: 'PATCH',
89
+ body: { parent_commission_bps: parentCommissionBps },
90
+ });
91
+ }
92
+ /** Detach a child merchant from this parent. */
93
+ async detachChild(id, childId) {
94
+ return this.client.request(`/v1/merchants/${id}/children/${childId}`, { method: 'DELETE' });
95
+ }
96
+ }
97
+ exports.MerchantsResource = MerchantsResource;
@@ -0,0 +1,65 @@
1
+ import { HttpClient } from '../http';
2
+ export interface UsageRecord {
3
+ metric_name: string;
4
+ current_count: number;
5
+ window: string;
6
+ }
7
+ export interface UsageReport {
8
+ metric_name: string;
9
+ period: string;
10
+ period_start: string;
11
+ period_end: string;
12
+ usage: {
13
+ realtime: number;
14
+ persisted: number;
15
+ total: number;
16
+ };
17
+ meter?: {
18
+ name: string;
19
+ price_per_unit: number;
20
+ aggregation_window: string;
21
+ };
22
+ estimated_cost: number;
23
+ }
24
+ export interface MeterCreateParams {
25
+ name: string;
26
+ metric_name: string;
27
+ metric_label?: string;
28
+ aggregation_window?: 'minute' | 'hour' | 'day' | 'month';
29
+ price_per_unit?: number;
30
+ }
31
+ export interface Meter {
32
+ id: string;
33
+ merchant_id: string;
34
+ name: string;
35
+ metric_name: string;
36
+ metric_label?: string;
37
+ aggregation_window: string;
38
+ price_per_unit: number;
39
+ is_active: boolean;
40
+ created_at: string;
41
+ }
42
+ export declare class MeteringResource {
43
+ private client;
44
+ constructor(client: HttpClient);
45
+ record(metric_name: string, count?: number, subscription_id?: string, customer_id?: string): Promise<UsageRecord>;
46
+ report(metric_name: string, period?: 'hour' | 'day' | 'week' | 'month'): Promise<UsageReport>;
47
+ history(params?: {
48
+ metric_name?: string;
49
+ subscription_id?: string;
50
+ days?: number;
51
+ }): Promise<{
52
+ data: any[];
53
+ has_more: boolean;
54
+ }>;
55
+ createMeter(params: MeterCreateParams): Promise<Meter>;
56
+ listMeters(): Promise<{
57
+ data: Meter[];
58
+ has_more: boolean;
59
+ }>;
60
+ deactivateMeter(id: string): Promise<{
61
+ deleted: boolean;
62
+ meter: Meter;
63
+ }>;
64
+ }
65
+ //# sourceMappingURL=metering.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metering.d.ts","sourceRoot":"","sources":["../../src/resources/metering.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE;QACL,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IACF,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,cAAc,EAAE,MAAM,CAAC;QACvB,kBAAkB,EAAE,MAAM,CAAC;KAC5B,CAAC;IACF,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,CAAC;IACzD,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,KAAK;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,gBAAgB;IACf,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,UAAU;IAEhC,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAOjH,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC;IAM7F,OAAO,CAAC,MAAM,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,eAAe,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,GAAG,EAAE,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC;IAIhI,WAAW,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,KAAK,CAAC;IAOtD,UAAU,IAAI,OAAO,CAAC;QAAE,IAAI,EAAE,KAAK,EAAE,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC;IAI3D,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,CAAC;CAG/E"}