erpnext-queue-client 1.39.2 → 2.0.0-beta.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 (138) hide show
  1. package/dist/client.js +3 -6
  2. package/dist/constants.d.ts +1 -1
  3. package/dist/constants.js +16 -2
  4. package/dist/erpnext/doctypeResourceRequest.d.ts +12 -11
  5. package/dist/erpnext/doctypeResourceRequest.js +3 -2
  6. package/dist/erpnext/doctypeSubmittableResourceRequest.d.ts +161 -4
  7. package/dist/erpnext/doctypeSubmittableResourceRequest.js +16 -1
  8. package/dist/erpnext/doctypes/address.d.ts +160 -225
  9. package/dist/erpnext/doctypes/address.js +0 -2
  10. package/dist/erpnext/doctypes/contact.d.ts +157 -314
  11. package/dist/erpnext/doctypes/contact.js +1 -1
  12. package/dist/erpnext/doctypes/deliveryNote.d.ts +705 -505
  13. package/dist/erpnext/doctypes/deliveryNote.js +4 -10
  14. package/dist/erpnext/doctypes/item.d.ts +231 -324
  15. package/dist/erpnext/doctypes/paymentEntry.d.ts +820 -0
  16. package/dist/erpnext/doctypes/paymentEntry.js +72 -0
  17. package/dist/erpnext/doctypes/productBundle.d.ts +48 -58
  18. package/dist/erpnext/doctypes/purchaseInvoice.d.ts +717 -745
  19. package/dist/erpnext/doctypes/purchaseReceipt.d.ts +282 -332
  20. package/dist/erpnext/doctypes/salesInvoice.d.ts +3334 -0
  21. package/dist/erpnext/doctypes/salesInvoice.js +72 -0
  22. package/dist/erpnext/doctypes/servicecase.d.ts +191 -134
  23. package/dist/erpnext/doctypes/servicecase.js +4 -6
  24. package/dist/erpnext/doctypes/shipment.d.ts +193 -251
  25. package/dist/erpnext/doctypes/tags.d.ts +10 -0
  26. package/dist/erpnext/doctypes/tags.js +102 -0
  27. package/dist/erpnext/model/Account.d.ts +0 -33
  28. package/dist/erpnext/model/Account.js +0 -11
  29. package/dist/erpnext/model/Address.d.ts +112 -233
  30. package/dist/erpnext/model/Address.js +11 -49
  31. package/dist/erpnext/model/Attachment.d.ts +0 -3
  32. package/dist/erpnext/model/Attachment.js +0 -1
  33. package/dist/erpnext/model/Boolean.d.ts +4 -0
  34. package/dist/erpnext/model/Boolean.js +9 -0
  35. package/dist/erpnext/model/Compliance.d.ts +0 -112
  36. package/dist/erpnext/model/Compliance.js +0 -19
  37. package/dist/erpnext/model/ConsolidatedCustomsInvoice.d.ts +26 -138
  38. package/dist/erpnext/model/ConsolidatedCustomsInvoice.js +0 -19
  39. package/dist/erpnext/model/Contact.d.ts +166 -416
  40. package/dist/erpnext/model/Contact.js +16 -69
  41. package/dist/erpnext/model/Country.d.ts +0 -64
  42. package/dist/erpnext/model/Country.js +0 -10
  43. package/dist/erpnext/model/Customer.d.ts +39 -64
  44. package/dist/erpnext/model/Customer.js +11 -25
  45. package/dist/erpnext/model/DeliveryNote.d.ts +125 -1168
  46. package/dist/erpnext/model/DeliveryNote.js +5 -51
  47. package/dist/erpnext/model/DispatchRun.d.ts +4 -110
  48. package/dist/erpnext/model/DispatchRun.js +1 -30
  49. package/dist/erpnext/model/DispatcherPreset.d.ts +0 -119
  50. package/dist/erpnext/model/DispatcherPreset.js +1 -27
  51. package/dist/erpnext/model/DocInfo.d.ts +41 -339
  52. package/dist/erpnext/model/DocInfo.js +5 -6
  53. package/dist/erpnext/model/DocTypeHelpers.d.ts +160 -2
  54. package/dist/erpnext/model/DocTypeHelpers.js +124 -1
  55. package/dist/erpnext/model/ERPNextDocTypeMeta.d.ts +137 -0
  56. package/dist/erpnext/model/ERPNextDocTypeMeta.js +42 -0
  57. package/dist/erpnext/model/ERPNextRequest.d.ts +5 -5
  58. package/dist/erpnext/model/File.d.ts +0 -48
  59. package/dist/erpnext/model/File.js +0 -8
  60. package/dist/erpnext/model/Fulfiller.d.ts +0 -121
  61. package/dist/erpnext/model/Fulfiller.js +1 -56
  62. package/dist/erpnext/model/FulfillerSettings.d.ts +0 -39
  63. package/dist/erpnext/model/FulfillerSettings.js +0 -6
  64. package/dist/erpnext/model/InternalReasons.d.ts +0 -3
  65. package/dist/erpnext/model/InternalReasons.js +0 -1
  66. package/dist/erpnext/model/Item.d.ts +488 -1847
  67. package/dist/erpnext/model/Item.js +18 -142
  68. package/dist/erpnext/model/ItemTaxTemplate.d.ts +57 -0
  69. package/dist/erpnext/model/ItemTaxTemplate.js +25 -0
  70. package/dist/erpnext/model/Logs.d.ts +0 -9
  71. package/dist/erpnext/model/Logs.js +0 -3
  72. package/dist/erpnext/model/PartList.d.ts +0 -15
  73. package/dist/erpnext/model/PartList.js +0 -5
  74. package/dist/erpnext/model/PaymentEntry.d.ts +302 -122
  75. package/dist/erpnext/model/PaymentEntry.js +52 -48
  76. package/dist/erpnext/model/Permissions.d.ts +3 -3
  77. package/dist/erpnext/model/Permissions.js +1 -1
  78. package/dist/erpnext/model/ProductBundle.d.ts +6 -107
  79. package/dist/erpnext/model/ProductBundle.js +0 -17
  80. package/dist/erpnext/model/PurchaseInvoice.d.ts +319 -389
  81. package/dist/erpnext/model/PurchaseInvoice.js +5 -24
  82. package/dist/erpnext/model/PurchaseOrder.d.ts +38 -184
  83. package/dist/erpnext/model/PurchaseOrder.js +0 -34
  84. package/dist/erpnext/model/Receipt.d.ts +32 -123
  85. package/dist/erpnext/model/Receipt.js +2 -25
  86. package/dist/erpnext/model/ReceiptDraft.d.ts +28 -70
  87. package/dist/erpnext/model/ReceiptDraft.js +2 -12
  88. package/dist/erpnext/model/Report.d.ts +0 -40
  89. package/dist/erpnext/model/Report.js +0 -8
  90. package/dist/erpnext/model/SalesInvoice.d.ts +2445 -0
  91. package/dist/erpnext/model/SalesInvoice.js +330 -0
  92. package/dist/erpnext/model/SalesOrder.d.ts +1061 -0
  93. package/dist/erpnext/model/SalesOrder.js +272 -0
  94. package/dist/erpnext/model/SalesTaxesAndCharges.d.ts +47 -0
  95. package/dist/erpnext/model/SalesTaxesAndCharges.js +30 -0
  96. package/dist/erpnext/model/Servicecase.d.ts +283 -728
  97. package/dist/erpnext/model/Servicecase.js +30 -108
  98. package/dist/erpnext/model/ServicecaseReason.d.ts +0 -8
  99. package/dist/erpnext/model/ServicecaseReason.js +0 -2
  100. package/dist/erpnext/model/ServicecaseSolution.d.ts +0 -3
  101. package/dist/erpnext/model/ServicecaseSolution.js +0 -1
  102. package/dist/erpnext/model/ServiceportalProductConfiguration.d.ts +27 -452
  103. package/dist/erpnext/model/ServiceportalProductConfiguration.js +16 -47
  104. package/dist/erpnext/model/Shipment.d.ts +18 -715
  105. package/dist/erpnext/model/Shipment.js +1 -69
  106. package/dist/erpnext/model/ShippingFees.d.ts +2 -2
  107. package/dist/erpnext/model/ShippingLabel.d.ts +0 -32
  108. package/dist/erpnext/model/ShippingLabel.js +0 -8
  109. package/dist/erpnext/model/ShippingProvider.d.ts +6 -87
  110. package/dist/erpnext/model/ShippingProvider.js +3 -6
  111. package/dist/erpnext/model/Stock.d.ts +0 -40
  112. package/dist/erpnext/model/Stock.js +0 -8
  113. package/dist/erpnext/model/StockEntry.d.ts +14 -47
  114. package/dist/erpnext/model/StockEntry.js +0 -11
  115. package/dist/erpnext/model/StockReconciliation.d.ts +5 -32
  116. package/dist/erpnext/model/StockReconciliation.js +0 -10
  117. package/dist/erpnext/model/Supplier.d.ts +0 -79
  118. package/dist/erpnext/model/Supplier.js +0 -8
  119. package/dist/erpnext/model/TaxCategory.d.ts +20 -0
  120. package/dist/erpnext/model/TaxCategory.js +16 -0
  121. package/dist/erpnext/model/Version.d.ts +0 -9
  122. package/dist/erpnext/model/Version.js +0 -3
  123. package/dist/erpnext/model/Waitlist.d.ts +0 -3
  124. package/dist/erpnext/model/Waitlist.js +0 -1
  125. package/dist/erpnext/model/WarehouseCategory.d.ts +0 -11
  126. package/dist/erpnext/model/WarehouseCategory.js +1 -7
  127. package/dist/erpnext/reports.js +3 -7
  128. package/dist/erpnext/resourceRequest.d.ts +13 -11
  129. package/dist/erpnext/resourceRequest.js +34 -23
  130. package/dist/index.d.ts +23 -11
  131. package/dist/index.js +31 -12
  132. package/dist/index.test.d.ts +1 -0
  133. package/dist/index.test.js +261 -0
  134. package/dist/utils/utils.d.ts +3 -0
  135. package/dist/utils/zodContextOptionals.d.ts +14 -0
  136. package/dist/utils/zodContextOptionals.js +45 -0
  137. package/dist/utils/zodUtils.js +16 -3
  138. package/package.json +6 -1
@@ -0,0 +1,330 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SalesInvoiceDraft = exports.SalesInvoice = exports.SalesInvoicePayment = exports.SalesInvoiceAdvance = exports.SalesInvoiceItem = void 0;
4
+ const zod_1 = require("zod");
5
+ const Boolean_1 = require("./Boolean");
6
+ const zodContextOptionals_1 = require("../../utils/zodContextOptionals");
7
+ const SalesTaxesAndCharges_1 = require("./SalesTaxesAndCharges");
8
+ const DocTypeHelpers_1 = require("./DocTypeHelpers");
9
+ // Sales Invoice Item Schema
10
+ exports.SalesInvoiceItem = zod_1.z
11
+ .object({
12
+ // Core Item Information
13
+ barcode: zod_1.z.string().optional().nullable(),
14
+ has_item_scanned: Boolean_1.ERPNextBoolean,
15
+ item_code: zod_1.z.string().min(1, "Item Code is required"),
16
+ customer_item_code: zod_1.z.string().optional().nullable(),
17
+ item_name: zod_1.z.string().min(1, "Item Name is required"),
18
+ description: zod_1.z.string().optional().nullable(),
19
+ image: zod_1.z.string().optional().nullable(),
20
+ item_group: zod_1.z.string().optional().nullable(),
21
+ brand: zod_1.z.string().optional().nullable(),
22
+ // Quantity and UOM
23
+ qty: zod_1.z.number().positive("Quantity must be positive"),
24
+ stock_uom: zod_1.z.string().optional().nullable(),
25
+ uom: zod_1.z.string().min(1, "UOM is required"),
26
+ conversion_factor: zod_1.z.number().optional().nullable(),
27
+ stock_qty: zod_1.z.number().optional().nullable(),
28
+ // Pricing
29
+ price_list_rate: zod_1.z.number().optional().nullable(),
30
+ base_price_list_rate: zod_1.z.number().optional().nullable(),
31
+ // Discount and Margin
32
+ margin_type: zod_1.z.enum(["", "Percentage", "Amount"]).optional().nullable(),
33
+ margin_rate_or_amount: zod_1.z.number().optional().nullable(),
34
+ rate_with_margin: zod_1.z.number().optional().nullable(),
35
+ discount_percentage: zod_1.z.number().optional().nullable(),
36
+ discount_amount: zod_1.z.number().optional().nullable(),
37
+ base_rate_with_margin: zod_1.z.number().optional().nullable(),
38
+ // Rate and Amount
39
+ rate: zod_1.z.number(),
40
+ amount: zod_1.z.number().optional().nullable(),
41
+ base_rate: zod_1.z.number().optional().nullable(),
42
+ base_amount: zod_1.z.number().optional().nullable(),
43
+ item_tax_template: zod_1.z.string().optional().nullable(),
44
+ // Pricing Rules
45
+ pricing_rules: zod_1.z.string().optional().nullable(),
46
+ stock_uom_rate: zod_1.z.number().optional().nullable(),
47
+ is_free_item: Boolean_1.ERPNextBoolean,
48
+ grant_commission: Boolean_1.ERPNextBoolean,
49
+ // Net Amounts
50
+ net_rate: zod_1.z.number().optional().nullable(),
51
+ net_amount: zod_1.z.number().optional().nullable(),
52
+ base_net_rate: zod_1.z.number().optional().nullable(),
53
+ base_net_amount: zod_1.z.number().optional().nullable(),
54
+ // Drop Ship
55
+ delivered_by_supplier: Boolean_1.ERPNextBoolean,
56
+ // Weight
57
+ weight_per_unit: zod_1.z.number().optional().nullable(),
58
+ total_weight: zod_1.z.number().optional().nullable(),
59
+ weight_uom: zod_1.z.string().optional().nullable(),
60
+ // Warehouse and Stock
61
+ warehouse: zod_1.z.string().optional().nullable(),
62
+ target_warehouse: zod_1.z.string().optional().nullable(),
63
+ quality_inspection: zod_1.z.string().optional().nullable(),
64
+ serial_no: zod_1.z.string().optional().nullable(),
65
+ batch_no: zod_1.z.string().optional().nullable(),
66
+ allow_zero_valuation_rate: Boolean_1.ERPNextBoolean,
67
+ incoming_rate: zod_1.z.number().optional().nullable(),
68
+ item_tax_rate: zod_1.z.string().optional().nullable(),
69
+ actual_batch_qty: zod_1.z.number().optional().nullable(),
70
+ actual_qty: zod_1.z.number().optional().nullable(),
71
+ // References
72
+ sales_order: zod_1.z.string().optional().nullable(),
73
+ so_detail: zod_1.z.string().optional().nullable(),
74
+ delivery_note: zod_1.z.string().optional().nullable(),
75
+ dn_detail: zod_1.z.string().optional().nullable(),
76
+ delivered_qty: zod_1.z.number().optional().nullable(),
77
+ sales_invoice_item: zod_1.z.string().optional().nullable(),
78
+ // Accounting
79
+ income_account: zod_1.z.string().min(1, "Income Account is required"),
80
+ expense_account: zod_1.z.string().optional().nullable(),
81
+ cost_center: zod_1.z.string().optional().nullable(),
82
+ discount_account: zod_1.z.string().optional().nullable(),
83
+ // Deferred Revenue
84
+ enable_deferred_revenue: Boolean_1.ERPNextBoolean,
85
+ deferred_revenue_account: zod_1.z.string().optional().nullable(),
86
+ service_start_date: zod_1.z.string().optional().nullable(), // Date string
87
+ service_stop_date: zod_1.z.string().optional().nullable(), // Date string
88
+ service_end_date: zod_1.z.string().optional().nullable(), // Date string
89
+ // Fixed Assets
90
+ is_fixed_asset: Boolean_1.ERPNextBoolean,
91
+ asset: zod_1.z.string().optional().nullable(),
92
+ finance_book: zod_1.z.string().optional().nullable(),
93
+ // Additional
94
+ project: zod_1.z.string().optional().nullable(),
95
+ page_break: Boolean_1.ERPNextBoolean,
96
+ use_serial_batch_fields: Boolean_1.ERPNextBoolean,
97
+ serial_and_batch_bundle: zod_1.z.string().optional().nullable(),
98
+ // Internal Transfer
99
+ purchase_order: zod_1.z.string().optional().nullable(),
100
+ purchase_order_item: zod_1.z.string().optional().nullable(),
101
+ })
102
+ .describe("Sales Invoice Item");
103
+ // Sales Invoice Advance Schema
104
+ exports.SalesInvoiceAdvance = zod_1.z
105
+ .object({
106
+ doctype: zod_1.z.literal("Sales Invoice Advance"),
107
+ reference_type: zod_1.z.string(),
108
+ reference_name: zod_1.z.string(),
109
+ reference_row: zod_1.z.string().optional().nullable(),
110
+ advance_amount: zod_1.z.number(),
111
+ allocated_amount: zod_1.z.number().optional().nullable(),
112
+ remarks: zod_1.z.string().optional().nullable(),
113
+ })
114
+ .describe("Sales Invoice Advance");
115
+ // Sales Invoice Payment Schema
116
+ exports.SalesInvoicePayment = zod_1.z
117
+ .object({
118
+ mode_of_payment: zod_1.z.string(),
119
+ amount: zod_1.z.number(),
120
+ base_amount: zod_1.z.number().optional().nullable(),
121
+ account: zod_1.z.string().optional().nullable(),
122
+ reference_no: zod_1.z.string().optional().nullable(),
123
+ clearance_date: zod_1.z.string().optional().nullable(), // Date string
124
+ })
125
+ .describe("Sales Invoice Payment");
126
+ // Main Sales Invoice Schema
127
+ exports.SalesInvoice = zod_1.z
128
+ .object({
129
+ // Document Info
130
+ custom_invoice_no: zod_1.z.string(),
131
+ naming_series: (0, zodContextOptionals_1.optionalForInput)(zod_1.z.enum(["INV-.#", "INV-.#-GS"]).default("INV-.#")),
132
+ title: zod_1.z.string().optional().nullable(),
133
+ amended_from: zod_1.z.string().optional().nullable(),
134
+ // Customer Information
135
+ customer: zod_1.z.string().min(1, "Customer is required"),
136
+ customer_name: zod_1.z.string().optional().nullable(),
137
+ tax_id: zod_1.z.string().optional().nullable(),
138
+ company_tax_id: zod_1.z.string().optional().nullable(),
139
+ // Dates
140
+ posting_date: zod_1.z.string().min(1, "Posting Date is required"), // Date string
141
+ posting_time: zod_1.z.string().optional().nullable(), // Time string
142
+ set_posting_time: Boolean_1.ERPNextBoolean,
143
+ due_date: zod_1.z.string().optional().nullable(), // Date string
144
+ // Company
145
+ company: zod_1.z.string().min(1, "Company is required"),
146
+ // POS
147
+ is_pos: Boolean_1.ERPNextBoolean,
148
+ pos_profile: zod_1.z.string().optional().nullable(),
149
+ // Return Information
150
+ is_return: Boolean_1.ERPNextBoolean,
151
+ return_against: zod_1.z.string().optional().nullable(),
152
+ is_debit_note: Boolean_1.ERPNextBoolean,
153
+ update_outstanding_for_self: Boolean_1.ERPNextBoolean,
154
+ update_billed_amount_in_sales_order: Boolean_1.ERPNextBoolean,
155
+ update_billed_amount_in_delivery_note: Boolean_1.ERPNextBoolean,
156
+ // Consolidated
157
+ is_consolidated: Boolean_1.ERPNextBoolean,
158
+ // Currency and Price List
159
+ currency: zod_1.z.string().min(1, "Currency is required"),
160
+ conversion_rate: (0, zodContextOptionals_1.optionalForInput)(zod_1.z.number().min(0).default(1)),
161
+ selling_price_list: zod_1.z.string().min(1, "Selling Price List is required"),
162
+ price_list_currency: zod_1.z.string().optional().nullable(),
163
+ plc_conversion_rate: (0, zodContextOptionals_1.optionalForInput)(zod_1.z.number().min(0).default(1)),
164
+ ignore_pricing_rule: Boolean_1.ERPNextBoolean,
165
+ // Stock Management
166
+ update_stock: Boolean_1.ERPNextBoolean,
167
+ scan_barcode: zod_1.z.string().optional().nullable(),
168
+ set_warehouse: zod_1.z.string().optional().nullable(),
169
+ set_target_warehouse: zod_1.z.string().optional().nullable(),
170
+ // Items
171
+ items: zod_1.z.array(exports.SalesInvoiceItem).min(1, "At least one item is required"),
172
+ // Totals
173
+ total_qty: zod_1.z.number().optional().nullable(),
174
+ total_net_weight: zod_1.z.number().optional().nullable(),
175
+ base_total: zod_1.z.number().optional().nullable(),
176
+ base_net_total: zod_1.z.number().optional().nullable(),
177
+ total: zod_1.z.number().optional().nullable(),
178
+ net_total: zod_1.z.number().optional().nullable(),
179
+ // Taxes
180
+ tax_category: zod_1.z.string().optional().nullable(),
181
+ taxes_and_charges: zod_1.z.string().optional().nullable(),
182
+ shipping_rule: zod_1.z.string().optional().nullable(),
183
+ incoterm: zod_1.z.string().optional().nullable(),
184
+ named_place: zod_1.z.string().optional().nullable(),
185
+ taxes: zod_1.z.array(SalesTaxesAndCharges_1.SalesTaxesAndCharges).optional().nullable(),
186
+ base_total_taxes_and_charges: zod_1.z.number().optional().nullable(),
187
+ total_taxes_and_charges: zod_1.z.number().optional().nullable(),
188
+ other_charges_calculation: zod_1.z.string().optional().nullable(),
189
+ // Grand Total
190
+ base_grand_total: zod_1.z.number().optional().nullable(),
191
+ base_rounding_adjustment: zod_1.z.number().optional().nullable(),
192
+ base_rounded_total: zod_1.z.number().optional().nullable(),
193
+ base_in_words: zod_1.z.string().optional().nullable(),
194
+ grand_total: zod_1.z.number().optional().nullable(),
195
+ rounding_adjustment: zod_1.z.number().optional().nullable(),
196
+ rounded_total: zod_1.z.number().optional().nullable(),
197
+ in_words: zod_1.z.string().optional().nullable(),
198
+ disable_rounded_total: Boolean_1.ERPNextBoolean,
199
+ use_company_roundoff_cost_center: Boolean_1.ERPNextBoolean,
200
+ // Additional Discount
201
+ apply_discount_on: (0, zodContextOptionals_1.optionalForInput)(zod_1.z.enum(["", "Grand Total", "Net Total"]).default("Grand Total")),
202
+ base_discount_amount: zod_1.z.number().optional().nullable(),
203
+ additional_discount_percentage: zod_1.z.number().optional().nullable(),
204
+ discount_amount: zod_1.z.number().optional().nullable(),
205
+ coupon_code: zod_1.z.string().optional().nullable(),
206
+ is_cash_or_non_trade_discount: Boolean_1.ERPNextBoolean,
207
+ additional_discount_account: zod_1.z.string().optional().nullable(),
208
+ // Pricing Rules
209
+ pricing_rules: zod_1.z.array(zod_1.z.any()).optional().nullable(),
210
+ // Packing
211
+ packed_items: zod_1.z.array(zod_1.z.any()).optional().nullable(),
212
+ // Time Sheets
213
+ timesheets: zod_1.z.array(zod_1.z.any()).optional().nullable(),
214
+ total_billing_hours: zod_1.z.number().optional().nullable(),
215
+ total_billing_amount: zod_1.z.number().optional().nullable(),
216
+ // Addresses
217
+ customer_address: zod_1.z.string().optional().nullable(),
218
+ address_display: zod_1.z.string().optional().nullable(),
219
+ contact_person: zod_1.z.string().optional().nullable(),
220
+ contact_display: zod_1.z.string().optional().nullable(),
221
+ contact_mobile: zod_1.z.string().optional().nullable(),
222
+ contact_email: zod_1.z.string().optional().nullable(),
223
+ territory: zod_1.z.string().optional().nullable(),
224
+ shipping_address_name: zod_1.z.string().optional().nullable(),
225
+ shipping_address: zod_1.z.string().optional().nullable(),
226
+ dispatch_address_name: zod_1.z.string().optional().nullable(),
227
+ dispatch_address: zod_1.z.string().optional().nullable(),
228
+ company_address: zod_1.z.string().optional().nullable(),
229
+ company_address_display: zod_1.z.string().optional().nullable(),
230
+ // Customer PO Details
231
+ po_no: zod_1.z.string().optional().nullable(),
232
+ po_date: zod_1.z.string().optional().nullable(), // Date string
233
+ // Payment Terms
234
+ ignore_default_payment_terms_template: Boolean_1.ERPNextBoolean,
235
+ payment_terms_template: zod_1.z.string().optional().nullable(),
236
+ payment_schedule: zod_1.z.array(zod_1.z.any()).optional().nullable(),
237
+ // Terms and Conditions
238
+ tc_name: zod_1.z.string().optional().nullable(),
239
+ terms: zod_1.z.string().optional().nullable(),
240
+ // Payments (POS)
241
+ cash_bank_account: zod_1.z.string().optional().nullable(),
242
+ payments: zod_1.z.array(exports.SalesInvoicePayment).optional().nullable(),
243
+ base_paid_amount: zod_1.z.number().optional().nullable(),
244
+ paid_amount: zod_1.z.number().optional().nullable(),
245
+ base_change_amount: zod_1.z.number().optional().nullable(),
246
+ change_amount: zod_1.z.number().optional().nullable(),
247
+ account_for_change_amount: zod_1.z.string().optional().nullable(),
248
+ // Advances
249
+ allocate_advances_automatically: Boolean_1.ERPNextBoolean,
250
+ only_include_allocated_payments: Boolean_1.ERPNextBoolean,
251
+ advances: zod_1.z.array(exports.SalesInvoiceAdvance).optional().nullable(),
252
+ // Write Off
253
+ write_off_amount: zod_1.z.number().optional().nullable(),
254
+ base_write_off_amount: zod_1.z.number().optional().nullable(),
255
+ write_off_outstanding_amount_automatically: Boolean_1.ERPNextBoolean,
256
+ write_off_account: zod_1.z.string().optional().nullable(),
257
+ write_off_cost_center: zod_1.z.string().optional().nullable(),
258
+ // Loyalty
259
+ redeem_loyalty_points: Boolean_1.ERPNextBoolean,
260
+ loyalty_points: zod_1.z.number().optional().nullable(),
261
+ loyalty_amount: zod_1.z.number().optional().nullable(),
262
+ loyalty_program: zod_1.z.string().optional().nullable(),
263
+ dont_create_loyalty_points: Boolean_1.ERPNextBoolean,
264
+ loyalty_redemption_account: zod_1.z.string().optional().nullable(),
265
+ loyalty_redemption_cost_center: zod_1.z.string().optional().nullable(),
266
+ // Outstanding
267
+ total_advance: zod_1.z.number().optional().nullable(),
268
+ outstanding_amount: zod_1.z.number().optional().nullable(),
269
+ // Accounting
270
+ cost_center: zod_1.z.string().optional().nullable(),
271
+ project: zod_1.z.string().optional().nullable(),
272
+ debit_to: zod_1.z.string().min(1, "Debit To Account is required"),
273
+ party_account_currency: zod_1.z.string().optional().nullable(),
274
+ is_opening: (0, zodContextOptionals_1.optionalForInput)(zod_1.z.enum(["No", "Yes"]).default("No")),
275
+ unrealized_profit_loss_account: zod_1.z.string().optional().nullable(),
276
+ against_income_account: zod_1.z.string().optional().nullable(),
277
+ // Internal Customer
278
+ is_internal_customer: Boolean_1.ERPNextBoolean,
279
+ represents_company: zod_1.z.string().optional().nullable(),
280
+ // Sales Commission
281
+ sales_partner: zod_1.z.string().optional().nullable(),
282
+ amount_eligible_for_commission: zod_1.z.number().optional().nullable(),
283
+ commission_rate: zod_1.z.number().optional().nullable(),
284
+ total_commission: zod_1.z.number().optional().nullable(),
285
+ sales_team: zod_1.z.array(zod_1.z.any()).optional().nullable(),
286
+ // Printing
287
+ letter_head: zod_1.z.string().optional().nullable(),
288
+ group_same_items: Boolean_1.ERPNextBoolean,
289
+ select_print_heading: zod_1.z.string().optional().nullable(),
290
+ language: zod_1.z.string().optional().nullable(),
291
+ // Subscription
292
+ subscription: zod_1.z.string().optional().nullable(),
293
+ from_date: zod_1.z.string().optional().nullable(), // Date string
294
+ to_date: zod_1.z.string().optional().nullable(), // Date string
295
+ auto_repeat: zod_1.z.string().optional().nullable(),
296
+ update_auto_repeat_reference: zod_1.z.string().optional().nullable(),
297
+ // Status
298
+ status: (0, zodContextOptionals_1.optionalForInput)(zod_1.z
299
+ .enum([
300
+ "Draft",
301
+ "Return",
302
+ "Credit Note Issued",
303
+ "Submitted",
304
+ "Paid",
305
+ "Partly Paid",
306
+ "Unpaid",
307
+ "Unpaid and Discounted",
308
+ "Partly Paid and Discounted",
309
+ "Overdue and Discounted",
310
+ "Overdue",
311
+ "Cancelled",
312
+ "Internal Transfer",
313
+ ])
314
+ .default("Draft")),
315
+ // Additional Info
316
+ source: zod_1.z.string().optional().nullable(),
317
+ customer_group: zod_1.z.string().optional().nullable(),
318
+ is_discounted: Boolean_1.ERPNextBoolean,
319
+ remarks: zod_1.z.string().optional().nullable(),
320
+ campaign: zod_1.z.string().optional().nullable(),
321
+ inter_company_invoice_reference: zod_1.z.string().optional().nullable(),
322
+ // Other
323
+ repost_required: Boolean_1.ERPNextBoolean,
324
+ })
325
+ .describe("Sales Invoice");
326
+ exports.SalesInvoiceDraft = (0, DocTypeHelpers_1.DocModel)(exports.SalesInvoice)
327
+ .omit({
328
+ name: true,
329
+ })
330
+ .describe("Sales Invoice Draft");