@happyvertical/smrt-commerce 0.56.0 → 0.56.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.
- package/AGENTS.md +9 -8
- package/README.md +76 -0
- package/agents/accounting-snapshot-mapper.md +111 -0
- package/agents/contract-money.md +18 -0
- package/agents/cost-billing.md +7 -2
- package/agents/document-money.md +126 -0
- package/agents/invoice-calculations.md +14 -2
- package/agents/line-amount-migration.md +50 -0
- package/agents/minor-unit-migration.md +20 -0
- package/agents/money-calculator.md +45 -0
- package/agents/money-model.md +113 -0
- package/agents/revenue-journal.md +23 -0
- package/agents/tax-codes.md +48 -0
- package/agents/tax-summary.md +126 -0
- package/dist/accounting-snapshot.d.ts +79 -0
- package/dist/accounting-snapshot.d.ts.map +1 -0
- package/dist/billing/runtime.d.ts +2 -0
- package/dist/billing/runtime.d.ts.map +1 -1
- package/dist/chunks/ContractLineItemCollection-DYjhj_pU.js +265 -0
- package/dist/chunks/ContractLineItemCollection-DYjhj_pU.js.map +1 -0
- package/dist/chunks/CustomerCollection-DQIujn4f.js +99 -0
- package/dist/chunks/CustomerCollection-DQIujn4f.js.map +1 -0
- package/dist/chunks/DocumentTaxCollection-BEpoqXAQ.js +1639 -0
- package/dist/chunks/DocumentTaxCollection-BEpoqXAQ.js.map +1 -0
- package/dist/chunks/InvoiceCollection-CKQflFjc.js +1047 -0
- package/dist/chunks/InvoiceCollection-CKQflFjc.js.map +1 -0
- package/dist/chunks/InvoiceLineItemCollection-CHm9zdqh.js +467 -0
- package/dist/chunks/InvoiceLineItemCollection-CHm9zdqh.js.map +1 -0
- package/dist/chunks/TaxCodeCollection-DOpzW4y8.js +149 -0
- package/dist/chunks/TaxCodeCollection-DOpzW4y8.js.map +1 -0
- package/dist/chunks/TaxComponentCollection-Cs2uXwEl.js +129 -0
- package/dist/chunks/TaxComponentCollection-Cs2uXwEl.js.map +1 -0
- package/dist/chunks/TaxSettingsCollection-BBTZDH1S.js +319 -0
- package/dist/chunks/TaxSettingsCollection-BBTZDH1S.js.map +1 -0
- package/dist/chunks/{money-DfrRxrel.js → allocation-integrity-DI3G16BN.js} +7 -12
- package/dist/chunks/allocation-integrity-DI3G16BN.js.map +1 -0
- package/dist/chunks/{calculations-Bz7RB3qK.js → calculations-DaHR17il.js} +134 -54
- package/dist/chunks/calculations-DaHR17il.js.map +1 -0
- package/dist/chunks/credit-allocation-yspz0Lab.js +121 -0
- package/dist/chunks/credit-allocation-yspz0Lab.js.map +1 -0
- package/dist/chunks/document-money-DNVhDJyC.js +860 -0
- package/dist/chunks/document-money-DNVhDJyC.js.map +1 -0
- package/dist/chunks/invoice-posting-BwV8g7z0.js +229 -0
- package/dist/chunks/invoice-posting-BwV8g7z0.js.map +1 -0
- package/dist/chunks/money-rational-CcW7gzG5.js +64 -0
- package/dist/chunks/money-rational-CcW7gzG5.js.map +1 -0
- package/dist/chunks/revenue-journal-DY9fro8E.js +140 -0
- package/dist/chunks/revenue-journal-DY9fro8E.js.map +1 -0
- package/dist/chunks/rolldown-runtime-D7D4PA-g.js +13 -0
- package/dist/chunks/tenant-money-barrier-DjRXgMnX.js +135 -0
- package/dist/chunks/tenant-money-barrier-DjRXgMnX.js.map +1 -0
- package/dist/chunks/{types-zVnIjSOk.js → types-LDETvQ1C.js} +3 -14
- package/dist/chunks/types-LDETvQ1C.js.map +1 -0
- package/dist/chunks/{units-BpZ0_Dpk.js → units-CNcjH_eE.js} +2 -2
- package/dist/chunks/{units-BpZ0_Dpk.js.map → units-CNcjH_eE.js.map} +1 -1
- package/dist/collections/ContractCollection.d.ts +35 -1
- package/dist/collections/ContractCollection.d.ts.map +1 -1
- package/dist/collections/ContractLineItemCollection.d.ts +26 -1
- package/dist/collections/ContractLineItemCollection.d.ts.map +1 -1
- package/dist/collections/DocumentTaxCollection.d.ts +75 -0
- package/dist/collections/DocumentTaxCollection.d.ts.map +1 -0
- package/dist/collections/InvoiceCollection.d.ts +26 -1
- package/dist/collections/InvoiceCollection.d.ts.map +1 -1
- package/dist/collections/InvoiceLineItemCollection.d.ts +26 -1
- package/dist/collections/InvoiceLineItemCollection.d.ts.map +1 -1
- package/dist/collections/MoneyMigrationDocumentCollection.d.ts +12 -0
- package/dist/collections/MoneyMigrationDocumentCollection.d.ts.map +1 -0
- package/dist/collections/PaymentAllocationCollection.d.ts +2 -0
- package/dist/collections/PaymentAllocationCollection.d.ts.map +1 -1
- package/dist/collections/TaxCodeCollection.d.ts +7 -0
- package/dist/collections/TaxCodeCollection.d.ts.map +1 -0
- package/dist/collections/TaxComponentCollection.d.ts +6 -0
- package/dist/collections/TaxComponentCollection.d.ts.map +1 -0
- package/dist/collections/TaxSettingsCollection.d.ts +16 -0
- package/dist/collections/TaxSettingsCollection.d.ts.map +1 -0
- package/dist/collections/TaxSummaryReportCollection.d.ts +151 -0
- package/dist/collections/TaxSummaryReportCollection.d.ts.map +1 -0
- package/dist/collections/index.d.ts +6 -0
- package/dist/collections/index.d.ts.map +1 -1
- package/dist/commerce-money-tools.d.ts +9 -0
- package/dist/commerce-money-tools.d.ts.map +1 -0
- package/dist/contract-money.d.ts +27 -0
- package/dist/contract-money.d.ts.map +1 -0
- package/dist/cost-billing.d.ts +0 -1
- package/dist/cost-billing.d.ts.map +1 -1
- package/dist/cost-billing.js +10 -15
- package/dist/cost-billing.js.map +1 -1
- package/dist/credit-allocation.d.ts +48 -0
- package/dist/credit-allocation.d.ts.map +1 -0
- package/dist/document-money-internal.d.ts +44 -0
- package/dist/document-money-internal.d.ts.map +1 -0
- package/dist/document-money.d.ts +85 -0
- package/dist/document-money.d.ts.map +1 -0
- package/dist/index.d.ts +15 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5395 -4246
- package/dist/index.js.map +1 -1
- package/dist/invoice-accounting-sync.d.ts +96 -0
- package/dist/invoice-accounting-sync.d.ts.map +1 -0
- package/dist/invoice-mcp.d.ts +16 -0
- package/dist/invoice-mcp.d.ts.map +1 -0
- package/dist/invoice-posting.d.ts +9 -0
- package/dist/invoice-posting.d.ts.map +1 -0
- package/dist/invoice-record-screen.d.ts +60 -0
- package/dist/invoice-record-screen.d.ts.map +1 -0
- package/dist/invoices.d.ts +2 -0
- package/dist/invoices.d.ts.map +1 -1
- package/dist/invoices.js +3 -2
- package/dist/manifest.json +10365 -4562
- package/dist/migrations/commerceLineAmounts.d.ts +84 -0
- package/dist/migrations/commerceLineAmounts.d.ts.map +1 -0
- package/dist/models/Contract.d.ts +25 -1
- package/dist/models/Contract.d.ts.map +1 -1
- package/dist/models/ContractLineItem.d.ts +30 -1
- package/dist/models/ContractLineItem.d.ts.map +1 -1
- package/dist/models/Customer.d.ts +7 -0
- package/dist/models/Customer.d.ts.map +1 -1
- package/dist/models/DocumentTax.d.ts +50 -0
- package/dist/models/DocumentTax.d.ts.map +1 -0
- package/dist/models/Invoice.d.ts +46 -2
- package/dist/models/Invoice.d.ts.map +1 -1
- package/dist/models/InvoiceLineItem.d.ts +33 -2
- package/dist/models/InvoiceLineItem.d.ts.map +1 -1
- package/dist/models/MoneyMigrationDocument.d.ts +28 -0
- package/dist/models/MoneyMigrationDocument.d.ts.map +1 -0
- package/dist/models/Payment.d.ts +5 -1
- package/dist/models/Payment.d.ts.map +1 -1
- package/dist/models/PaymentAllocation.d.ts.map +1 -1
- package/dist/models/TaxCode.d.ts +22 -0
- package/dist/models/TaxCode.d.ts.map +1 -0
- package/dist/models/TaxComponent.d.ts +21 -0
- package/dist/models/TaxComponent.d.ts.map +1 -0
- package/dist/models/TaxSettings.d.ts +33 -0
- package/dist/models/TaxSettings.d.ts.map +1 -0
- package/dist/models/TaxSummaryReport.d.ts +35 -0
- package/dist/models/TaxSummaryReport.d.ts.map +1 -0
- package/dist/models/Vendor.d.ts +9 -0
- package/dist/models/Vendor.d.ts.map +1 -1
- package/dist/models/index.d.ts +6 -0
- package/dist/models/index.d.ts.map +1 -1
- package/dist/money-rational.d.ts +15 -0
- package/dist/money-rational.d.ts.map +1 -0
- package/dist/money.d.ts +106 -25
- package/dist/money.d.ts.map +1 -1
- package/dist/money.js +274 -0
- package/dist/money.js.map +1 -0
- package/dist/recipes.d.ts +15 -15
- package/dist/revenue-journal.d.ts +61 -0
- package/dist/revenue-journal.d.ts.map +1 -0
- package/dist/smrt-knowledge.json +5711 -1029
- package/dist/svelte/components/InvoiceActions.svelte +12 -0
- package/dist/svelte/components/InvoiceActions.svelte.d.ts +5 -0
- package/dist/svelte/components/InvoiceActions.svelte.d.ts.map +1 -1
- package/dist/svelte/components/InvoiceEditor.svelte +15 -1
- package/dist/svelte/components/InvoiceEditor.svelte.d.ts.map +1 -1
- package/dist/svelte/components/InvoiceLineItems.svelte +3 -3
- package/dist/svelte/components/InvoiceRecordScreen.svelte +94 -0
- package/dist/svelte/components/InvoiceRecordScreen.svelte.d.ts +21 -0
- package/dist/svelte/components/InvoiceRecordScreen.svelte.d.ts.map +1 -0
- package/dist/svelte/components/InvoiceTotals.svelte +2 -2
- package/dist/svelte/components/MoneyInvoiceEditor.svelte +282 -0
- package/dist/svelte/components/MoneyInvoiceEditor.svelte.d.ts +31 -0
- package/dist/svelte/components/MoneyInvoiceEditor.svelte.d.ts.map +1 -0
- package/dist/svelte/components/PurchaseOrderEditor.svelte +53 -1
- package/dist/svelte/components/PurchaseOrderEditor.svelte.d.ts +5 -0
- package/dist/svelte/components/PurchaseOrderEditor.svelte.d.ts.map +1 -1
- package/dist/svelte/components/QuoteEditor.svelte +54 -1
- package/dist/svelte/components/QuoteEditor.svelte.d.ts +5 -0
- package/dist/svelte/components/QuoteEditor.svelte.d.ts.map +1 -1
- package/dist/svelte/i18n.d.ts +16 -0
- package/dist/svelte/i18n.d.ts.map +1 -1
- package/dist/svelte/i18n.js +16 -0
- package/dist/svelte/index.d.ts +7 -2
- package/dist/svelte/index.d.ts.map +1 -1
- package/dist/svelte/index.js +4 -1
- package/dist/svelte/invoices/calculations.d.ts +7 -2
- package/dist/svelte/invoices/calculations.d.ts.map +1 -1
- package/dist/svelte/invoices/calculations.js +141 -47
- package/dist/svelte/invoices/money-editor.d.ts +123 -0
- package/dist/svelte/invoices/money-editor.d.ts.map +1 -0
- package/dist/svelte/invoices/money-editor.js +101 -0
- package/dist/svelte/invoices/types.d.ts +5 -1
- package/dist/svelte/invoices/types.d.ts.map +1 -1
- package/dist/svelte/purchasing-i18n.d.ts +5 -0
- package/dist/svelte/purchasing-i18n.d.ts.map +1 -1
- package/dist/svelte/purchasing-i18n.js +5 -0
- package/dist/svelte/quote-i18n.d.ts +5 -0
- package/dist/svelte/quote-i18n.d.ts.map +1 -1
- package/dist/svelte/quote-i18n.js +5 -0
- package/dist/tax/cookbook.d.ts +22 -0
- package/dist/tax/cookbook.d.ts.map +1 -0
- package/dist/tax/example-pack.d.ts +25 -0
- package/dist/tax/example-pack.d.ts.map +1 -0
- package/dist/tax/identity.d.ts +5 -0
- package/dist/tax/identity.d.ts.map +1 -0
- package/dist/tax/index.d.ts +4 -0
- package/dist/tax/index.d.ts.map +1 -0
- package/dist/tax/legacy.d.ts +48 -0
- package/dist/tax/legacy.d.ts.map +1 -0
- package/dist/tax-summary-report-adapter.d.ts +37 -0
- package/dist/tax-summary-report-adapter.d.ts.map +1 -0
- package/dist/tax-summary.d.ts +129 -0
- package/dist/tax-summary.d.ts.map +1 -0
- package/dist/tenant-money-barrier.d.ts +66 -0
- package/dist/tenant-money-barrier.d.ts.map +1 -0
- package/dist/types/index.d.ts +137 -1
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +19 -11
- package/dist/chunks/calculations-Bz7RB3qK.js.map +0 -1
- package/dist/chunks/money-DfrRxrel.js.map +0 -1
- package/dist/chunks/types-zVnIjSOk.js.map +0 -1
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/** Commerce line-amount preflight, migration and rollback. */
|
|
2
|
+
import type { DatabaseInterface } from '@happyvertical/smrt-core/migrations';
|
|
3
|
+
export type CommerceLineAmountReasonCode = 'DRAFT_RECOMPUTED' | 'ISSUED_BACKFILLED' | 'UNRECONCILED' | 'TAX_RATE_OVER_ONE' | 'HAND_ENTERED_AMOUNT' | 'NEGATIVE_HALF_UNIT_GROSS' | 'MISSING_HEADER_TOTALS' | 'STALE_EDITOR_BLOB' | 'ORPHAN_LINE' | 'CROSS_TENANT_LINE' | 'MISSING_LINE_TENANT' | 'CONTRACT_DIRECTION_UNKNOWN' | 'ACCOUNTING_SYNC_UNSETTLED';
|
|
4
|
+
export interface CommerceMoneyTotals {
|
|
5
|
+
subtotalMinor: number;
|
|
6
|
+
taxMinor: number;
|
|
7
|
+
totalMinor: number;
|
|
8
|
+
}
|
|
9
|
+
export interface CommerceLineAmountDocumentReport {
|
|
10
|
+
tenantId: string;
|
|
11
|
+
documentType: 'invoice' | 'contract';
|
|
12
|
+
documentId: string;
|
|
13
|
+
status: string;
|
|
14
|
+
arJournalIdSet: boolean;
|
|
15
|
+
old: CommerceMoneyTotals;
|
|
16
|
+
next: CommerceMoneyTotals;
|
|
17
|
+
delta: CommerceMoneyTotals;
|
|
18
|
+
reasons: CommerceLineAmountReasonCode[];
|
|
19
|
+
}
|
|
20
|
+
export interface CommerceLineAmountTenantSummary {
|
|
21
|
+
tenantId: string;
|
|
22
|
+
documentCount: number;
|
|
23
|
+
changingDraftCount: number;
|
|
24
|
+
issuedUnpostedFallbackTaxCount: number;
|
|
25
|
+
reasonCounts: Partial<Record<CommerceLineAmountReasonCode, number>>;
|
|
26
|
+
}
|
|
27
|
+
export interface CommerceLineAmountsReport {
|
|
28
|
+
version: 1;
|
|
29
|
+
documents: CommerceLineAmountDocumentReport[];
|
|
30
|
+
tenants: CommerceLineAmountTenantSummary[];
|
|
31
|
+
}
|
|
32
|
+
/** Explicit report destinations. Omit `out` to receive only structured data. */
|
|
33
|
+
export interface CommerceLineAmountsReportOutput {
|
|
34
|
+
jsonPath: string;
|
|
35
|
+
csvPath: string;
|
|
36
|
+
}
|
|
37
|
+
export interface PreflightCommerceLineAmountsOptions {
|
|
38
|
+
/**
|
|
39
|
+
* Optional artifact paths. Omitting this never writes files; the preflight
|
|
40
|
+
* still returns the complete structured CommerceLineAmountsReport.
|
|
41
|
+
*/
|
|
42
|
+
out?: CommerceLineAmountsReportOutput;
|
|
43
|
+
/** Optional tenant restriction. Omit only from a system migration context. */
|
|
44
|
+
tenantId?: string;
|
|
45
|
+
}
|
|
46
|
+
export interface MigrateCommerceLineAmountsOptions {
|
|
47
|
+
tenantId: string;
|
|
48
|
+
acceptDraftChanges?: boolean;
|
|
49
|
+
/**
|
|
50
|
+
* Stable owner identity chosen before the attempt starts. Supplying it on
|
|
51
|
+
* the first call makes failures after the tenant claim safely resumable;
|
|
52
|
+
* a retry must present the same identity.
|
|
53
|
+
*/
|
|
54
|
+
migrationId?: string;
|
|
55
|
+
}
|
|
56
|
+
export interface CommerceLineAmountsMigrationResult {
|
|
57
|
+
tenantId: string;
|
|
58
|
+
migrationId: string;
|
|
59
|
+
migrated: number;
|
|
60
|
+
resumed: number;
|
|
61
|
+
activated: boolean;
|
|
62
|
+
report: CommerceLineAmountsReport;
|
|
63
|
+
}
|
|
64
|
+
export interface RollbackCommerceLineAmountsOptions {
|
|
65
|
+
tenantId: string;
|
|
66
|
+
migrationId: string;
|
|
67
|
+
}
|
|
68
|
+
export interface CommerceLineAmountsRollbackResult {
|
|
69
|
+
tenantId: string;
|
|
70
|
+
migrationId: string;
|
|
71
|
+
restored: number;
|
|
72
|
+
alreadyRestored: number;
|
|
73
|
+
}
|
|
74
|
+
/** Stable JSON bytes for review artifacts and retry comparisons. */
|
|
75
|
+
export declare function serializeCommerceLineAmountsReportJson(report: CommerceLineAmountsReport): string;
|
|
76
|
+
/** Stable one-row-per-document CSV bytes. Tenant summaries remain in JSON. */
|
|
77
|
+
export declare function serializeCommerceLineAmountsReportCsv(report: CommerceLineAmountsReport): string;
|
|
78
|
+
/** Read-only migration inventory. It never creates TaxSettings or claims a barrier. */
|
|
79
|
+
export declare function preflightCommerceLineAmounts(db: DatabaseInterface, options?: PreflightCommerceLineAmountsOptions): Promise<CommerceLineAmountsReport>;
|
|
80
|
+
/** Claim one tenant, migrate each document durably, verify, then activate v2. */
|
|
81
|
+
export declare function migrateCommerceLineAmounts(db: DatabaseInterface, options: MigrateCommerceLineAmountsOptions): Promise<CommerceLineAmountsMigrationResult>;
|
|
82
|
+
/** Restore exact pre-images only while every current document still matches its post-image. */
|
|
83
|
+
export declare function rollbackCommerceLineAmounts(db: DatabaseInterface, options: RollbackCommerceLineAmountsOptions): Promise<CommerceLineAmountsRollbackResult>;
|
|
84
|
+
//# sourceMappingURL=commerceLineAmounts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commerceLineAmounts.d.ts","sourceRoot":"","sources":["../../src/migrations/commerceLineAmounts.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,13 @@
|
|
|
3
3
|
* @packageDocumentation
|
|
4
4
|
*/
|
|
5
5
|
import { type Meta, SmrtObject } from '@happyvertical/smrt-core';
|
|
6
|
-
import
|
|
6
|
+
import type { DatabaseInterface } from '@happyvertical/smrt-core/migrations';
|
|
7
|
+
import { type DocumentMoneyReadRebindCapability, type DocumentMoneyWriteCapability } from '../document-money-internal.js';
|
|
8
|
+
import { type ContractOptions, ContractStatus, ContractType, type LicenseSaleOptions, type PurchaseContractOptions, type PurchaseOrderOptions, type SalesContractOptions, type TaxRegistrationOptions } from '../types/index.js';
|
|
9
|
+
/** Whether a Contract belongs to the purchase STI branch, including descendants. */
|
|
10
|
+
export declare function classifyContractPurchase(contract: Contract): boolean;
|
|
11
|
+
/** A frozen Contract snapshot is reportable except when cancelled. */
|
|
12
|
+
export declare function isContractSnapshotReportEligible(contract: Contract): boolean;
|
|
7
13
|
/**
|
|
8
14
|
* Contract is the base class for all commercial agreements.
|
|
9
15
|
*
|
|
@@ -32,6 +38,8 @@ import { type ContractOptions, ContractStatus, ContractType, type LicenseSaleOpt
|
|
|
32
38
|
* ```
|
|
33
39
|
*/
|
|
34
40
|
export declare class Contract extends SmrtObject {
|
|
41
|
+
/** @internal Collection read guard returns this snapshot on its root DB. */
|
|
42
|
+
rebindMoneyRead(capability: DocumentMoneyReadRebindCapability, db: DatabaseInterface): this;
|
|
35
43
|
/**
|
|
36
44
|
* Tenant ID for multi-tenant isolation
|
|
37
45
|
* Nullable to support both tenant-scoped and global contracts
|
|
@@ -54,6 +62,8 @@ export declare class Contract extends SmrtObject {
|
|
|
54
62
|
* (#2401).
|
|
55
63
|
*/
|
|
56
64
|
subtotal: number;
|
|
65
|
+
/** Informational sum of resolved line discounts, in integer minor units. */
|
|
66
|
+
discountTotal: number;
|
|
57
67
|
/**
|
|
58
68
|
* Tax amount, in integer minor units (#2401).
|
|
59
69
|
*/
|
|
@@ -66,6 +76,18 @@ export declare class Contract extends SmrtObject {
|
|
|
66
76
|
* Currency code (ISO 4217)
|
|
67
77
|
*/
|
|
68
78
|
currency: string;
|
|
79
|
+
/** Pricing interpretation fixed before the Contract leaves draft. */
|
|
80
|
+
lineAmountType: 'exclusive' | 'inclusive' | 'none';
|
|
81
|
+
/** Component rounding scope fixed before the Contract leaves draft. */
|
|
82
|
+
taxRoundingScope: 'line' | 'document';
|
|
83
|
+
/** Immutable seller registration snapshot once the Contract leaves draft. */
|
|
84
|
+
sellerTaxRegistrationsJson: string;
|
|
85
|
+
get sellerTaxRegistrations(): TaxRegistrationOptions[];
|
|
86
|
+
set sellerTaxRegistrations(value: TaxRegistrationOptions[]);
|
|
87
|
+
/** Immutable customer or vendor tax identifier snapshot after issue. */
|
|
88
|
+
partyTaxId: string;
|
|
89
|
+
/** Stable issue/freeze identity, independent of lifecycle updated_at. */
|
|
90
|
+
moneySnapshotId: string;
|
|
69
91
|
/**
|
|
70
92
|
* Date contract was issued
|
|
71
93
|
*/
|
|
@@ -146,6 +168,8 @@ export declare class Contract extends SmrtObject {
|
|
|
146
168
|
* write surface (#2401).
|
|
147
169
|
*/
|
|
148
170
|
save(): Promise<this>;
|
|
171
|
+
/** @internal Contract aggregate persistence only. */
|
|
172
|
+
saveDerived(capability: DocumentMoneyWriteCapability): Promise<this>;
|
|
149
173
|
/**
|
|
150
174
|
* Reject an illegal status flip done via raw assignment. No-op transitions
|
|
151
175
|
* and brand-new rows are always allowed.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Contract.d.ts","sourceRoot":"","sources":["../../src/models/Contract.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAGL,KAAK,IAAI,EACT,UAAU,EAEX,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"Contract.d.ts","sourceRoot":"","sources":["../../src/models/Contract.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,9 @@
|
|
|
3
3
|
* @packageDocumentation
|
|
4
4
|
*/
|
|
5
5
|
import { SmrtObject } from '@happyvertical/smrt-core';
|
|
6
|
-
import type {
|
|
6
|
+
import type { DatabaseInterface } from '@happyvertical/smrt-core/migrations';
|
|
7
|
+
import { type DocumentMoneyReadRebindCapability, type DocumentMoneyWriteCapability } from '../document-money-internal.js';
|
|
8
|
+
import type { ContractLineItemOptions, ContractTaxComponentSnapshot } from '../types/index.js';
|
|
7
9
|
/**
|
|
8
10
|
* ContractLineItem represents a single line item on a contract.
|
|
9
11
|
*
|
|
@@ -22,6 +24,8 @@ import type { ContractLineItemOptions } from '../types/index.js';
|
|
|
22
24
|
* ```
|
|
23
25
|
*/
|
|
24
26
|
export declare class ContractLineItem extends SmrtObject {
|
|
27
|
+
/** @internal Collection read guard returns this snapshot on its root DB. */
|
|
28
|
+
rebindMoneyRead(capability: DocumentMoneyReadRebindCapability, db: DatabaseInterface): this;
|
|
25
29
|
/**
|
|
26
30
|
* Tenant ID for multi-tenant isolation
|
|
27
31
|
* Nullable to support both tenant-scoped and global line items
|
|
@@ -52,11 +56,26 @@ export declare class ContractLineItem extends SmrtObject {
|
|
|
52
56
|
* Discount amount (flat, not percentage), in integer minor units (#2401).
|
|
53
57
|
*/
|
|
54
58
|
discount: number;
|
|
59
|
+
discountType: 'none' | 'percent' | 'amount';
|
|
60
|
+
discountRate: string;
|
|
55
61
|
/**
|
|
56
62
|
* Tax rate as decimal (e.g., 0.08 for 8%). A rate is inherently fractional,
|
|
57
63
|
* so it stays DECIMAL — INTEGER would truncate every meaningful value.
|
|
58
64
|
*/
|
|
59
65
|
taxRate: number;
|
|
66
|
+
taxMode: 'inherit' | 'override';
|
|
67
|
+
taxCodeId: string | null;
|
|
68
|
+
taxCodeCode: string | null;
|
|
69
|
+
taxCodeName: string | null;
|
|
70
|
+
taxComponentsJson: string | null;
|
|
71
|
+
get taxComponents(): ContractTaxComponentSnapshot[];
|
|
72
|
+
set taxComponents(value: ContractTaxComponentSnapshot[]);
|
|
73
|
+
/** Exact sum of frozen component taxes, in integer minor units. */
|
|
74
|
+
taxAmount: number;
|
|
75
|
+
/** Pre-v2 amount preserved only by the migration path. */
|
|
76
|
+
legacyAmount: number | null;
|
|
77
|
+
/** Stable issue/freeze identity, independent of lifecycle updated_at. */
|
|
78
|
+
moneySnapshotId: string;
|
|
60
79
|
/**
|
|
61
80
|
* Calculated line amount (qty * price - discount + tax), in integer minor
|
|
62
81
|
* units. Derived by {@link ContractLineItem.calculateAmount}, which rounds
|
|
@@ -98,6 +117,16 @@ export declare class ContractLineItem extends SmrtObject {
|
|
|
98
117
|
* plain `===` instead of an epsilon tolerance (#2401).
|
|
99
118
|
*/
|
|
100
119
|
calculateAmount(): number;
|
|
120
|
+
save(): Promise<this>;
|
|
121
|
+
/** @internal Contract aggregate persistence only. */
|
|
122
|
+
saveDerived(capability: DocumentMoneyWriteCapability, legacy: boolean): Promise<this>;
|
|
123
|
+
delete(options?: {
|
|
124
|
+
expectedUpdatedAt?: Date | string;
|
|
125
|
+
}): Promise<void>;
|
|
126
|
+
/** @internal Contract aggregate persistence only. */
|
|
127
|
+
deleteDerived(capability: DocumentMoneyWriteCapability, options?: {
|
|
128
|
+
expectedUpdatedAt?: Date | string;
|
|
129
|
+
}): Promise<void>;
|
|
101
130
|
/**
|
|
102
131
|
* Check if this is a subscription/recurring item
|
|
103
132
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContractLineItem.d.ts","sourceRoot":"","sources":["../../src/models/ContractLineItem.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAIL,UAAU,EAEX,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"ContractLineItem.d.ts","sourceRoot":"","sources":["../../src/models/ContractLineItem.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAIL,UAAU,EAEX,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAE7E,OAAO,EAGL,KAAK,iCAAiC,EACtC,KAAK,4BAA4B,EAClC,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EACV,uBAAuB,EACvB,4BAA4B,EAC7B,MAAM,mBAAmB,CAAC;AAE3B;;;;;;;;;;;;;;;;GAgBG;AACH,qBAOa,gBAAiB,SAAQ,UAAU;IAC9C,4EAA4E;IAC5E,eAAe,CACb,UAAU,EAAE,iCAAiC,EAC7C,EAAE,EAAE,iBAAiB,GACpB,IAAI;IAUP;;;OAGG;IAEH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;IAE/B;;OAEG;IAGH,UAAU,EAAE,MAAM,CAAM;IAExB;;OAEG;IAEH,WAAW,EAAE,MAAM,CAAM;IAEzB;;;OAGG;IAEH,QAAQ,EAAE,MAAM,CAAO;IAEvB;;;;;;OAMG;IAKH,SAAS,EAAE,MAAM,CAAK;IAEtB;;OAEG;IAEH,QAAQ,EAAE,MAAM,CAAK;IAErB,YAAY,EAAE,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAU;IAGrD,YAAY,SAAS;IAErB;;;OAGG;IAKH,OAAO,EAAE,MAAM,CAAO;IAEtB,OAAO,EAAE,SAAS,GAAG,UAAU,CAAa;IAG5C,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEhC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAQ;IAElC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAQ;IAElC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAQ;IAExC,IAAI,aAAa,IAAI,4BAA4B,EAAE,CAoBlD;IAED,IAAI,aAAa,CAAC,KAAK,EAAE,4BAA4B,EAAE,EAEtD;IAED,mEAAmE;IACnE,SAAS,SAAK;IAEd,0DAA0D;IAE1D,YAAY,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEnC,yEAAyE;IACzE,eAAe,SAAM;IAErB;;;;OAIG;IAEH,MAAM,EAAE,MAAM,CAAK;IAEnB;;OAEG;IAKH,SAAS,EAAE,MAAM,CAAM;IAEvB;;OAEG;IACH,GAAG,EAAE,MAAM,CAAM;IAEjB;;OAEG;IACH,SAAS,EAAE,IAAI,GAAG,IAAI,CAAQ;IAE9B;;OAEG;IACH,OAAO,EAAE,IAAI,GAAG,IAAI,CAAQ;IAE5B;;OAEG;IACH,aAAa,EAAE,MAAM,CAAM;IAE3B;;OAEG;IACH,SAAS,EAAE,MAAM,CAAK;gBAEV,OAAO,GAAE,uBAA4B;IAuCjD;;;;;;;;OAQG;IACH,eAAe,IAAI,MAAM;IAMV,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAKpC,qDAAqD;IAC/C,WAAW,CACf,UAAU,EAAE,4BAA4B,EACxC,MAAM,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC;IAOD,MAAM,CACnB,OAAO,GAAE;QAAE,iBAAiB,CAAC,EAAE,IAAI,GAAG,MAAM,CAAA;KAAO,GAClD,OAAO,CAAC,IAAI,CAAC;IAKhB,qDAAqD;IAC/C,aAAa,CACjB,UAAU,EAAE,4BAA4B,EACxC,OAAO,GAAE;QAAE,iBAAiB,CAAC,EAAE,IAAI,GAAG,MAAM,CAAA;KAAO,GAClD,OAAO,CAAC,IAAI,CAAC;IAMhB;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,oBAAoB,IAAI,OAAO;CAUhC;AAED,eAAe,gBAAgB,CAAC"}
|
|
@@ -55,6 +55,13 @@ export declare class Customer extends SmrtObject {
|
|
|
55
55
|
* rejected as a `where` filter key.
|
|
56
56
|
*/
|
|
57
57
|
taxId: string;
|
|
58
|
+
/**
|
|
59
|
+
* Tax code normally used for this customer's sales.
|
|
60
|
+
*
|
|
61
|
+
* An exempt customer always resolves to the tenant's exempt code before
|
|
62
|
+
* this preference is considered.
|
|
63
|
+
*/
|
|
64
|
+
defaultTaxCodeId: string;
|
|
58
65
|
/**
|
|
59
66
|
* Default shipping address
|
|
60
67
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Customer.d.ts","sourceRoot":"","sources":["../../src/models/Customer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"Customer.d.ts","sourceRoot":"","sources":["../../src/models/Customer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAIL,UAAU,EAEX,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,eAAe,EACpB,cAAc,EACd,YAAY,EACZ,KAAK,YAAY,EAClB,MAAM,mBAAmB,CAAC;AAE3B;;;;;;;;;;;;;;GAcG;AACH,qBAMa,QAAS,SAAQ,UAAU;IACtC;;;OAGG;IAEH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;IAE/B;;;OAGG;IAKH,SAAS,EAAE,MAAM,CAAM;IAEvB;;;;;;;;OAQG;IAMH,WAAW,EAAE,MAAM,CAAK;IAExB;;OAEG;IAKH,YAAY,EAAE,MAAM,CAAM;IAE1B;;OAEG;IAIH,SAAS,EAAE,OAAO,CAAS;IAE3B;;;;;OAKG;IAMH,KAAK,EAAE,MAAM,CAAM;IAEnB;;;;;OAKG;IAIH,gBAAgB,EAAE,MAAM,CAAM;IAE9B;;OAEG;IAKH,sBAAsB,EAAE,OAAO,CAAM;IAErC;;OAEG;IAEH,qBAAqB,EAAE,OAAO,CAAM;IAEpC;;OAEG;IAKH,MAAM,EAAE,cAAc,CAAyB;IAE/C;;;;;OAKG;IAKH,YAAY,EAAE,YAAY,CAAoB;IAE9C;;OAEG;IAKH,KAAK,EAAE,MAAM,CAAM;IAEnB;;;OAGG;IAKH,QAAQ,EAAE,YAAY,EAAE,CAAM;gBAElB,OAAO,GAAE,eAAoB;IAgCzC;;;OAGG;IACY,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAM1C,0EAA0E;IAC3D,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAKpC;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,QAAQ,IAAI,OAAO;IAInB;;OAEG;IACH,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAK3C;;;;;;;;;;OAUG;IACH,YAAY,IAAI,MAAM;CAGvB;AAED,eAAe,QAAQ,CAAC"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/** Persisted per-code/component tax totals for a commerce document. */
|
|
2
|
+
import { SmrtObject, type SmrtObjectOptions } from '@happyvertical/smrt-core';
|
|
3
|
+
import { type DocumentMoneyWriteCapability } from '../document-money-internal.js';
|
|
4
|
+
import { type TaxCodeKind } from '../money.js';
|
|
5
|
+
export type CommerceDocumentType = 'invoice' | 'contract' | 'credit_note';
|
|
6
|
+
export interface DocumentTaxOptions extends SmrtObjectOptions {
|
|
7
|
+
tenantId?: string;
|
|
8
|
+
documentType?: CommerceDocumentType;
|
|
9
|
+
documentId?: string;
|
|
10
|
+
currency?: string;
|
|
11
|
+
taxCodeId?: string | null;
|
|
12
|
+
taxCodeCode?: string | null;
|
|
13
|
+
kind?: TaxCodeKind | null;
|
|
14
|
+
taxComponentId?: string | null;
|
|
15
|
+
taxComponentName?: string | null;
|
|
16
|
+
percent?: string | null;
|
|
17
|
+
liabilityAccountId?: string | null;
|
|
18
|
+
taxableMinor?: number;
|
|
19
|
+
taxMinor?: number;
|
|
20
|
+
recoverableMinor?: number;
|
|
21
|
+
}
|
|
22
|
+
export declare class DocumentTax extends SmrtObject {
|
|
23
|
+
tenantId: string;
|
|
24
|
+
documentType: CommerceDocumentType;
|
|
25
|
+
documentId: string;
|
|
26
|
+
currency: string;
|
|
27
|
+
taxCodeId: string | null;
|
|
28
|
+
taxCodeCode: string | null;
|
|
29
|
+
kind: TaxCodeKind | null;
|
|
30
|
+
taxComponentId: string | null;
|
|
31
|
+
taxComponentName: string | null;
|
|
32
|
+
percent: string | null;
|
|
33
|
+
liabilityAccountId: string | null;
|
|
34
|
+
taxableMinor: number;
|
|
35
|
+
taxMinor: number;
|
|
36
|
+
recoverableMinor: number;
|
|
37
|
+
constructor(options?: DocumentTaxOptions);
|
|
38
|
+
private assertValidDerivedRow;
|
|
39
|
+
save(): Promise<this>;
|
|
40
|
+
delete(_options?: {
|
|
41
|
+
expectedUpdatedAt?: Date | string;
|
|
42
|
+
}): Promise<void>;
|
|
43
|
+
/** @internal Aggregate persistence only. */
|
|
44
|
+
saveDerived(capability: DocumentMoneyWriteCapability): Promise<this>;
|
|
45
|
+
/** @internal Aggregate persistence only. */
|
|
46
|
+
deleteDerived(capability: DocumentMoneyWriteCapability, options?: {
|
|
47
|
+
expectedUpdatedAt?: Date | string;
|
|
48
|
+
}): Promise<void>;
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=DocumentTax.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DocumentTax.d.ts","sourceRoot":"","sources":["../../src/models/DocumentTax.ts"],"names":[],"mappings":"AAAA,uEAAuE;AAEvE,OAAO,EAEL,UAAU,EACV,KAAK,iBAAiB,EAEvB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAEL,KAAK,4BAA4B,EAClC,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAwB,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAErE,MAAM,MAAM,oBAAoB,GAAG,SAAS,GAAG,UAAU,GAAG,aAAa,CAAC;AAE1E,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB;IAC3D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,oBAAoB,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,IAAI,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AACD,qBAaa,WAAY,SAAQ,UAAU;IAEzC,QAAQ,SAAM;IAGd,YAAY,EAAE,oBAAoB,CAAa;IAG/C,UAAU,SAAM;IAGhB,QAAQ,SAAS;IAGjB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGhC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGlC,IAAI,EAAE,WAAW,GAAG,IAAI,CAAQ;IAGhC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGrC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGvC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAQ;IAG9B,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGzC,YAAY,SAAK;IAGjB,QAAQ,SAAK;IAGb,gBAAgB,SAAK;gBAET,OAAO,GAAE,kBAAuB;IAyB5C,OAAO,CAAC,qBAAqB;IAwFd,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAOrB,MAAM,CACnB,QAAQ,GAAE;QAAE,iBAAiB,CAAC,EAAE,IAAI,GAAG,MAAM,CAAA;KAAO,GACnD,OAAO,CAAC,IAAI,CAAC;IAOhB,4CAA4C;IACtC,WAAW,CAAC,UAAU,EAAE,4BAA4B,GAAG,OAAO,CAAC,IAAI,CAAC;IAW1E,4CAA4C;IACtC,aAAa,CACjB,UAAU,EAAE,4BAA4B,EACxC,OAAO,GAAE;QAAE,iBAAiB,CAAC,EAAE,IAAI,GAAG,MAAM,CAAA;KAAO,GAClD,OAAO,CAAC,IAAI,CAAC;CASjB"}
|
package/dist/models/Invoice.d.ts
CHANGED
|
@@ -3,8 +3,11 @@
|
|
|
3
3
|
* @packageDocumentation
|
|
4
4
|
*/
|
|
5
5
|
import { SmrtObject } from '@happyvertical/smrt-core';
|
|
6
|
+
import type { DatabaseInterface } from '@happyvertical/smrt-core/migrations';
|
|
6
7
|
import type { Journal } from '@happyvertical/smrt-ledgers';
|
|
7
|
-
import { type
|
|
8
|
+
import { type DocumentMoneyReadRebindCapability, type DocumentMoneyWriteCapability } from '../document-money-internal.js';
|
|
9
|
+
import type { FrozenInvoiceAccountingOptions } from '../invoice-accounting-sync.js';
|
|
10
|
+
import { type AccountingInvoiceInput, type CancelRevenueOptions, type InvoiceCollectionMethod, type InvoiceKind, type InvoiceOptions, InvoiceStatus, type RecognizeRevenueOptions, type TaxRegistrationOptions } from '../types/index.js';
|
|
8
11
|
/**
|
|
9
12
|
* Invoice represents a bill sent to a customer for goods or services.
|
|
10
13
|
*
|
|
@@ -38,6 +41,12 @@ import { type AccountingInvoiceInput, type InvoiceCollectionMethod, type Invoice
|
|
|
38
41
|
* ```
|
|
39
42
|
*/
|
|
40
43
|
export declare class Invoice extends SmrtObject {
|
|
44
|
+
/** @internal Collection read guard returns this snapshot on its root DB. */
|
|
45
|
+
rebindMoneyRead(capability: DocumentMoneyReadRebindCapability, db: DatabaseInterface): this;
|
|
46
|
+
kind: InvoiceKind;
|
|
47
|
+
creditedInvoiceId: string | null;
|
|
48
|
+
/** Issued credit-note total cached under the source invoice lock. */
|
|
49
|
+
creditedAmount: number;
|
|
41
50
|
/**
|
|
42
51
|
* Tenant ID for multi-tenant isolation
|
|
43
52
|
* Nullable to support both tenant-scoped and global invoices
|
|
@@ -107,6 +116,20 @@ export declare class Invoice extends SmrtObject {
|
|
|
107
116
|
* Currency code (ISO 4217)
|
|
108
117
|
*/
|
|
109
118
|
currency: string;
|
|
119
|
+
/** Pricing interpretation fixed for the document before issue. */
|
|
120
|
+
lineAmountType: 'exclusive' | 'inclusive' | 'none';
|
|
121
|
+
/** Component rounding scope fixed for the document before issue. */
|
|
122
|
+
taxRoundingScope: 'line' | 'document';
|
|
123
|
+
/** Informational sum of resolved line discounts, in minor units. */
|
|
124
|
+
discountTotal: number;
|
|
125
|
+
/** Immutable seller registration snapshot once the invoice leaves draft. */
|
|
126
|
+
sellerTaxRegistrationsJson: string;
|
|
127
|
+
get sellerTaxRegistrations(): TaxRegistrationOptions[];
|
|
128
|
+
set sellerTaxRegistrations(value: TaxRegistrationOptions[]);
|
|
129
|
+
/** Immutable customer tax identifier snapshot once issued. */
|
|
130
|
+
partyTaxId: string;
|
|
131
|
+
/** Stable issue/freeze identity, independent of lifecycle updated_at. */
|
|
132
|
+
moneySnapshotId: string;
|
|
110
133
|
/**
|
|
111
134
|
* Current invoice status
|
|
112
135
|
*/
|
|
@@ -115,6 +138,8 @@ export declare class Invoice extends SmrtObject {
|
|
|
115
138
|
* Journal ID for AR recognition (cross-package ref to smrt-ledgers)
|
|
116
139
|
*/
|
|
117
140
|
arJournalId: string;
|
|
141
|
+
/** Posted journal that exactly reverses arJournalId on cancellation. */
|
|
142
|
+
arReversalJournalId: string | null;
|
|
118
143
|
/**
|
|
119
144
|
* Journal ID for revenue recognition (cross-package ref to smrt-ledgers)
|
|
120
145
|
*/
|
|
@@ -136,6 +161,8 @@ export declare class Invoice extends SmrtObject {
|
|
|
136
161
|
* When invoice was last synced to provider
|
|
137
162
|
*/
|
|
138
163
|
syncedAt: Date | null;
|
|
164
|
+
/** Server-owned prepared/in-flight/result identity for frozen accounting sync. */
|
|
165
|
+
accountingSyncStateJson: string;
|
|
139
166
|
/**
|
|
140
167
|
* How the provider collects this invoice (#3190), decided once by billing
|
|
141
168
|
* period close before its first push and reused on every retry, so it is
|
|
@@ -205,6 +232,17 @@ export declare class Invoice extends SmrtObject {
|
|
|
205
232
|
* - **Status transitions** are validated against the prior persisted status.
|
|
206
233
|
*/
|
|
207
234
|
save(): Promise<this>;
|
|
235
|
+
/** @internal Aggregate persistence only. */
|
|
236
|
+
saveDerived(capability: DocumentMoneyWriteCapability, options: {
|
|
237
|
+
recomputeLegacy: boolean;
|
|
238
|
+
}): Promise<this>;
|
|
239
|
+
delete(options?: {
|
|
240
|
+
expectedUpdatedAt?: Date | string;
|
|
241
|
+
}): Promise<void>;
|
|
242
|
+
/** @internal Aggregate persistence only. */
|
|
243
|
+
deleteDerived(capability: DocumentMoneyWriteCapability, options?: {
|
|
244
|
+
expectedUpdatedAt?: Date | string;
|
|
245
|
+
}): Promise<void>;
|
|
208
246
|
/**
|
|
209
247
|
* Resolve the AUTHORITATIVE prior status (S5 audit #1390 round 4). The
|
|
210
248
|
* {@link loadedInvoiceStatus} WeakMap is only populated when {@link initialize}
|
|
@@ -222,6 +260,7 @@ export declare class Invoice extends SmrtObject {
|
|
|
222
260
|
* (the dynamic imports stay inside the package).
|
|
223
261
|
*/
|
|
224
262
|
private recomputeAmountsForSave;
|
|
263
|
+
private recomputeAmountPaid;
|
|
225
264
|
/**
|
|
226
265
|
* Whether `amountPaid` covers `totalAmount`. This is the SINGLE source of
|
|
227
266
|
* truth for the **PAID** decision — both {@link updatePaymentStatus} (which
|
|
@@ -311,6 +350,8 @@ export declare class Invoice extends SmrtObject {
|
|
|
311
350
|
* Get remaining amount due
|
|
312
351
|
*/
|
|
313
352
|
getAmountDue(): number;
|
|
353
|
+
/** Signed amount still owed after payments and issued credit notes. */
|
|
354
|
+
getBalance(): number;
|
|
314
355
|
/**
|
|
315
356
|
* Mark invoice as sent
|
|
316
357
|
*/
|
|
@@ -337,6 +378,8 @@ export declare class Invoice extends SmrtObject {
|
|
|
337
378
|
* Cancel the invoice
|
|
338
379
|
*/
|
|
339
380
|
cancel(): void;
|
|
381
|
+
/** Cancel a posted money-v2 invoice with an exact atomic journal reversal. */
|
|
382
|
+
cancelWithRevenueReversal(options: CancelRevenueOptions): Promise<Journal | null>;
|
|
340
383
|
/**
|
|
341
384
|
* Write off the invoice (bad debt)
|
|
342
385
|
*/
|
|
@@ -388,7 +431,8 @@ export declare class Invoice extends SmrtObject {
|
|
|
388
431
|
* await invoice.save();
|
|
389
432
|
* ```
|
|
390
433
|
*/
|
|
391
|
-
toAccountingInput(): Promise<AccountingInvoiceInput>;
|
|
434
|
+
toAccountingInput(options?: FrozenInvoiceAccountingOptions): Promise<AccountingInvoiceInput>;
|
|
435
|
+
private toAccountingInputLocked;
|
|
392
436
|
}
|
|
393
437
|
export default Invoice;
|
|
394
438
|
//# sourceMappingURL=Invoice.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Invoice.d.ts","sourceRoot":"","sources":["../../src/models/Invoice.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAIL,UAAU,EAEX,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,OAAO,EAAoB,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"Invoice.d.ts","sourceRoot":"","sources":["../../src/models/Invoice.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,8 +3,10 @@
|
|
|
3
3
|
* @packageDocumentation
|
|
4
4
|
*/
|
|
5
5
|
import { SmrtObject } from '@happyvertical/smrt-core';
|
|
6
|
+
import type { DatabaseInterface } from '@happyvertical/smrt-core/migrations';
|
|
7
|
+
import { type DocumentMoneyReadRebindCapability, type DocumentMoneyWriteCapability } from '../document-money-internal.js';
|
|
6
8
|
import { type InvoiceCalculationContext, type InvoiceLineDraft } from '../svelte/invoices/calculations.js';
|
|
7
|
-
import type { AccountingLineItemInput, InvoiceLineEditorState, InvoiceLineItemOptions } from '../types/index.js';
|
|
9
|
+
import type { AccountingLineItemInput, InvoiceCreditCalculationBasis, InvoiceLineEditorState, InvoiceLineItemOptions, InvoiceTaxComponentSnapshot } from '../types/index.js';
|
|
8
10
|
/**
|
|
9
11
|
* InvoiceLineItem represents a single line item on an invoice.
|
|
10
12
|
*
|
|
@@ -27,6 +29,8 @@ import type { AccountingLineItemInput, InvoiceLineEditorState, InvoiceLineItemOp
|
|
|
27
29
|
* ```
|
|
28
30
|
*/
|
|
29
31
|
export declare class InvoiceLineItem extends SmrtObject {
|
|
32
|
+
/** @internal Collection read guard returns this snapshot on its root DB. */
|
|
33
|
+
rebindMoneyRead(capability: DocumentMoneyReadRebindCapability, db: DatabaseInterface): this;
|
|
30
34
|
/**
|
|
31
35
|
* Tenant ID for multi-tenant isolation
|
|
32
36
|
* Nullable to support both tenant-scoped and global invoice line items
|
|
@@ -36,6 +40,10 @@ export declare class InvoiceLineItem extends SmrtObject {
|
|
|
36
40
|
* Parent invoice
|
|
37
41
|
*/
|
|
38
42
|
invoiceId: string;
|
|
43
|
+
creditedLineId: string | null;
|
|
44
|
+
creditCalculationBasisJson: string;
|
|
45
|
+
get creditCalculationBasis(): InvoiceCreditCalculationBasis | null;
|
|
46
|
+
set creditCalculationBasis(value: InvoiceCreditCalculationBasis | null);
|
|
39
47
|
/**
|
|
40
48
|
* Item description
|
|
41
49
|
*/
|
|
@@ -44,6 +52,7 @@ export declare class InvoiceLineItem extends SmrtObject {
|
|
|
44
52
|
* SKU or item code
|
|
45
53
|
*/
|
|
46
54
|
sku: string;
|
|
55
|
+
productId: string | null;
|
|
47
56
|
/** Nonnegative decimal quantity (hours, weight, units), up to six fractional digits. */
|
|
48
57
|
quantity: number;
|
|
49
58
|
/** Raw editor modes retained only while they resolve to the authoritative model fields. */
|
|
@@ -64,6 +73,8 @@ export declare class InvoiceLineItem extends SmrtObject {
|
|
|
64
73
|
* Discount amount (flat, not percentage), in integer minor units (#2361).
|
|
65
74
|
*/
|
|
66
75
|
discount: number;
|
|
76
|
+
discountType: 'none' | 'percent' | 'amount';
|
|
77
|
+
discountRate: string;
|
|
67
78
|
/**
|
|
68
79
|
* Tax rate as a decimal fraction (e.g., 0.05 for 5%).
|
|
69
80
|
*
|
|
@@ -72,6 +83,17 @@ export declare class InvoiceLineItem extends SmrtObject {
|
|
|
72
83
|
* truncate every rate to 0 (#2361).
|
|
73
84
|
*/
|
|
74
85
|
taxRate: number;
|
|
86
|
+
taxMode: 'inherit' | 'override';
|
|
87
|
+
taxCodeId: string | null;
|
|
88
|
+
taxCodeCode: string | null;
|
|
89
|
+
taxCodeName: string | null;
|
|
90
|
+
taxComponentsJson: string | null;
|
|
91
|
+
get taxComponents(): InvoiceTaxComponentSnapshot[];
|
|
92
|
+
set taxComponents(value: InvoiceTaxComponentSnapshot[]);
|
|
93
|
+
taxAmount: number;
|
|
94
|
+
legacyAmount: number | null;
|
|
95
|
+
/** Stable document snapshot identity; ordinary lifecycle saves do not change it. */
|
|
96
|
+
moneySnapshotId: string;
|
|
75
97
|
/**
|
|
76
98
|
* Calculated line amount, in integer minor units (#2361).
|
|
77
99
|
*/
|
|
@@ -96,7 +118,7 @@ export declare class InvoiceLineItem extends SmrtObject {
|
|
|
96
118
|
* Revenue account ID (cross-package ref to smrt-ledgers)
|
|
97
119
|
* Used for revenue recognition to specific accounts
|
|
98
120
|
*/
|
|
99
|
-
revenueAccountId: string;
|
|
121
|
+
revenueAccountId: string | null;
|
|
100
122
|
/**
|
|
101
123
|
* Sort order within the invoice
|
|
102
124
|
*/
|
|
@@ -114,6 +136,15 @@ export declare class InvoiceLineItem extends SmrtObject {
|
|
|
114
136
|
getEditorDraft(authorizedContext: InvoiceCalculationContext): InvoiceLineDraft | null;
|
|
115
137
|
/** Validate resolved fields and recompute amount before persistence; editor metadata never determines money. */
|
|
116
138
|
save(): Promise<this>;
|
|
139
|
+
/** @internal Aggregate persistence only. */
|
|
140
|
+
saveDerived(capability: DocumentMoneyWriteCapability, legacy: boolean): Promise<this>;
|
|
141
|
+
delete(options?: {
|
|
142
|
+
expectedUpdatedAt?: Date | string;
|
|
143
|
+
}): Promise<void>;
|
|
144
|
+
/** @internal Aggregate persistence only. */
|
|
145
|
+
deleteDerived(capability: DocumentMoneyWriteCapability, options?: {
|
|
146
|
+
expectedUpdatedAt?: Date | string;
|
|
147
|
+
}): Promise<void>;
|
|
117
148
|
/**
|
|
118
149
|
* Check if line item has source tracking
|
|
119
150
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InvoiceLineItem.d.ts","sourceRoot":"","sources":["../../src/models/InvoiceLineItem.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAIL,UAAU,EAEX,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"InvoiceLineItem.d.ts","sourceRoot":"","sources":["../../src/models/InvoiceLineItem.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/** Durable, internal rollback journal for one commerce money document. */
|
|
2
|
+
import { SmrtObject, type SmrtObjectOptions } from '@happyvertical/smrt-core';
|
|
3
|
+
export type MoneyMigrationDocumentType = 'invoice' | 'contract';
|
|
4
|
+
export type MoneyMigrationDocumentState = 'prepared' | 'applied' | 'rolled_back';
|
|
5
|
+
export interface MoneyMigrationDocumentOptions extends SmrtObjectOptions {
|
|
6
|
+
tenantId?: string;
|
|
7
|
+
migrationId?: string;
|
|
8
|
+
documentType?: MoneyMigrationDocumentType;
|
|
9
|
+
documentId?: string;
|
|
10
|
+
state?: MoneyMigrationDocumentState;
|
|
11
|
+
preImageJson?: string;
|
|
12
|
+
preChecksum?: string;
|
|
13
|
+
postImageJson?: string;
|
|
14
|
+
postChecksum?: string;
|
|
15
|
+
}
|
|
16
|
+
export declare class MoneyMigrationDocument extends SmrtObject {
|
|
17
|
+
tenantId: string;
|
|
18
|
+
migrationId: string;
|
|
19
|
+
documentType: MoneyMigrationDocumentType;
|
|
20
|
+
documentId: string;
|
|
21
|
+
state: MoneyMigrationDocumentState;
|
|
22
|
+
preImageJson: string;
|
|
23
|
+
preChecksum: string;
|
|
24
|
+
postImageJson: string;
|
|
25
|
+
postChecksum: string;
|
|
26
|
+
constructor(options?: MoneyMigrationDocumentOptions);
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=MoneyMigrationDocument.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MoneyMigrationDocument.d.ts","sourceRoot":"","sources":["../../src/models/MoneyMigrationDocument.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAE1E,OAAO,EAEL,UAAU,EACV,KAAK,iBAAiB,EAEvB,MAAM,0BAA0B,CAAC;AAGlC,MAAM,MAAM,0BAA0B,GAAG,SAAS,GAAG,UAAU,CAAC;AAChE,MAAM,MAAM,2BAA2B,GACnC,UAAU,GACV,SAAS,GACT,aAAa,CAAC;AAElB,MAAM,WAAW,6BAA8B,SAAQ,iBAAiB;IACtE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,0BAA0B,CAAC;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,2BAA2B,CAAC;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,qBAca,sBAAuB,SAAQ,UAAU;IAEpD,QAAQ,SAAM;IAGd,WAAW,SAAM;IAGjB,YAAY,EAAE,0BAA0B,CAAa;IAGrD,UAAU,SAAM;IAEhB,KAAK,EAAE,2BAA2B,CAAc;IAGhD,YAAY,SAAM;IAElB,WAAW,SAAM;IAGjB,aAAa,SAAM;IAEnB,YAAY,SAAM;gBAEN,OAAO,GAAE,6BAAkC;CAkBxD"}
|
package/dist/models/Payment.d.ts
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { SmrtObject } from '@happyvertical/smrt-core';
|
|
6
6
|
import type { Journal } from '@happyvertical/smrt-ledgers';
|
|
7
|
-
import { PaymentMethod, type PaymentOptions, PaymentStatus, type RecordPaymentOptions } from '../types/index.js';
|
|
7
|
+
import { type PaymentKind, PaymentMethod, type PaymentOptions, PaymentStatus, type RecordPaymentOptions } from '../types/index.js';
|
|
8
8
|
/**
|
|
9
9
|
* Payment represents a financial transaction against a contract.
|
|
10
10
|
*
|
|
@@ -31,6 +31,8 @@ import { PaymentMethod, type PaymentOptions, PaymentStatus, type RecordPaymentOp
|
|
|
31
31
|
* ```
|
|
32
32
|
*/
|
|
33
33
|
export declare class Payment extends SmrtObject {
|
|
34
|
+
/** Incoming settlement or outgoing customer refund. Amount stays positive. */
|
|
35
|
+
kind: PaymentKind;
|
|
34
36
|
/**
|
|
35
37
|
* Tenant ID for multi-tenant isolation
|
|
36
38
|
* Nullable to support both tenant-scoped and global payments
|
|
@@ -277,6 +279,8 @@ export declare class Payment extends SmrtObject {
|
|
|
277
279
|
* ```
|
|
278
280
|
*/
|
|
279
281
|
recordPayment(options: RecordPaymentOptions): Promise<Journal>;
|
|
282
|
+
/** Settle an outgoing refund through the same guarded journal transaction. */
|
|
283
|
+
recordRefund(options: RecordPaymentOptions): Promise<Journal>;
|
|
280
284
|
/** Post and complete only inside recordPayment's claimed transaction. */
|
|
281
285
|
private postPaymentInTransaction;
|
|
282
286
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Payment.d.ts","sourceRoot":"","sources":["../../src/models/Payment.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAIL,UAAU,EAEX,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAO3D,OAAO,EACL,aAAa,EACb,KAAK,cAAc,EACnB,aAAa,EACb,KAAK,oBAAoB,EAC1B,MAAM,mBAAmB,CAAC;AAgD3B;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,
|
|
1
|
+
{"version":3,"file":"Payment.d.ts","sourceRoot":"","sources":["../../src/models/Payment.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAIL,UAAU,EAEX,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAO3D,OAAO,EACL,KAAK,WAAW,EAChB,aAAa,EACb,KAAK,cAAc,EACnB,aAAa,EACb,KAAK,oBAAoB,EAC1B,MAAM,mBAAmB,CAAC;AAgD3B;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBA+Ca,OAAQ,SAAQ,UAAU;IACrC,8EAA8E;IAC9E,IAAI,EAAE,WAAW,CAAa;IAE9B;;;OAGG;IAEH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;IAE/B;;OAEG;IAGH,UAAU,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEjC;;OAEG;IAGH,UAAU,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEjC;;;;;;;OAOG;IAEH,MAAM,EAAE,MAAM,CAAK;IAEnB;;OAEG;IAKH,QAAQ,EAAE,MAAM,CAAS;IAEzB;;OAEG;IAIH,MAAM,EAAE,aAAa,CAA+B;IAEpD;;OAEG;IAKH,MAAM,EAAE,aAAa,CAAyB;IAE9C;;OAEG;IACH,aAAa,EAAE,MAAM,CAAM;IAE3B;;OAEG;IAEH,SAAS,EAAE,MAAM,CAAM;IAEvB;;OAEG;IAEH,SAAS,EAAE,MAAM,CAAM;IAEvB;;OAEG;IAEH,MAAM,EAAE,IAAI,GAAG,IAAI,CAAQ;IAE3B;;OAEG;IAKH,KAAK,EAAE,MAAM,CAAM;IAMnB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAM;IAExB;;OAEG;IACH,gBAAgB,EAAE,MAAM,CAAM;IAE9B;;OAEG;IACH,QAAQ,EAAE,IAAI,GAAG,IAAI,CAAQ;IAiB7B;;;;;;;;;;OAUG;IACH,SAAS,EAAE,MAAM,CAAM;IAEvB;;;;;;;OAOG;IACH,YAAY,EAAE,MAAM,CAAM;IAE1B;;;;;;;;;;OAUG;IACH,YAAY,EAAE,MAAM,CAAK;IAEzB;;;;;;OAMG;IACH,cAAc,EAAE,MAAM,CAAM;IAE5B;;;;;;;;;;OAUG;IACH,UAAU,EAAE,MAAM,CAAK;IAEvB;;;;;;OAMG;IACH,iBAAiB,EAAE,MAAM,CAAK;gBAElB,OAAO,GAAE,cAAmB;IAgCxC;;;;;OAKG;IACY,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ1C;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACY,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAmEpC;;;;;;OAMG;IACH,OAAO,CAAC,sBAAsB;IAY9B;;;;;;;;;;;;;;;OAeG;YACW,gBAAgB;IAa9B;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,6BAA6B;IA2CrC;;;;;;OAMG;IACH,QAAQ,IAAI,MAAM;IAKlB;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,UAAU,IAAI,OAAO;IAIrB;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACG,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC;IA2DpE,8EAA8E;IACxE,YAAY,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC;IAMnE,yEAAyE;YAC3D,wBAAwB;IAkEtC;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAa3C;;OAEG;IACH,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAOjC;;OAEG;IACH,MAAM,IAAI,IAAI;CAMf;AAED,eAAe,OAAO,CAAC"}
|