django-ledger 0.8.2.1__py3-none-any.whl → 0.8.2.2__py3-none-any.whl

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.

Potentially problematic release.


This version of django-ledger might be problematic. Click here for more details.

django_ledger/io/roles.py CHANGED
@@ -53,6 +53,7 @@ ASSET_ADJUSTMENTS = 'asset_adjustment'
53
53
 
54
54
  # Current Liabilities
55
55
  LIABILITY_CL_ACC_PAYABLE = 'lia_cl_acc_payable'
56
+ LIABILITY_CL_CREDIT_LINE = 'lia_cl_credit_line'
56
57
  LIABILITY_CL_WAGES_PAYABLE = 'lia_cl_wages_payable'
57
58
  LIABILITY_CL_TAXES_PAYABLE = 'lia_cl_taxes_payable'
58
59
  LIABILITY_CL_INTEREST_PAYABLE = 'lia_cl_int_payable'
@@ -100,59 +101,16 @@ ROOT_INCOME = 'root_income'
100
101
  ROOT_COGS = 'root_cogs'
101
102
  ROOT_EXPENSES = 'root_expenses'
102
103
 
103
- ROOT_GROUP = [
104
- ROOT_COA,
105
- ROOT_ASSETS,
106
- ROOT_LIABILITIES,
107
- ROOT_CAPITAL,
108
- ROOT_INCOME,
109
- ROOT_COGS,
110
- ROOT_EXPENSES
111
- ]
112
- ROOT_GROUP_LEVEL_2 = [
113
- ROOT_ASSETS,
114
- ROOT_LIABILITIES,
115
- ROOT_CAPITAL,
116
- ROOT_INCOME,
117
- ROOT_COGS,
118
- ROOT_EXPENSES
119
- ]
104
+ ROOT_GROUP = [ROOT_COA, ROOT_ASSETS, ROOT_LIABILITIES, ROOT_CAPITAL, ROOT_INCOME, ROOT_COGS, ROOT_EXPENSES]
105
+ ROOT_GROUP_LEVEL_2 = [ROOT_ASSETS, ROOT_LIABILITIES, ROOT_CAPITAL, ROOT_INCOME, ROOT_COGS, ROOT_EXPENSES]
120
106
  ROOT_GROUP_META = {
121
- ROOT_COA: {
122
- 'code': '00000000',
123
- 'title': 'CoA Root Node',
124
- 'balance_type': DEBIT
125
- },
126
- ROOT_ASSETS: {
127
- 'code': '01000000',
128
- 'title': 'Asset Accounts Root Node',
129
- 'balance_type': DEBIT
130
- },
131
- ROOT_LIABILITIES: {
132
- 'code': '02000000',
133
- 'title': 'Liability Accounts Root Node',
134
- 'balance_type': CREDIT
135
- },
136
- ROOT_CAPITAL: {
137
- 'code': '03000000',
138
- 'title': 'Capital Accounts Root Node',
139
- 'balance_type': CREDIT
140
- },
141
- ROOT_INCOME: {
142
- 'code': '04000000',
143
- 'title': 'Income Accounts Root Node',
144
- 'balance_type': CREDIT
145
- },
146
- ROOT_COGS: {
147
- 'code': '05000000',
148
- 'title': 'COGS Accounts Root Node',
149
- 'balance_type': DEBIT
150
- },
151
- ROOT_EXPENSES: {
152
- 'code': '06000000',
153
- 'title': 'Expense Accounts Root Node',
154
- 'balance_type': DEBIT
155
- },
107
+ ROOT_COA: {'code': '00000000', 'title': 'CoA Root Node', 'balance_type': DEBIT},
108
+ ROOT_ASSETS: {'code': '01000000', 'title': 'Asset Accounts Root Node', 'balance_type': DEBIT},
109
+ ROOT_LIABILITIES: {'code': '02000000', 'title': 'Liability Accounts Root Node', 'balance_type': CREDIT},
110
+ ROOT_CAPITAL: {'code': '03000000', 'title': 'Capital Accounts Root Node', 'balance_type': CREDIT},
111
+ ROOT_INCOME: {'code': '04000000', 'title': 'Income Accounts Root Node', 'balance_type': CREDIT},
112
+ ROOT_COGS: {'code': '05000000', 'title': 'COGS Accounts Root Node', 'balance_type': DEBIT},
113
+ ROOT_EXPENSES: {'code': '06000000', 'title': 'Expense Accounts Root Node', 'balance_type': DEBIT},
156
114
  }
157
115
  # ------> ROLE GROUPS <-------#
158
116
 
@@ -160,10 +118,7 @@ GROUP_ASSETS = list()
160
118
  GROUP_ASSETS.append(ROOT_ASSETS)
161
119
 
162
120
  # ASSET GROUPS...
163
- GROUP_QUICK_ASSETS = [
164
- ASSET_CA_CASH,
165
- ASSET_CA_MKT_SECURITIES
166
- ]
121
+ GROUP_QUICK_ASSETS = [ASSET_CA_CASH, ASSET_CA_MKT_SECURITIES]
167
122
  GROUP_ASSETS += GROUP_QUICK_ASSETS
168
123
 
