-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Simplified set of types and rules for core #80
Comments
epogrebnyak
added a commit
that referenced
this issue
Jul 21, 2024
epogrebnyak
added a commit
that referenced
this issue
Jul 27, 2024
epogrebnyak
added a commit
that referenced
this issue
Aug 17, 2024
epogrebnyak
added a commit
that referenced
this issue
Aug 20, 2024
from playground.ui import Book
# Start company
book = Book(company_name="Pied Piper")
# Create chart of accounts
book.add_assets("cash", "inventory", "ar")
book.add_capital("equity")
book.add_income("sales", offsets=["refunds"])
book.add_expense("cogs")
book.add_liability("dividend")
book.set_retained_earnings("re")
# Open ledger and post entries
book.open()
book.entry("Shareholder investment").amount(300).debit("cash").credit("equity").commit()
book.entry("Bought inventory").amount(200).debit("inventory").credit("cash").commit()
book.entry("Invoiced sales").debit("ar", 380).debit("refunds", 20).credit("sales", 400).commit()
book.entry("Shippled goods").amount(200).debit("cogs").credit("inventory").commit()
# Close ledger at period end and make post-close entries
book.close()
book.entry("Accrue dividend").amount(90).debit("re").credit("dividend").commit()
# Show reports
print(book.balance_sheet.json())
print(book.income_statement.json()) Result:
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Work flow:
Chart -> Ledger
Ledger -> List[Entry] -> (Ledger, List[Entry])
Ledger -> (ClosedLedger, IncomeStatement)
ClosedLedger -> List[Entry] -> ClosedLedger
ClosedLedger -> Balances
Balances -> Entry
ClosedLedger -> BalanceSheet
Obtain information about ledger:
Ledger -> TrialBalance
Other:
Chart
,[Entry]
,IncomeStatement
,BalanceSheet
andBalances
are serialisableAssumptions:
Chart:
The text was updated successfully, but these errors were encountered: