@classytic/ledger-bd 0.2.2 → 0.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,60 @@
3
3
  Format based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
4
4
  adhering to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
5
5
 
6
+ ## [0.2.3]
7
+
8
+ ### Added
9
+
10
+ **Expanded `BD_ACCOUNT_CODES`** to expose 25 more codes that were
11
+ already seeded in `BD_ACCOUNT_TYPES` (since 0.1.0–0.2.2) but missing
12
+ from the typed map. Hosts that previously hand-coded these as string
13
+ literals in posting contracts can now reference them through the
14
+ canonical export. The chart itself is unchanged — only the typed
15
+ exports grew.
16
+
17
+ #### Cash & Receivables
18
+ - **`BANK_CHARGES: '6328'`** — gateway processing fees, mobile-money
19
+ merchant deductions, ad-hoc bank charges.
20
+ - **`CHARGEBACK_RECEIVABLE: '1159'`** — card-network dispute holding.
21
+
22
+ #### Liabilities
23
+ - **`COMMISSION_PAYABLE: '2122'`** — accrued sales/agent commission.
24
+ - **`REVERSE_LOGISTICS_PAYABLE: '2162'`** — return-handling accrual.
25
+ - **`CUSTOMER_ADVANCE: '2191'`** — IFRS 15 contract liability.
26
+
27
+ #### Revenue / Other Income
28
+ - **`TRANSPORT_REVENUE: '4147'`** — line-item delivery charge billed to customer.
29
+ - **`COURIER_REVENUE: '4159'`** — in-house courier service revenue.
30
+ - **`BAD_DEBT_RECOVERY: '4310'`** — recovery of previously written-off debt.
31
+
32
+ #### COGS / Landed Cost
33
+ - **`IMPORT_LANDED_COST: '5116'`** — capitalized duty + freight + insurance.
34
+ - **`CARRIAGE_INWARD: '5117'`** — domestic inbound freight (capitalized).
35
+ - **`PACKAGING_PRODUCTION: '5317'`** — production-time primary packaging.
36
+ - **`CUSTOMS_DUTY: '5505'`** — NBR import duty (when not capitalized).
37
+ - **`CF_AGENT_COMMISSION: '5507'`** — clearing/forwarding agent fee.
38
+
39
+ #### Operating Expenses
40
+ - **`POSTAGE_ADMIN: '6302'`** — admin postage (NOT customer delivery).
41
+ - **`SALES_COMMISSION: '6403'`** — internal commercial team commission.
42
+ - **`FREIGHT_OUTWARD: '6405'`** — outbound delivery cost (domestic).
43
+ - **`SHIPPING_LOGISTICS_EXPORT: '6406'`** — DHL / FedEx weight-priced export.
44
+ - **`PACKAGING_DISPATCH: '6407'`** — outbound packaging consumables.
45
+ - **`MARKETPLACE_COMMISSION: '6422'`** — Daraz / Chaldal / Pickaboo cut.
46
+ - **`COURIER_COD_COMMISSION: '6423'`** — Pathao / RedX / Steadfast COD cut.
47
+ - **`LOGISTICS_HUB_RENT: '6426'`** — sortation-hub / depot rent.
48
+ - **`COURIER_DRIVER_BONUS: '6428'`** — variable courier performance pay.
49
+ - **`BAD_DEBT_WRITTEN_OFF: '6702'`** — unrecoverable A/R / shortfall.
50
+ - **`MARKETPLACE_ADS: '6823'`** — platform-specific ad-engine fees.
51
+ - **`MARKETPLACE_COMPLIANCE_FEE: '6824'`** — recurring seller-platform fees.
52
+
53
+ Together these cover the typical 3PL / DHL-style export / marketplace-
54
+ aggregator accounting flows. The full chart still has ~120 more accounts
55
+ (industry-specific: RMG, pharma, agro-processing, telecom, etc.) — reach
56
+ for those via `BD_ACCOUNT_TYPES` directly when an industry-specific
57
+ posting needs them; bring them into `BD_ACCOUNT_CODES` when a host-
58
+ agnostic posting contract starts referencing them.
59
+
6
60
  ## [0.2.2]
7
61
 
8
62
  ### Added
