Welcome to
microbooks.io
The World's first 100% API based Bookkeeping Platform designed to automate routine Accounting to produce financial reports that are compliant with the IFRS and GAAP Reporting Standards.
Examples
The quickstart below should enable you to obtain the following (Text Format) Financial Statements. The Statements can also be retrieved in HTML and PDF formats.
Acme Inc
Income Statement
For the Period: Jan 01, 2024 to Feb 28, 2024
Operating Revenues
Operating Revenue 250
Operating Expenses
Operating Expense 120
--------------
Gross Profit 130
--------------
Total Revenue 130
Non Operating Expenses
Direct Expense 50
--------------
Total Non Operating Expenses 50
--------------
Net Profit 80
==============
Quickstart
This quickstart demonstrates how you can use the API to arrive at a set of Financial Statements with a minimal of inputs. After registering/logging in, all you have to do is follow the steps below.Business Setup
First we need to setup the Entity (business) for which we'll be generating reports.curl --location --request POST 'https://api.microbooks.io/books/v1/entity'
--header "Authorization: Bearer <bearer_token>"
--data-raw '{
"name": "Acme Inc",
"currency_code": "USD",
}'
Accounts
Next we'll need to setup our Chart of Accounts by adding some.curl --location --request POST 'https://api.microbooks.io/books/v1/account'
--header "Authorization: Bearer <bearer_token>"
--data-raw '{
"name": "Capital Account",
"account_type": "EQUITY"
}'
- Bank Account
BANK
- Sales Account
OPERATING_REVENUE
- Client Account
RECEIVABLE
- Supplier Account
PAYABLE
- COGS Account
OPERATING_EXPENSE
- Expense Account
DIRECT_EXPENSE
- Asset Account
NON_CURRENT_ASSET
- Taxes Account
CONTROL
Taxes
Then we'll setup some taxes (Vat), both output (for sales) and input (for purchases) types.curl --location --request POST 'https://api.microbooks.io/books/v1/tax'
--header "Authorization: Bearer <bearer_token>"
--data-raw '{
"name": "Output Vat",
"code": "OTP",
"rate": 10,
"account_id": <taxes account id>,
}'
{ "name": "Input Vat", "code": "IPT", "rate": 5, "account_id": <taxes account id> }
Transactions
We're now ready to record some transactions.Cash Sale
curl --location --request POST 'https://api.microbooks.io/books/v1/transaction'
--header "Authorization: Bearer <bearer_token>"
--data-raw '{
"account_id": <bank account id>,
"transaction_type": "CS",
"narration": "Cash Sale",
"transaction_date": "2024-02-01",
"post_transaction": true,
"line_items": [{
"account_id": <sales account id>,
"amount": 100,
"narration": "Cash Sale Line Item",
"taxes": [<output tax id>]
}]
}'
Credit Sale
Repeat the call above with the following inputs:{ "account_id": <client account id>, "transaction_type": "IN", "narration": "Client Invoice", "transaction_date": "2024-01-28", "post_transaction": true, "line_items": [{ "account_id": <sales account id>, "amount": 150, "narration": "Credit Sale Line Item", "taxes": [<output tax id>] }] }
Cash Purchase (Operating Expense)
Repeat the call above with the following inputs:{ "account_id": <bank account id>, "transaction_type": "CP", "narration": "Cash Purchase", "transaction_date": "2024-01-28", "post_transaction": true, "line_items": [{ "account_id": Operating Expense Account "amount": 120, "narration": "Cash Purchase Line Item", "taxes": [<input tax id>] }] }
Cash Purchase (Non - Operating Expense)
Repeat the call above with the following inputs:{ "account_id": <bank account id>, "transaction_type": "CP", "narration": "Cash Purchase", "transaction_date": "2024-01-28", "post_transaction": true, "line_items": [{ "account_id": <expense account>, "amount": 50, "narration": "Cash Purchase Line Item", "taxes": [<input tax id>] }] }
Credit Purchase (Asset Purchase)
Repeat the call above with the following inputs:{ "account_id": <supplier account>, "transaction_type": "BL", "narration": "Credit Purchase", "transaction_date": "2024-01-28", "post_transaction": true, "line_items": [{ "account_id": <asset account id>, "amount": 70, "narration": "Credit Purchase Line Item", "taxes": [<input tax id>] }] }
Client Payment (Receipt)
Repeat the call above with the following inputs:{ "account_id": <client account id>, "transaction_type": "RC", "narration": "Client Receipt", "transaction_date": "2024-01-28", "post_transaction": true, "line_items": [{ "account_id": <bank account id>, "amount": 125, "narration": "Client Payment Line Item" }] }
Supplier Payment
Repeat the call above with the following inputs:{ "account_id": <supplier account>, "transaction_type": "PY", "narration": "Supplier Payment", "transaction_date": "2024-01-28", "post_transaction": true, "line_items": [{ "account_id": <bank account id>, "amount": 30, "narration": "Supplier Payment Line Item" }] }
Financial Statements
All done! Now for the reward for all the effort, lets get some reports.Income Statement
curl --location --request GET 'https://api.microbooks.io/books/v1/reports/income-statement?format=text'
--header "Authorization: Bearer <bearer_token>"
Balance Sheet
curl --location --request GET 'https://api.microbooks.io/books/v1/reports/balance-sheet?format=text'
--header "Authorization: Bearer <bearer_token>"
Cashflow Statement
curl --location --request GET 'https://api.microbooks.io/books/v1/reports/cashflow-statement?format=text'
--header "Authorization: Bearer <bearer_token>"
This quickstart only demonstrates a small fraction of the capabilities of the platform. Check out our resources page for more information about how to bring out the full power of microobooks.io