169
124
  GROUP_CURRENT_ASSETS = [
@@ -173,7 +128,7 @@ GROUP_CURRENT_ASSETS = [
173
128
  ASSET_CA_RECEIVABLES,
174
129
  ASSET_CA_PREPAID,
175
130
  ASSET_CA_UNCOLLECTIBLES,
176
- ASSET_CA_OTHER
131
+ ASSET_CA_OTHER,
177
132
  ]
178
133
  GROUP_ASSETS += GROUP_CURRENT_ASSETS
179
134
 
@@ -189,7 +144,7 @@ GROUP_NON_CURRENT_ASSETS = [
189
144
  ASSET_PPE_PLANT_ACCUM_DEPRECIATION,
190
145
  ASSET_INTANGIBLE_ASSETS,
191
146
  ASSET_INTANGIBLE_ASSETS_ACCUM_AMORTIZATION,
192
- ASSET_ADJUSTMENTS
147
+ ASSET_ADJUSTMENTS,
193
148
  ]
194
149
 
195
150
  GROUP_ASSETS += GROUP_NON_CURRENT_ASSETS
@@ -201,13 +156,14 @@ GROUP_LIABILITIES.append(ROOT_LIABILITIES)
201
156
 
202
157
  GROUP_CURRENT_LIABILITIES = [
203
158
  LIABILITY_CL_ACC_PAYABLE,
159
+ LIABILITY_CL_CREDIT_LINE,
204
160
  LIABILITY_CL_DEFERRED_REVENUE,
205
161
  LIABILITY_CL_INTEREST_PAYABLE,
206
162
  LIABILITY_CL_LTD_MATURITIES,
207
163
  LIABILITY_CL_OTHER,
208
164
  LIABILITY_CL_ST_NOTES_PAYABLE,
209
165
  LIABILITY_CL_WAGES_PAYABLE,
210
- LIABILITY_CL_TAXES_PAYABLE
166
+ LIABILITY_CL_TAXES_PAYABLE,
211
167
  ]
212
168
  GROUP_LIABILITIES += GROUP_CURRENT_LIABILITIES
213
169
 
@@ -228,7 +184,7 @@ GROUP_CAPITAL = [
228
184
  EQUITY_COMMON_STOCK,
229
185
  EQUITY_PREFERRED_STOCK,
230
186
  EQUITY_DIVIDENDS,
231
- EQUITY_ADJUSTMENT
187
+ EQUITY_ADJUSTMENT,
232
188
  ]
233
189
 
234
190
  GROUP_INCOME = [
@@ -237,14 +193,23 @@ GROUP_INCOME = [
237
193
  INCOME_PASSIVE,
238
194
  INCOME_INTEREST,
239
195
  INCOME_CAPITAL_GAIN_LOSS,
240
- INCOME_OTHER
196
+ INCOME_OTHER,
241
197
  ]
242
198
 
243
- GROUP_COGS = [
244
- ROOT_COGS,
245
- COGS
199
+ GROUP_TRANSFERS = [
200
+ ASSET_CA_CASH,
246
201
  ]
247
202
 
203
+ GROUP_DEBT_PAYMENT = [
204
+ LIABILITY_CL_CREDIT_LINE,
205
+ LIABILITY_LTL_NOTES_PAYABLE,
206
+ LIABILITY_LTL_MORTGAGE_PAYABLE,
207
+ EXPENSE_INTEREST_ST,
208
+ EXPENSE_INTEREST_LT
209
+ ]
210
+
211
+ GROUP_COGS = [ROOT_COGS, COGS]
212
+
248
213
  GROUP_EXPENSES = [
249
214
  ROOT_EXPENSES,
250
215
  EXPENSE_OPERATIONAL,
@@ -254,38 +219,22 @@ GROUP_EXPENSES = [
254
219
  EXPENSE_CAPITAL,
255
220
  EXPENSE_DEPRECIATION,
256
221
  EXPENSE_AMORTIZATION,
257
- EXPENSE_OTHER
222
+ EXPENSE_OTHER,
258
223
  ]
259
224
 
260
- GROUP_NET_PROFIT = [
261
- INCOME_OPERATIONAL,
262
- INCOME_PASSIVE,
263
- INCOME_INTEREST,
264
- INCOME_CAPITAL_GAIN_LOSS,
265
- INCOME_OTHER,
266
- COGS
267
- ]
225
+ GROUP_NET_PROFIT = [INCOME_OPERATIONAL, INCOME_PASSIVE, INCOME_INTEREST, INCOME_CAPITAL_GAIN_LOSS, INCOME_OTHER, COGS]
268
226
 
269
- GROUP_GROSS_PROFIT = [
270
- INCOME_OPERATIONAL,
271
- COGS
272
- ]
227
+ GROUP_GROSS_PROFIT = [INCOME_OPERATIONAL, COGS]
273
228
 
274
- GROUP_NET_SALES = [
275
- INCOME_OPERATIONAL,
276
- INCOME_PASSIVE
277
- ]
229
+ GROUP_NET_SALES = [INCOME_OPERATIONAL, INCOME_PASSIVE]
278
230
 
279
231
  GROUP_PPE_ACCUM_DEPRECIATION = [
280
232
  ASSET_PPE_BUILDINGS_ACCUM_DEPRECIATION,
281
233
  ASSET_PPE_EQUIPMENT_ACCUM_DEPRECIATION,
282
- ASSET_PPE_PLANT_ACCUM_DEPRECIATION
234
+ ASSET_PPE_PLANT_ACCUM_DEPRECIATION,
283
235
  ]
284
236
 
285
- GROUP_EXPENSE_DEP_AND_AMT = [
286
- EXPENSE_DEPRECIATION,
287
- EXPENSE_AMORTIZATION
288
- ]
237
+ GROUP_EXPENSE_DEP_AND_AMT = [EXPENSE_DEPRECIATION, EXPENSE_AMORTIZATION]
289
238
 
290
239
  GROUP_EARNINGS = GROUP_INCOME + GROUP_COGS + GROUP_EXPENSES
291
240
  GROUP_EQUITY = GROUP_CAPITAL + GROUP_EARNINGS
@@ -302,12 +251,7 @@ GROUP_IC_OPERATING_COGS = [COGS]
302
251
  GROUP_IC_OPERATING_EXPENSES = [EXPENSE_OPERATIONAL]
303
252
 
304
253
  # ---> OTHER REV/EXP (unusual OR infrequent) <---- #
305
- GROUP_IC_OTHER_REVENUES = [
306
- INCOME_PASSIVE,
307
- INCOME_INTEREST,
308
- INCOME_CAPITAL_GAIN_LOSS,
309
- INCOME_OTHER
310
- ]
254
+ GROUP_IC_OTHER_REVENUES = [INCOME_PASSIVE, INCOME_INTEREST, INCOME_CAPITAL_GAIN_LOSS, INCOME_OTHER]
311
255
  GROUP_IC_OTHER_EXPENSES = [
312
256
  EXPENSE_INTEREST_ST,
313
257
  EXPENSE_INTEREST_LT,
@@ -315,7 +259,7 @@ GROUP_IC_OTHER_EXPENSES = [
315
259
  EXPENSE_CAPITAL,
316
260
  EXPENSE_DEPRECIATION,
317
261
  EXPENSE_AMORTIZATION,
318
- EXPENSE_OTHER
262
+ EXPENSE_OTHER,
319
263
  ]
320
264
 
321
265
  # ############# CASH FLOW STATEMENT GROUPS ############
@@ -323,29 +267,14 @@ GROUP_CFS_NET_INCOME = GROUP_EARNINGS
323
267
 
324
268
  # ---> OPERATING ACTIVITIES (INDIRECT) <---- #
325
269
  # Non-Cash/Non-Current...
326
- GROUP_CFS_OP_DEPRECIATION_AMORTIZATION = [
327
- EXPENSE_DEPRECIATION,
328
- EXPENSE_AMORTIZATION
329
- ]
330
- GROUP_CFS_OP_INVESTMENT_GAINS = [
331
- INCOME_CAPITAL_GAIN_LOSS
332
- ]
270
+ GROUP_CFS_OP_DEPRECIATION_AMORTIZATION = [EXPENSE_DEPRECIATION, EXPENSE_AMORTIZATION]
271
+ GROUP_CFS_OP_INVESTMENT_GAINS = [INCOME_CAPITAL_GAIN_LOSS]
333
272
 
334
273
  # Non-Cash/Current...
335
- GROUP_CFS_OP_ACCOUNTS_RECEIVABLE = [
336
- ASSET_CA_RECEIVABLES
337
- ]
338
- GROUP_CFS_OP_INVENTORY = [
339
- ASSET_CA_INVENTORY
340
- ]
341
- GROUP_CFS_OP_ACCOUNTS_PAYABLE = [
342
- LIABILITY_CL_ACC_PAYABLE
343
- ]
344
- GROUP_CFS_OP_OTHER_CURRENT_ASSETS_ADJUSTMENT = [
345
- ASSET_CA_PREPAID,
346
- ASSET_CA_UNCOLLECTIBLES,
347
- ASSET_CA_OTHER
348
- ]
274
+ GROUP_CFS_OP_ACCOUNTS_RECEIVABLE = [ASSET_CA_RECEIVABLES]
275
+ GROUP_CFS_OP_INVENTORY = [ASSET_CA_INVENTORY]
276
+ GROUP_CFS_OP_ACCOUNTS_PAYABLE = [LIABILITY_CL_ACC_PAYABLE, LIABILITY_CL_CREDIT_LINE]
277
+ GROUP_CFS_OP_OTHER_CURRENT_ASSETS_ADJUSTMENT = [ASSET_CA_PREPAID, ASSET_CA_UNCOLLECTIBLES, ASSET_CA_OTHER]
349
278
  GROUP_CFS_OP_OTHER_CURRENT_LIABILITIES_ADJUSTMENT = [
350
279
  LIABILITY_CL_WAGES_PAYABLE,
351
280
  LIABILITY_CL_INTEREST_PAYABLE,
@@ -355,16 +284,20 @@ GROUP_CFS_OP_OTHER_CURRENT_LIABILITIES_ADJUSTMENT = [
355
284
  LIABILITY_CL_OTHER,
356
285
  ]
357
286
 
358
- GROUP_CFS_OPERATING = list(chain.from_iterable([
359
- GROUP_CFS_NET_INCOME,
360
- GROUP_CFS_OP_DEPRECIATION_AMORTIZATION,
361
- GROUP_CFS_OP_INVESTMENT_GAINS,
362
- GROUP_CFS_OP_ACCOUNTS_RECEIVABLE,
363
- GROUP_CFS_OP_INVENTORY,
364
- GROUP_CFS_OP_ACCOUNTS_PAYABLE,
365
- GROUP_CFS_OP_OTHER_CURRENT_ASSETS_ADJUSTMENT,
366
- GROUP_CFS_OP_OTHER_CURRENT_LIABILITIES_ADJUSTMENT
367
- ]))
287
+ GROUP_CFS_OPERATING = list(
288
+ chain.from_iterable(
289
+ [
290
+ GROUP_CFS_NET_INCOME,
291
+ GROUP_CFS_OP_DEPRECIATION_AMORTIZATION,
292
+ GROUP_CFS_OP_INVESTMENT_GAINS,
293
+ GROUP_CFS_OP_ACCOUNTS_RECEIVABLE,
294
+ GROUP_CFS_OP_INVENTORY,
295
+ GROUP_CFS_OP_ACCOUNTS_PAYABLE,
296
+ GROUP_CFS_OP_OTHER_CURRENT_ASSETS_ADJUSTMENT,
297
+ GROUP_CFS_OP_OTHER_CURRENT_LIABILITIES_ADJUSTMENT,
298
+ ]
299
+ )
300
+ )
368
301
 
369
302
  # ---> FINANCING ACTIVITIES <---- #
370
303
  GROUP_CFS_FIN_ISSUING_EQUITY = [EQUITY_CAPITAL, EQUITY_COMMON_STOCK, EQUITY_PREFERRED_STOCK]
@@ -373,13 +306,14 @@ GROUP_CFS_FIN_DIVIDENDS = [EQUITY_DIVIDENDS]
373
306
  GROUP_CFS_FIN_ST_DEBT_PAYMENTS = [
374
307
  LIABILITY_CL_ST_NOTES_PAYABLE,
375
308
  LIABILITY_CL_ACC_PAYABLE,
376
- EXPENSE_INTEREST_ST
309
+ LIABILITY_CL_CREDIT_LINE,
310
+ EXPENSE_INTEREST_ST,
377
311
  ]
378
312
  GROUP_CFS_FIN_LT_DEBT_PAYMENTS = [
379
313
  LIABILITY_LTL_NOTES_PAYABLE,
380
314
  LIABILITY_LTL_BONDS_PAYABLE,
381
315
  LIABILITY_LTL_MORTGAGE_PAYABLE,
382
- EXPENSE_INTEREST_LT
316
+ EXPENSE_INTEREST_LT,
383
317
  ]
384
318
 
385
319
  GROUP_CFS_FINANCING = GROUP_CFS_FIN_ISSUING_EQUITY + GROUP_CFS_FIN_DIVIDENDS
@@ -395,7 +329,7 @@ GROUP_CFS_INV_PURCHASE_OR_SALE_OF_PPE = [
395
329
  ASSET_PPE_PLANT_ACCUM_DEPRECIATION,
396
330
  ASSET_PPE_EQUIPMENT,
397
331
  ASSET_PPE_EQUIPMENT_ACCUM_DEPRECIATION,
398
- INCOME_CAPITAL_GAIN_LOSS
332
+ INCOME_CAPITAL_GAIN_LOSS,
399
333
  ]
400
334
 
401
335
  GROUP_CFS_INV_LTD_OF_PPE = [
@@ -413,13 +347,10 @@ GROUP_CFS_INV_PURCHASE_OF_SECURITIES = [
413
347
  ASSET_LTI_SECURITIES,
414
348
  INCOME_INTEREST,
415
349
  INCOME_PASSIVE,
416
- INCOME_CAPITAL_GAIN_LOSS
350
+ INCOME_CAPITAL_GAIN_LOSS,
417
351
  ]
418
352
 
419
- GROUP_CFS_INV_LTD_OF_SECURITIES = [
420
- LIABILITY_LTL_NOTES_PAYABLE,
421
- LIABILITY_LTL_BONDS_PAYABLE
422
- ]
353
+ GROUP_CFS_INV_LTD_OF_SECURITIES = [LIABILITY_LTL_NOTES_PAYABLE, LIABILITY_LTL_BONDS_PAYABLE]
423
354
  GROUP_CFS_INVESTING_SECURITIES = GROUP_CFS_INV_PURCHASE_OF_SECURITIES + GROUP_CFS_INV_LTD_OF_SECURITIES
424
355
 
425
356
  GROUP_CFS_INVESTING = GROUP_CFS_INVESTING_PPE + GROUP_CFS_INVESTING_SECURITIES
@@ -432,170 +363,181 @@ BS_LIABILITIES_ROLE = 'liabilities'
432
363
  BS_EQUITY_ROLE = 'equity'
433
364
 
434
365
  ACCOUNT_ROLE_CHOICES = [
435
- (BS_ASSET_ROLE.capitalize(), (
436
- # CURRENT ASSETS ----
437
- (ASSET_CA_CASH, _('Current Asset')),
438
- (ASSET_CA_MKT_SECURITIES, _('Marketable Securities')),
439
- (ASSET_CA_RECEIVABLES, _('Receivables')),
440
- (ASSET_CA_INVENTORY, _('Inventory')),
441
- (ASSET_CA_UNCOLLECTIBLES, _('Uncollectibles')),
442
- (ASSET_CA_PREPAID, _('Prepaid')),
443
- (ASSET_CA_OTHER, _('Other Liquid Assets')),
444
-
445
- # LONG TERM INVESTMENTS ---
446
- (ASSET_LTI_NOTES_RECEIVABLE, _('Notes Receivable')),
447
- (ASSET_LTI_LAND, _('Land')),
448
- (ASSET_LTI_SECURITIES, _('Securities')),
449
-
450
- # PPE ...
451
- (ASSET_PPE_BUILDINGS, _('Buildings')),
452
- (ASSET_PPE_BUILDINGS_ACCUM_DEPRECIATION, _('Buildings - Accum. Depreciation')),
453
- (ASSET_PPE_PLANT, _('Plant')),
454
- (ASSET_PPE_PLANT_ACCUM_DEPRECIATION, _('Plant - Accum. Depreciation')),
455
- (ASSET_PPE_EQUIPMENT, _('Equipment')),
456
- (ASSET_PPE_EQUIPMENT_ACCUM_DEPRECIATION, _('Equipment - Accum. Depreciation')),
457
-
458
- # Other Assets ...
459
- (ASSET_INTANGIBLE_ASSETS, _('Intangible Assets')),
460
- (ASSET_INTANGIBLE_ASSETS_ACCUM_AMORTIZATION, _('Intangible Assets - Accum. Amortization')),
461
- (ASSET_ADJUSTMENTS, _('Other Assets')),
462
- )),
463
- (BS_LIABILITIES_ROLE.capitalize(), (
464
-
465
- # CURRENT LIABILITIES ---
466
- (LIABILITY_CL_ACC_PAYABLE, _('Accounts Payable')),
467
- (LIABILITY_CL_WAGES_PAYABLE, _('Wages Payable')),
468
- (LIABILITY_CL_INTEREST_PAYABLE, _('Interest Payable')),
469
- (LIABILITY_CL_TAXES_PAYABLE, _('Taxes Payable')),
470
- (LIABILITY_CL_ST_NOTES_PAYABLE, _('Short Term Notes Payable')),
471
- (LIABILITY_CL_LTD_MATURITIES, _('Current Maturities of Long Tern Debt')),
472
- (LIABILITY_CL_DEFERRED_REVENUE, _('Deferred Revenue')),
473
- (LIABILITY_CL_OTHER, _('Other Liabilities')),
474
-
475
- # LONG TERM LIABILITIES ----
476
- (LIABILITY_LTL_NOTES_PAYABLE, _('Long Term Notes Payable')),
477
- (LIABILITY_LTL_BONDS_PAYABLE, _('Bonds Payable')),
478
- (LIABILITY_LTL_MORTGAGE_PAYABLE, _('Mortgage Payable')),
479
- )),
480
- (BS_EQUITY_ROLE.capitalize(), (
481
-
482
- # EQUITY ---
483
- (EQUITY_CAPITAL, _('Capital')),
484
- (EQUITY_COMMON_STOCK, _('Common Stock')),
485
- (EQUITY_PREFERRED_STOCK, _('Preferred Stock')),
486
- (EQUITY_ADJUSTMENT, _('Other Equity Adjustments')),
487
- (EQUITY_DIVIDENDS, _('Dividends & Distributions to Shareholders')),
488
-
489
- # INCOME ---
490
- (INCOME_OPERATIONAL, _('Operational Income')),
491
- (INCOME_PASSIVE, _('Investing/Passive Income')),
492
- (INCOME_INTEREST, _('Interest Income')),
493
- (INCOME_CAPITAL_GAIN_LOSS, _('Capital Gain/Loss Income')),
494
- (INCOME_OTHER, _('Other Income')),
495
-
496
- # COGS ----
497
- (COGS, _('Cost of Goods Sold')),
498
-
499
- # EXPENSES ----
500
- (EXPENSE_OPERATIONAL, _('Regular Expense')),
501
- (EXPENSE_INTEREST_ST, _('Interest Expense - Short Term Debt')),
502
- (EXPENSE_INTEREST_LT, _('Interest Expense - Long Term Debt')),
503
- (EXPENSE_TAXES, _('Tax Expense')),
504
- (EXPENSE_CAPITAL, _('Capital Expense')),
505
- (EXPENSE_DEPRECIATION, _('Depreciation Expense')),
506
- (EXPENSE_AMORTIZATION, _('Amortization Expense')),
507
- (EXPENSE_OTHER, _('Other Expense')),
508
- )),
509
- ('Root', (
510
- (ROOT_COA, 'CoA Root Account'),
511
- (ROOT_ASSETS, 'Assets Root Account'),
512
- (ROOT_LIABILITIES, 'Liabilities Root Account'),
513
- (ROOT_CAPITAL, 'Capital Root Account'),
514
- (ROOT_INCOME, 'Income Root Account'),
515
- (ROOT_COGS, 'COGS Root Account'),
516
- (ROOT_EXPENSES, 'Expenses Root Account'),
517
- ))
366
+ (
367
+ BS_ASSET_ROLE.capitalize(),
368
+ (
369
+ # CURRENT ASSETS ----
370
+ (ASSET_CA_CASH, _('Current Asset')),
371
+ (ASSET_CA_MKT_SECURITIES, _('Marketable Securities')),
372
+ (ASSET_CA_RECEIVABLES, _('Receivables')),
373
+ (ASSET_CA_INVENTORY, _('Inventory')),
374
+ (ASSET_CA_UNCOLLECTIBLES, _('Uncollectibles')),
375
+ (ASSET_CA_PREPAID, _('Prepaid')),
376
+ (ASSET_CA_OTHER, _('Other Liquid Assets')),
377
+ # LONG TERM INVESTMENTS ---
378
+ (ASSET_LTI_NOTES_RECEIVABLE, _('Notes Receivable')),
379
+ (ASSET_LTI_LAND, _('Land')),
380
+ (ASSET_LTI_SECURITIES, _('Securities')),
381
+ # PPE ...
382
+ (ASSET_PPE_BUILDINGS, _('Buildings')),
383
+ (ASSET_PPE_BUILDINGS_ACCUM_DEPRECIATION, _('Buildings - Accum. Depreciation')),
384
+ (ASSET_PPE_PLANT, _('Plant')),
385
+ (ASSET_PPE_PLANT_ACCUM_DEPRECIATION, _('Plant - Accum. Depreciation')),
386
+ (ASSET_PPE_EQUIPMENT, _('Equipment')),
387
+ (ASSET_PPE_EQUIPMENT_ACCUM_DEPRECIATION, _('Equipment - Accum. Depreciation')),
388
+ # Other Assets ...
389
+ (ASSET_INTANGIBLE_ASSETS, _('Intangible Assets')),
390
+ (ASSET_INTANGIBLE_ASSETS_ACCUM_AMORTIZATION, _('Intangible Assets - Accum. Amortization')),
391
+ (ASSET_ADJUSTMENTS, _('Other Assets')),
392
+ ),
393
+ ),
394
+ (
395
+ BS_LIABILITIES_ROLE.capitalize(),
396
+ (
397
+ # CURRENT LIABILITIES ---
398
+ (LIABILITY_CL_ACC_PAYABLE, _('Accounts Payable')),
399
+ (LIABILITY_CL_CREDIT_LINE, _('Credit Line')),
400
+ (LIABILITY_CL_WAGES_PAYABLE, _('Wages Payable')),
401
+ (LIABILITY_CL_INTEREST_PAYABLE, _('Interest Payable')),
402
+ (LIABILITY_CL_TAXES_PAYABLE, _('Taxes Payable')),
403
+ (LIABILITY_CL_ST_NOTES_PAYABLE, _('Short Term Notes Payable')),
404
+ (LIABILITY_CL_LTD_MATURITIES, _('Current Maturities of Long Tern Debt')),
405
+ (LIABILITY_CL_DEFERRED_REVENUE, _('Deferred Revenue')),
406
+ (LIABILITY_CL_OTHER, _('Other Liabilities')),
407
+ # LONG TERM LIABILITIES ----
408
+ (LIABILITY_LTL_NOTES_PAYABLE, _('Long Term Notes Payable')),
409
+ (LIABILITY_LTL_BONDS_PAYABLE, _('Bonds Payable')),
410
+ (LIABILITY_LTL_MORTGAGE_PAYABLE, _('Mortgage Payable')),
411
+ ),
412
+ ),
413
+ (
414
+ BS_EQUITY_ROLE.capitalize(),
415
+ (
416
+ # EQUITY ---
417
+ (EQUITY_CAPITAL, _('Capital')),
418
+ (EQUITY_COMMON_STOCK, _('Common Stock')),
419
+ (EQUITY_PREFERRED_STOCK, _('Preferred Stock')),
420
+ (EQUITY_ADJUSTMENT, _('Other Equity Adjustments')),
421
+ (EQUITY_DIVIDENDS, _('Dividends & Distributions to Shareholders')),
422
+ # INCOME ---
423
+ (INCOME_OPERATIONAL, _('Operational Income')),
424
+ (INCOME_PASSIVE, _('Investing/Passive Income')),
425
+ (INCOME_INTEREST, _('Interest Income')),
426
+ (INCOME_CAPITAL_GAIN_LOSS, _('Capital Gain/Loss Income')),
427
+ (INCOME_OTHER, _('Other Income')),
428
+ # COGS ----
429
+ (COGS, _('Cost of Goods Sold')),
430
+ # EXPENSES ----
431
+ (EXPENSE_OPERATIONAL, _('Regular Expense')),
432
+ (EXPENSE_INTEREST_ST, _('Interest Expense - Short Term Debt')),
433
+ (EXPENSE_INTEREST_LT, _('Interest Expense - Long Term Debt')),
434
+ (EXPENSE_TAXES, _('Tax Expense')),
435
+ (EXPENSE_CAPITAL, _('Capital Expense')),
436
+ (EXPENSE_DEPRECIATION, _('Depreciation Expense')),
437
+ (EXPENSE_AMORTIZATION, _('Amortization Expense')),
438
+ (EXPENSE_OTHER, _('Other Expense')),
439
+ ),
440
+ ),
441
+ (
442
+ 'Root',
443
+ (
444
+ (ROOT_COA, 'CoA Root Account'),
445
+ (ROOT_ASSETS, 'Assets Root Account'),
446
+ (ROOT_LIABILITIES, 'Liabilities Root Account'),
447
+ (ROOT_CAPITAL, 'Capital Root Account'),
448
+ (ROOT_INCOME, 'Income Root Account'),
449
+ (ROOT_COGS, 'COGS Root Account'),
450
+ (ROOT_EXPENSES, 'Expenses Root Account'),
451
+ ),
452
+ ),
518
453
  ]
519
454
 
520
455
  ACCOUNT_ROLE_CHOICES_FOR_FORMS = [
521
- ('Asset', (
522
- # CURRENT ASSETS ----
523
- (ASSET_CA_CASH, _('Current Asset')),
524
- (ASSET_CA_MKT_SECURITIES, _('Marketable Securities')),
525
- (ASSET_CA_RECEIVABLES, _('Receivables')),
526
- (ASSET_CA_INVENTORY, _('Inventory')),
527
- (ASSET_CA_UNCOLLECTIBLES, _('Uncollectibles')),
528
- (ASSET_CA_PREPAID, _('Prepaid')),
529
- (ASSET_CA_OTHER, _('Other Liquid Assets')),
530
-
531
- # LONG TERM INVESTMENTS ---
532
- (ASSET_LTI_NOTES_RECEIVABLE, _('Notes Receivable')),
533
- (ASSET_LTI_LAND, _('Land')),
534
- (ASSET_LTI_SECURITIES, _('Securities')),
535
-
536
- # PPE ...
537
- (ASSET_PPE_BUILDINGS, _('Buildings')),
538
- (ASSET_PPE_BUILDINGS_ACCUM_DEPRECIATION, _('Buildings - Accum. Depreciation')),
539
- (ASSET_PPE_PLANT, _('Plant')),
540
- (ASSET_PPE_PLANT_ACCUM_DEPRECIATION, _('Plant - Accum. Depreciation')),
541
- (ASSET_PPE_EQUIPMENT, _('Equipment')),
542
- (ASSET_PPE_EQUIPMENT_ACCUM_DEPRECIATION, _('Equipment - Accum. Depreciation')),
543
-
544
- # Other Assets ...
545
- (ASSET_INTANGIBLE_ASSETS, _('Intangible Assets')),
546
- (ASSET_INTANGIBLE_ASSETS_ACCUM_AMORTIZATION, _('Intangible Assets - Accum. Amortization')),
547
- (ASSET_ADJUSTMENTS, _('Other Assets')),
548
- )),
549
- ('Liabilities', (
550
-
551
- # CURRENT LIABILITIES ---
552
- (LIABILITY_CL_ACC_PAYABLE, _('Accounts Payable')),
553
- (LIABILITY_CL_WAGES_PAYABLE, _('Wages Payable')),
554
- (LIABILITY_CL_INTEREST_PAYABLE, _('Interest Payable')),
555
- (LIABILITY_CL_TAXES_PAYABLE, _('Taxes Payable')),
556
- (LIABILITY_CL_ST_NOTES_PAYABLE, _('Short Term Notes Payable')),
557
- (LIABILITY_CL_LTD_MATURITIES, _('Current Maturities of Long Tern Debt')),
558
- (LIABILITY_CL_DEFERRED_REVENUE, _('Deferred Revenue')),
559
- (LIABILITY_CL_OTHER, _('Other Liabilities')),
560
-
561
- # LONG TERM LIABILITIES ----
562
- (LIABILITY_LTL_NOTES_PAYABLE, _('Long Term Notes Payable')),
563
- (LIABILITY_LTL_BONDS_PAYABLE, _('Bonds Payable')),
564
- (LIABILITY_LTL_MORTGAGE_PAYABLE, _('Mortgage Payable')),
565
- )),
566
- ('Capital', (
567
-
568
- # EQUITY ---
569
- (EQUITY_CAPITAL, _('Capital')),
570
- (EQUITY_COMMON_STOCK, _('Common Stock')),
571
- (EQUITY_PREFERRED_STOCK, _('Preferred Stock')),
572
- (EQUITY_ADJUSTMENT, _('Other Equity Adjustments')),
573
- (EQUITY_DIVIDENDS, _('Dividends & Distributions to Shareholders')),
574
- )),
575
-
576
- ('Income', (
577
- # INCOME ---
578
- (INCOME_OPERATIONAL, _('Operational Income')),
579
- (INCOME_PASSIVE, _('Investing/Passive Income')),
580
- (INCOME_INTEREST, _('Interest Income')),
581
- (INCOME_CAPITAL_GAIN_LOSS, _('Capital Gain/Loss Income')),
582
- (INCOME_OTHER, _('Other Income')),
583
- )),
584
-
585
- ('Expense', (
586
- # COGS ----
587
- (COGS, _('Cost of Goods Sold')),
588
-
589
- # EXPENSES ----
590
- (EXPENSE_OPERATIONAL, _('Regular Expense')),
591
- (EXPENSE_INTEREST_ST, _('Interest Expense - Short Term Debt')),
592
- (EXPENSE_INTEREST_LT, _('Interest Expense - Long Term Debt')),
593
- (EXPENSE_TAXES, _('Tax Expense')),
594
- (EXPENSE_CAPITAL, _('Capital Expense')),
595
- (EXPENSE_DEPRECIATION, _('Depreciation Expense')),
596
- (EXPENSE_AMORTIZATION, _('Amortization Expense')),
597
- (EXPENSE_OTHER, _('Other Expense')),
598
- ))
456
+ (
457
+ 'Asset',
458
+ (
459
+ # CURRENT ASSETS ----
460
+ (ASSET_CA_CASH, _('Current Asset')),
461
+ (ASSET_CA_MKT_SECURITIES, _('Marketable Securities')),
462
+ (ASSET_CA_RECEIVABLES, _('Receivables')),
463
+ (ASSET_CA_INVENTORY, _('Inventory')),
464
+ (ASSET_CA_UNCOLLECTIBLES, _('Uncollectibles')),
465
+ (ASSET_CA_PREPAID, _('Prepaid')),
466
+ (ASSET_CA_OTHER, _('Other Liquid Assets')),
467
+ # LONG TERM INVESTMENTS ---
468
+ (ASSET_LTI_NOTES_RECEIVABLE, _('Notes Receivable')),
469
+ (ASSET_LTI_LAND, _('Land')),
470
+ (ASSET_LTI_SECURITIES, _('Securities')),
471
+ # PPE ...
472
+ (ASSET_PPE_BUILDINGS, _('Buildings')),
473
+ (ASSET_PPE_BUILDINGS_ACCUM_DEPRECIATION, _('Buildings - Accum. Depreciation')),
474
+ (ASSET_PPE_PLANT, _('Plant')),
475
+ (ASSET_PPE_PLANT_ACCUM_DEPRECIATION, _('Plant - Accum. Depreciation')),
476
+ (ASSET_PPE_EQUIPMENT, _('Equipment')),
477
+ (ASSET_PPE_EQUIPMENT_ACCUM_DEPRECIATION, _('Equipment - Accum. Depreciation')),
478
+ # Other Assets ...
479
+ (ASSET_INTANGIBLE_ASSETS, _('Intangible Assets')),
480
+ (ASSET_INTANGIBLE_ASSETS_ACCUM_AMORTIZATION, _('Intangible Assets - Accum. Amortization')),
481
+ (ASSET_ADJUSTMENTS, _('Other Assets')),
482
+ ),
483
+ ),
484
+ (
485
+ 'Liabilities',
486
+ (
487
+ # CURRENT LIABILITIES ---
488
+ (LIABILITY_CL_ACC_PAYABLE, _('Accounts Payable')),
489
+ (LIABILITY_CL_CREDIT_LINE, _('Credit Line')),
490
+ (LIABILITY_CL_WAGES_PAYABLE, _('Wages Payable')),
491
+ (LIABILITY_CL_INTEREST_PAYABLE, _('Interest Payable')),
492
+ (LIABILITY_CL_TAXES_PAYABLE, _('Taxes Payable')),
493
+ (LIABILITY_CL_ST_NOTES_PAYABLE, _('Short Term Notes Payable')),
494
+ (LIABILITY_CL_LTD_MATURITIES, _('Current Maturities of Long Tern Debt')),
495
+ (LIABILITY_CL_DEFERRED_REVENUE, _('Deferred Revenue')),
496
+ (LIABILITY_CL_OTHER, _('Other Liabilities')),
497
+ # LONG TERM LIABILITIES ----
498
+ (LIABILITY_LTL_NOTES_PAYABLE, _('Long Term Notes Payable')),
499
+ (LIABILITY_LTL_BONDS_PAYABLE, _('Bonds Payable')),
500
+ (LIABILITY_LTL_MORTGAGE_PAYABLE, _('Mortgage Payable')),
501
+ ),
502
+ ),
503
+ (
504
+ 'Capital',
505
+ (
506
+ # EQUITY ---
507
+ (EQUITY_CAPITAL, _('Capital')),
508
+ (EQUITY_COMMON_STOCK, _('Common Stock')),
509
+ (EQUITY_PREFERRED_STOCK, _('Preferred Stock')),
510
+ (EQUITY_ADJUSTMENT, _('Other Equity Adjustments')),
511
+ (EQUITY_DIVIDENDS, _('Dividends & Distributions to Shareholders')),
512
+ ),
513
+ ),
514
+ (
515
+ 'Income',
516
+ (
517
+ # INCOME ---
518
+ (INCOME_OPERATIONAL, _('Operational Income')),
519
+ (INCOME_PASSIVE, _('Investing/Passive Income')),
520
+ (INCOME_INTEREST, _('Interest Income')),
521
+ (INCOME_CAPITAL_GAIN_LOSS, _('Capital Gain/Loss Income')),
522
+ (INCOME_OTHER, _('Other Income')),
523
+ ),
524
+ ),
525
+ (
526
+ 'Expense',
527
+ (
528
+ # COGS ----
529
+ (COGS, _('Cost of Goods Sold')),
530
+ # EXPENSES ----
531
+ (EXPENSE_OPERATIONAL, _('Regular Expense')),
532
+ (EXPENSE_INTEREST_ST, _('Interest Expense - Short Term Debt')),
533
+ (EXPENSE_INTEREST_LT, _('Interest Expense - Long Term Debt')),
534
+ (EXPENSE_TAXES, _('Tax Expense')),
535
+ (EXPENSE_CAPITAL, _('Capital Expense')),
536
+ (EXPENSE_DEPRECIATION, _('Depreciation Expense')),
537
+ (EXPENSE_AMORTIZATION, _('Amortization Expense')),
538
+ (EXPENSE_OTHER, _('Other Expense')),
539
+ ),
540
+ ),
599
541
  ]
600
542
 
601
543
  ACCOUNT_CHOICES_NO_ROOT = [c for c in ACCOUNT_ROLE_CHOICES if c[0] != 'Root']
@@ -613,15 +555,7 @@ ROLE_DICT = dict([(t[0].lower(), [r[0] for r in t[1]]) for t in ACCOUNT_ROLE_CHO
613
555
  VALID_ROLES = [r[1] for r in ROLE_TUPLES]
614
556
  BS_ROLES = dict((r[1], r[0]) for r in ROLE_TUPLES)
615
557
 
616
- BS_BUCKETS = {
617
- '0': 'Root',
618
- '1': 'Asset',
619
- '2': 'Liability',
620
- '3': 'Capital',
621
- '4': 'Income',
622
- '5': 'COGS',
623
- '6': 'Expenses'
624
- }
558
+ BS_BUCKETS = {'0': 'Root', '1': 'Asset', '2': 'Liability', '3': 'Capital', '4': 'Income', '5': 'COGS', '6': 'Expenses'}
625
559
  BS_BUCKETS_ORDER = [v for _, v in BS_BUCKETS.items() if v != 'Root']
626
560
 
627
561
  ROLES_VARS = locals().keys()
@@ -661,8 +595,9 @@ def validate_roles(roles: Union[str, List[str]], raise_exception: bool = True) -
661
595
  raise InvalidRoleError('{rls}) is invalid. Choices are {ch}'.format(ch=', '.join(VALID_ROLES), rls=r))
662
596
  return set(roles)
663
597
 
598
+
664
599
  VALID_PARENTS = {
665
600
  ASSET_PPE_BUILDINGS_ACCUM_DEPRECIATION: [ASSET_PPE_BUILDINGS],
666
601
  ASSET_PPE_EQUIPMENT_ACCUM_DEPRECIATION: [ASSET_PPE_EQUIPMENT],
667
602
  ASSET_PPE_PLANT_ACCUM_DEPRECIATION: [ASSET_PPE_PLANT],
668
- }
603
+ }