package/dist/index.d.mts CHANGED
@@ -87,6 +87,13 @@ declare const BD_ACCOUNT_CODES: {
87
87
  readonly COD_CLEARING: "1127";
88
88
  readonly AR: "1141"; /** 1158 — Net amount due from marketplaces (Daraz/Chaldal/Pickaboo). */
89
89
  readonly MARKETPLACE_RECEIVABLE: "1158";
90
+ /**
91
+ * 1159 — Chargeback / Payment Dispute Receivable. Customer-initiated
92
+ * card-network disputes. Disputed amount held pending network resolution
93
+ * (typically 30-90 days). Recovered → reversed to cash; lost → written
94
+ * off via `BAD_DEBT_WRITTEN_OFF` or recovered via `BAD_DEBT_RECOVERY`.
95
+ */
96
+ readonly CHARGEBACK_RECEIVABLE: "1159";
90
97
  /**
91
98
  * 1145 — Receivable from Related Parties.
92
99
  * Used as inter-branch receivable when consolidated reporting needs
@@ -96,6 +103,13 @@ declare const BD_ACCOUNT_CODES: {
96
103
  readonly INTER_BRANCH_RECEIVABLE: "1145";
97
104
  readonly VAT_RECEIVABLE: "1150";
98
105
  readonly ADVANCE_INCOME_TAX: "1151";
106
+ /**
107
+ * 1153 — VDS Receivable. The portion of output VAT withheld by a
108
+ * designated buyer (govt entity / large corporate) and deposited to
109
+ * NBR on our behalf. Held as an asset until offset against VAT Output
110
+ * Payable at the monthly return filing.
111
+ */
112
+ readonly VDS_RECEIVABLE: "1153";
99
113
  readonly VAT_CASH_BASIS_TRANSITION: "1157";
100
114
  readonly RAW_MATERIALS: "1161";
101
115
  readonly WIP: "1162";
@@ -117,6 +131,13 @@ declare const BD_ACCOUNT_CODES: {
117
131
  */
118
132
  readonly INTER_BRANCH_PAYABLE: "2113";
119
133
  readonly ACCRUED_EXPENSES: "2114";
134
+ /**
135
+ * 2122 — Sales / Agent Commission Payable. Accrued obligation to internal
136
+ * sales reps or external agents on closed sales, awaiting payout cycle.
137
+ * Distinct from `BD_ACCOUNT_CODES.AP` (general trade payables) so payroll
138
+ * adjacent obligations report separately.
139
+ */
140
+ readonly COMMISSION_PAYABLE: "2122";
120
141
  readonly FREIGHT_PAYABLE: "2124";
121
142
  /**
122
143
  * 2125 — Goods Received / Invoice Received (GR/IR).
@@ -138,11 +159,206 @@ declare const BD_ACCOUNT_CODES: {
138
159
  readonly GIFT_CARD_LIABILITY: "2129"; /** 2130 — Customer in-store credit balance. */
139
160
  readonly STORE_CREDIT_LIABILITY: "2130"; /** 2160 — Outstanding loyalty points valued per IFRS 15. */
140
161
  readonly LOYALTY_POINT_LIABILITY: "2160";
162
+ /**
163
+ * 2162 — Reverse Logistics / Returns Processing Payable. Accrued cost
164
+ * to handle inbound returns: 3PL handling fee, reverse-courier,
165
+ * restocking, inspection. Distinct from outbound `FREIGHT_PAYABLE` —
166
+ * this is the inbound/reverse flow accrual.
167
+ */
168
+ readonly REVERSE_LOGISTICS_PAYABLE: "2162";
169
+ /**
170
+ * 2191 — Advance from Customers. Customer pre-payments before goods
171
+ * are delivered (pre-orders, milestone-billed services, deposits).
172
+ * Cleared to revenue when delivery / performance obligation completes.
173
+ * Required by IFRS 15 contract-liability presentation.
174
+ */
175
+ readonly CUSTOMER_ADVANCE: "2191";
141
176
  readonly INCOME_TAX_PAYABLE: "2131";
142
177
  readonly VAT_OUTPUT_PAYABLE: "2132";
143
178
  readonly TDS_PAYABLE: "2135";
144
- readonly SALES_REVENUE: "4111"; /** 5111 — Cost of Goods Sold — Raw Materials */
145
- readonly COGS_MATERIALS: "5111"; /** 6703 Inventory Write-down / Obsolescence (slow-moving / expired). */
179
+ /**
180
+ * 2136 VDS Payable. Amount we must remit to NBR when we withhold VDS
181
+ * from a supplier's payment. Dr here at receipt; Cr to Bank when remitted.
182
+ * Distinct from 2135 (TDS) — VDS is VAT-side withholding, TDS is income-tax-side.
183
+ */
184
+ readonly VDS_PAYABLE: "2136";
185
+ readonly SALES_REVENUE: "4111";
186
+ /**
187
+ * 4147 — Transport / Freight Revenue. When delivery is sold as a
188
+ * line-item (Tk 60 delivery charge on the invoice) instead of being
189
+ * absorbed in product price. Posted gross at sale; the actual delivery
190
+ * cost flows through `FREIGHT_OUTWARD` separately so margin per
191
+ * delivery channel stays visible.
192
+ */
193
+ readonly TRANSPORT_REVENUE: "4147";
194
+ /**
195
+ * 4159 — Courier / Delivery Service Revenue. Used when the merchant
196
+ * itself runs the courier leg (own riders, in-house fleet) and bills
197
+ * the customer for it. Distinct from `TRANSPORT_REVENUE` which is the
198
+ * generic transport-revenue line — pick whichever the deployment uses.
199
+ */
200
+ readonly COURIER_REVENUE: "4159";
201
+ /**
202
+ * 4319 — Restocking Fee Income. Customer-paid fee retained by the
203
+ * merchant on a return/exchange to cover handling costs. Distinct
204
+ * from `SALES_REVENUE` (the original goods sale already booked) and
205
+ * from `MISCELLANEOUS_INCOME` so reporting can break out RMA-specific
206
+ * monetisation. Posting: `Dr Cash/AR / Cr 4319` for the fee amount;
207
+ * the goods value flows through the normal refund + COGS-reversal
208
+ * pipeline independently.
209
+ */
210
+ readonly RESTOCKING_FEE_INCOME: "4319";
211
+ /**
212
+ * 4310 — Bad Debt Recovery. Credit booked when a previously written-off
213
+ * receivable is unexpectedly recovered (chargeback reversal, late COD
214
+ * remittance, recovered marketplace deduction). Posts: `Dr Cash/Bank /
215
+ * Cr 4310`. Counterpart of `BAD_DEBT_WRITTEN_OFF`.
216
+ */
217
+ readonly BAD_DEBT_RECOVERY: "4310";
218
+ /**
219
+ * 4317 — Write-back of Provisions / Inventory Gain. Credit booked when a
220
+ * previously expensed loss is reversed because the value is recovered:
221
+ * physical-count overage (stock found that wasn't on the books), reversal
222
+ * of an over-stated obsolescence/shrinkage provision, or post-write-off
223
+ * recovery of inventory. Posts: `Dr Inventory / Cr 4317`. Distinct from
224
+ * `SHRINKAGE` (6711) which is the loss side — gains MUST NOT be credited
225
+ * to the loss expense because that creates a misleading credit balance
226
+ * on a Loss account and inflates profit.
227
+ */
228
+ readonly INVENTORY_GAIN: "4317"; /** 5111 — Cost of Goods Sold — Raw Materials */
229
+ readonly COGS_MATERIALS: "5111";
230
+ /**
231
+ * 5116 — Import Cost (duty + freight + insurance). Capitalized to
232
+ * inventory at landed cost. Use this when a CIF/FOB import flow needs
233
+ * to roll duty + freight + insurance into the goods cost basis per
234
+ * IAS 2. For inland inbound freight on domestic purchases use
235
+ * `CARRIAGE_INWARD`.
236
+ */
237
+ readonly IMPORT_LANDED_COST: "5116";
238
+ /**
239
+ * 5117 — Carriage Inward / Freight-In. Inbound freight on domestic
240
+ * stock receipts. Capitalized to inventory at receipt time so the cost
241
+ * basis matches IAS 2. Distinct from `FREIGHT_OUTWARD` (sales-side).
242
+ */
243
+ readonly CARRIAGE_INWARD: "5117";
244
+ /**
245
+ * 5317 — Packaging Cost (manufacturing). Cost of primary packaging
246
+ * applied during production (bottles, blister packs, retail boxes).
247
+ * For dispatch-side packaging (cartons, pallet wrap, courier mailers)
248
+ * use `PACKAGING_DISPATCH`.
249
+ */
250
+ readonly PACKAGING_PRODUCTION: "5317";
251
+ /**
252
+ * 5505 — Customs Duty on Imports. NBR import duty paid at clearance.
253
+ * Either capitalized into landed cost via `IMPORT_LANDED_COST` or
254
+ * expensed here when the host doesn't capitalize (small-value imports,
255
+ * non-resale imports).
256
+ */
257
+ readonly CUSTOMS_DUTY: "5505";
258
+ /**
259
+ * 5507 — C&F Agent Commission. Clearing & forwarding agent fee on
260
+ * imports. Typically capitalized into landed cost. Listed separately
261
+ * from `COURIER_COD_COMMISSION` because the cost driver (volume of
262
+ * shipments × cargo weight) and tax treatment (input-VAT eligibility)
263
+ * differ from last-mile courier commission.
264
+ */
265
+ readonly CF_AGENT_COMMISSION: "5507";
266
+ /**
267
+ * 6302 — Postage & Courier (admin). Admin-side postage for documents,
268
+ * sample dispatches, internal mail. NOT for outbound delivery to
269
+ * customers — that's `FREIGHT_OUTWARD` (operating expense, not admin).
270
+ */
271
+ readonly POSTAGE_ADMIN: "6302";
272
+ /**
273
+ * 6403 — Sales Commission / Incentive. Commercial team's commission
274
+ * on closed sales (internal payroll-adjacent expense). Distinct from
275
+ * `MARKETPLACE_COMMISSION` (platform cut) and `COURIER_COD_COMMISSION`
276
+ * (logistics-side fee).
277
+ */
278
+ readonly SALES_COMMISSION: "6403";
279
+ /**
280
+ * 6405 — Freight Outward / Delivery (domestic). Default outbound
281
+ * delivery cost for the local market — own fleet fuel, last-mile
282
+ * courier paid as flat-rate-per-parcel, etc. Use `SHIPPING_LOGISTICS_EXPORT`
283
+ * for cross-border / DHL-style weight-based shipping.
284
+ */
285
+ readonly FREIGHT_OUTWARD: "6405";
286
+ /**
287
+ * 6406 — Shipping & Logistics (export). Cross-border outbound shipping
288
+ * cost — DHL / FedEx / Aramex weight-priced commercial dispatches,
289
+ * customs clearance fees on outbound, export-side insurance. Reported
290
+ * separately from `FREIGHT_OUTWARD` because export logistics has
291
+ * different VAT treatment (zero-rated) and cost drivers (chargeable
292
+ * weight, customs).
293
+ */
294
+ readonly SHIPPING_LOGISTICS_EXPORT: "6406";
295
+ /**
296
+ * 6407 — Packaging for Dispatch. Outbound packaging consumables —
297
+ * cartons, pallet wrap, courier mailers, bubble wrap, fragile labels.
298
+ * Distinct from `PACKAGING_PRODUCTION` (production-time primary
299
+ * packaging that gets capitalized into COGS).
300
+ */
301
+ readonly PACKAGING_DISPATCH: "6407";
302
+ /**
303
+ * 6422 — Marketplace Commission. Platform cut deducted by Daraz /
304
+ * Chaldal / Pickaboo / Rokomari at payout time on goods sold via
305
+ * their channel. Reported separately from `BANK_CHARGES` because
306
+ * platform commission is sales-channel COGS-adjacent, not banking.
307
+ */
308
+ readonly MARKETPLACE_COMMISSION: "6422";
309
+ /**
310
+ * 6426 — Hub / Depot Rent (logistics). Rent for sortation hubs and
311
+ * last-mile depots (Dhaka North/South, Chittagong, etc.). Distinct
312
+ * from office rent and showroom rent — courier hubs often have
313
+ * variable lease terms based on parcel volume.
314
+ */
315
+ readonly LOGISTICS_HUB_RENT: "6426";
316
+ /**
317
+ * 6428 — Driver Bonus / Per-Trip Commission. Variable performance
318
+ * incentives for couriers — on-time, zero-damage, multi-tier delivery
319
+ * counts. Accrued weekly, settled monthly. Distinct from
320
+ * `SALES_COMMISSION` (commercial team) and `COURIER_COD_COMMISSION`
321
+ * (external partner cut).
322
+ */
323
+ readonly COURIER_DRIVER_BONUS: "6428";
324
+ /**
325
+ * 6823 — Marketplace Advertising Spend. Daraz Ads, Chaldal Sponsored
326
+ * Listings, Pickaboo Promotions — platform-specific ad-engine fees.
327
+ * Distinct from generic digital marketing and from
328
+ * `MARKETPLACE_COMMISSION` (sales commission).
329
+ */
330
+ readonly MARKETPLACE_ADS: "6823";
331
+ /**
332
+ * 6824 — Marketplace Compliance / Category Fee. Recurring seller-
333
+ * compliance and category-listing fees on marketplaces (Premium Seller
334
+ * Badge, Category Compliance, Return Guarantee Fund). Distinct from
335
+ * `MARKETPLACE_COMMISSION` (per-sale cut) and from association fees.
336
+ */
337
+ readonly MARKETPLACE_COMPLIANCE_FEE: "6824";
338
+ /**
339
+ * 6328 — Bank Charges & Commission. Default fee account for bank
340
+ * charges, payment-gateway processing fees (Stripe / SSLCommerz /
341
+ * ShurjoPay), mobile-money merchant deductions, and L/C-adjacent
342
+ * banking fees that don't warrant their own line. Use 6329 for
343
+ * L/C-specific commission, 6330 for guarantee commission.
344
+ */
345
+ readonly BANK_CHARGES: "6328";
346
+ /**
347
+ * 6423 — Courier COD Commission. Commission deducted by courier
348
+ * partners (Pathao / RedX / Steadfast / paperfly) on COD remittance.
349
+ * Distinct from `BANK_CHARGES` so BD operating-expense reports break
350
+ * out logistics-side fees from banking fees — the two scale with
351
+ * different drivers (volume of deliveries vs. payment volume).
352
+ */
353
+ readonly COURIER_COD_COMMISSION: "6423";
354
+ /**
355
+ * 6702 — Bad Debt Written Off. Unrecoverable A/R or clearing-account
356
+ * shortfall: COD partial collection, refused-on-delivery short-pay,
357
+ * marketplace deduction the courier won't reimburse. Posting a write-
358
+ * off here keeps the original revenue gross and surfaces the loss
359
+ * line in P&L instead of silently netting receivables.
360
+ */
361
+ readonly BAD_DEBT_WRITTEN_OFF: "6702"; /** 6703 — Inventory Write-down / Obsolescence (slow-moving / expired). */
146
362
  readonly OBSOLESCENCE: "6703"; /** 6711 — Inventory Shrinkage / Theft / Loss (audit shortfall). */
147
363
  readonly SHRINKAGE: "6711";
148
364
  };
package/dist/index.mjs CHANGED
@@ -3837,6 +3837,15 @@ const OTHER_INCOME = [
3837
3837
  parentCode: "Other Income",
3838
3838
  isTotal: false,
3839
3839
  cashFlowCategory: "Operating"
3840
+ },
3841
+ {
3842
+ code: "4319",
3843
+ name: "Restocking Fee Income",
3844
+ category: I$1,
3845
+ description: "Customer-paid fees retained on returns and exchanges to cover handling. Booked at RMA-confirm time; tracked separately from goods revenue (4111) for RMA economics reporting.",
3846
+ parentCode: "Other Income",
3847
+ isTotal: false,
3848
+ cashFlowCategory: "Operating"
3840
3849
  }
3841
3850
  ];
3842
3851
  const REVENUE = [
@@ -5588,7 +5597,8 @@ const DEPRECIATION = [
5588
5597
  description: "Depreciation on office buildings (NBR rate: 10%)",
5589
5598
  parentCode: "Operating Expenses",
5590
5599
  isTotal: false,
5591
- cashFlowCategory: "Operating"
5600
+ cashFlowCategory: "Operating",
5601
+ nonCashAdjustmentTag: "depreciation"
5592
5602
  },
5593
5603
  {
5594
5604
  code: "6602",
@@ -5597,7 +5607,8 @@ const DEPRECIATION = [
5597
5607
  description: "Depreciation on factory buildings (NBR rate: 20%)",
5598
5608
  parentCode: "Operating Expenses",
5599
5609
  isTotal: false,
5600
- cashFlowCategory: "Operating"
5610
+ cashFlowCategory: "Operating",
5611
+ nonCashAdjustmentTag: "depreciation"
5601
5612
  },
5602
5613
  {
5603
5614
  code: "6603",
@@ -5606,7 +5617,8 @@ const DEPRECIATION = [
5606
5617
  description: "Depreciation on plant and machinery (NBR rate: 20%)",
5607
5618
  parentCode: "Operating Expenses",
5608
5619
  isTotal: false,
5609
- cashFlowCategory: "Operating"
5620
+ cashFlowCategory: "Operating",
5621
+ nonCashAdjustmentTag: "depreciation"
5610
5622
  },
5611
5623
  {
5612
5624
  code: "6604",
@@ -5615,7 +5627,8 @@ const DEPRECIATION = [
5615
5627
  description: "Depreciation on furniture and fixtures (NBR rate: 10%)",
5616
5628
  parentCode: "Operating Expenses",
5617
5629
  isTotal: false,
5618
- cashFlowCategory: "Operating"
5630
+ cashFlowCategory: "Operating",
5631
+ nonCashAdjustmentTag: "depreciation"
5619
5632
  },
5620
5633
  {
5621
5634
  code: "6605",
@@ -5624,7 +5637,8 @@ const DEPRECIATION = [
5624
5637
  description: "Depreciation on motor vehicles (NBR rate: 20%)",
5625
5638
  parentCode: "Operating Expenses",
5626
5639
  isTotal: false,
5627
- cashFlowCategory: "Operating"
5640
+ cashFlowCategory: "Operating",
5641
+ nonCashAdjustmentTag: "depreciation"
5628
5642
  },
5629
5643
  {
5630
5644
  code: "6606",
@@ -5633,7 +5647,8 @@ const DEPRECIATION = [
5633
5647
  description: "Depreciation on office equipment (NBR rate: 20%)",
5634
5648
  parentCode: "Operating Expenses",
5635
5649
  isTotal: false,
5636
- cashFlowCategory: "Operating"
5650
+ cashFlowCategory: "Operating",
5651
+ nonCashAdjustmentTag: "depreciation"
5637
5652
  },
5638
5653
  {
5639
5654
  code: "6607",
@@ -5642,7 +5657,8 @@ const DEPRECIATION = [
5642
5657
  description: "Depreciation on computer and IT equipment (NBR rate: 30%)",
5643
5658
  parentCode: "Operating Expenses",
5644
5659
  isTotal: false,
5645
- cashFlowCategory: "Operating"
5660
+ cashFlowCategory: "Operating",
5661
+ nonCashAdjustmentTag: "depreciation"
5646
5662
  },
5647
5663
  {
5648
5664
  code: "6608",
@@ -5651,7 +5667,8 @@ const DEPRECIATION = [
5651
5667
  description: "Depreciation on medical equipment (NBR rate: 20%)",
5652
5668
  parentCode: "Operating Expenses",
5653
5669
  isTotal: false,
5654
- cashFlowCategory: "Operating"
5670
+ cashFlowCategory: "Operating",
5671
+ nonCashAdjustmentTag: "depreciation"
5655
5672
  },
5656
5673
  {
5657
5674
  code: "6609",
@@ -5660,7 +5677,8 @@ const DEPRECIATION = [
5660
5677
  description: "Depreciation on other property, plant and equipment",
5661
5678
  parentCode: "Operating Expenses",
5662
5679
  isTotal: false,
5663
- cashFlowCategory: "Operating"
5680
+ cashFlowCategory: "Operating",
5681
+ nonCashAdjustmentTag: "depreciation"
5664
5682
  },
5665
5683
  {
5666
5684
  code: "6610",
@@ -5669,7 +5687,8 @@ const DEPRECIATION = [
5669
5687
  description: "Depreciation on right-of-use assets (IFRS 16)",
5670
5688
  parentCode: "Operating Expenses",
5671
5689
  isTotal: false,
5672
- cashFlowCategory: "Operating"
5690
+ cashFlowCategory: "Operating",
5691
+ nonCashAdjustmentTag: "depreciation"
5673
5692
  },
5674
5693
  {
5675
5694
  code: "6611",
@@ -5678,7 +5697,8 @@ const DEPRECIATION = [
5678
5697
  description: "Depreciation on investment property (NBR rate: 10%)",
5679
5698
  parentCode: "Operating Expenses",
5680
5699
  isTotal: false,
5681
- cashFlowCategory: "Operating"
5700
+ cashFlowCategory: "Operating",
5701
+ nonCashAdjustmentTag: "depreciation"
5682
5702
  },
5683
5703
  {
5684
5704
  code: "6612",
@@ -5687,7 +5707,8 @@ const DEPRECIATION = [
5687
5707
  description: "Amortization of software (NBR rate: 30%)",
5688
5708
  parentCode: "Operating Expenses",
5689
5709
  isTotal: false,
5690
- cashFlowCategory: "Operating"
5710
+ cashFlowCategory: "Operating",
5711
+ nonCashAdjustmentTag: "amortization"
5691
5712
  },
5692
5713
  {
5693
5714
  code: "6613",
@@ -5696,7 +5717,8 @@ const DEPRECIATION = [
5696
5717
  description: "Amortization of other intangible assets",
5697
5718
  parentCode: "Operating Expenses",
5698
5719
  isTotal: false,
5699
- cashFlowCategory: "Operating"
5720
+ cashFlowCategory: "Operating",
5721
+ nonCashAdjustmentTag: "amortization"
5700
5722
  }
5701
5723
  ];
5702
5724
  const PROVISIONS = [
@@ -5752,7 +5774,8 @@ const PROVISIONS = [
5752
5774
  description: "Impairment loss on property, plant and equipment",
5753
5775
  parentCode: "Operating Expenses",
5754
5776
  isTotal: false,
5755
- cashFlowCategory: "Operating"
5777
+ cashFlowCategory: "Operating",
5778
+ nonCashAdjustmentTag: "impairment"
5756
5779
  },
5757
5780
  {
5758
5781
  code: "6707",
@@ -5761,7 +5784,8 @@ const PROVISIONS = [
5761
5784
  description: "Impairment loss on intangible assets",
5762
5785
  parentCode: "Operating Expenses",
5763
5786
  isTotal: false,
5764
- cashFlowCategory: "Operating"
5787
+ cashFlowCategory: "Operating",
5788
+ nonCashAdjustmentTag: "impairment"
5765
5789
  },
5766
5790
  {
5767
5791
  code: "6708",
@@ -5770,7 +5794,8 @@ const PROVISIONS = [
5770
5794
  description: "Impairment loss on goodwill",
5771
5795
  parentCode: "Operating Expenses",
5772
5796
  isTotal: false,
5773
- cashFlowCategory: "Operating"
5797
+ cashFlowCategory: "Operating",
5798
+ nonCashAdjustmentTag: "impairment"
5774
5799
  },
5775
5800
  {
5776
5801
  code: "6709",
@@ -6255,9 +6280,11 @@ const BD_ACCOUNT_CODES = {
6255
6280
  COD_CLEARING: "1127",
6256
6281
  AR: "1141",
6257
6282
  MARKETPLACE_RECEIVABLE: "1158",
6283
+ CHARGEBACK_RECEIVABLE: "1159",
6258
6284
  INTER_BRANCH_RECEIVABLE: "1145",
6259
6285
  VAT_RECEIVABLE: "1150",
6260
6286
  ADVANCE_INCOME_TAX: "1151",
6287
+ VDS_RECEIVABLE: "1153",
6261
6288
  VAT_CASH_BASIS_TRANSITION: "1157",
6262
6289
  RAW_MATERIALS: "1161",
6263
6290
  WIP: "1162",
@@ -6269,6 +6296,7 @@ const BD_ACCOUNT_CODES = {
6269
6296
  BILLS_PAYABLE: "2112",
6270
6297
  INTER_BRANCH_PAYABLE: "2113",
6271
6298
  ACCRUED_EXPENSES: "2114",
6299
+ COMMISSION_PAYABLE: "2122",
6272
6300
  FREIGHT_PAYABLE: "2124",
6273
6301
  GR_IR_CLEARING: "2125",
6274
6302
  TRANSFER_COST_CLEARING: "2126",
@@ -6277,11 +6305,37 @@ const BD_ACCOUNT_CODES = {
6277
6305
  GIFT_CARD_LIABILITY: "2129",
6278
6306
  STORE_CREDIT_LIABILITY: "2130",
6279
6307
  LOYALTY_POINT_LIABILITY: "2160",
6308
+ REVERSE_LOGISTICS_PAYABLE: "2162",
6309
+ CUSTOMER_ADVANCE: "2191",
6280
6310
  INCOME_TAX_PAYABLE: "2131",
6281
6311
  VAT_OUTPUT_PAYABLE: "2132",
6282
6312
  TDS_PAYABLE: "2135",
6313
+ VDS_PAYABLE: "2136",
6283
6314
  SALES_REVENUE: "4111",
6315
+ TRANSPORT_REVENUE: "4147",
6316
+ COURIER_REVENUE: "4159",
6317
+ RESTOCKING_FEE_INCOME: "4319",
6318
+ BAD_DEBT_RECOVERY: "4310",
6319
+ INVENTORY_GAIN: "4317",
6284
6320
  COGS_MATERIALS: "5111",
6321
+ IMPORT_LANDED_COST: "5116",
6322
+ CARRIAGE_INWARD: "5117",
6323
+ PACKAGING_PRODUCTION: "5317",
6324
+ CUSTOMS_DUTY: "5505",
6325
+ CF_AGENT_COMMISSION: "5507",
6326
+ POSTAGE_ADMIN: "6302",
6327
+ SALES_COMMISSION: "6403",
6328
+ FREIGHT_OUTWARD: "6405",
6329
+ SHIPPING_LOGISTICS_EXPORT: "6406",
6330
+ PACKAGING_DISPATCH: "6407",
6331
+ MARKETPLACE_COMMISSION: "6422",
6332
+ LOGISTICS_HUB_RENT: "6426",
6333
+ COURIER_DRIVER_BONUS: "6428",
6334
+ MARKETPLACE_ADS: "6823",
6335
+ MARKETPLACE_COMPLIANCE_FEE: "6824",
6336
+ BANK_CHARGES: "6328",
6337
+ COURIER_COD_COMMISSION: "6423",
6338
+ BAD_DEBT_WRITTEN_OFF: "6702",
6285
6339
  OBSOLESCENCE: "6703",
6286
6340
  SHRINKAGE: "6711"
6287
6341
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@classytic/ledger-bd",
3
- "version": "0.2.2",
3
+ "version": "0.2.3",
4
4
  "description": "Bangladesh country pack for @classytic/ledger — BFRS chart of accounts, NBR VAT/TDS tax codes, Mushak 9.1 return",
5
5
  "type": "module",
6
6
  "sideEffects": false,
@@ -46,7 +46,7 @@
46
46
  "author": "Classytic <classytic.dev@gmail.com> (https://github.com/classytic)",
47
47
  "license": "MIT",
48
48
  "peerDependencies": {
49
- "@classytic/ledger": ">=0.7.0"
49
+ "@classytic/ledger": "^0.11.0"
50
50
  },
51
51
  "engines": {
52
52
  "node": ">=22"
@@ -64,7 +64,7 @@
64
64
  },
65
65
  "devDependencies": {
66
66
  "@classytic/dev-tools": "^0.2.0",
67
- "@classytic/ledger": "^0.7.0",
67
+ "@classytic/ledger": "0.11.0",
68
68
  "@types/node": "^22.0.0",
69
69
  "mongodb-memory-server": "^11.0.1",
70
70
  "mongoose": "^9.3.3",