Welcome to Keepfig
Your complete financial management platform. Track payments, manage expenses, and grow your business with confidence.
Getting Started
Your First Steps
Welcome! This guide will help you master Keepfig, even if you've never done accounting before. We'll explain not just how to use the features, but why they work the way they do and what they mean for your business.
Don't worry if terms like "debits," "credits," or "journal entries" sound foreignβwe'll explain everything in plain English with real examples.
π‘ What Makes Keepfig Different
Unlike spreadsheets or simple trackers, Keepfig uses proper accounting principles behind the scenes. This means:
- Your books automatically balance
- You can generate real financial statements
- You're audit-ready from day one
- You can scale from sole trader to enterprise
But here's the best part: you don't need to understand accounting to use it. Keepfig handles the complex stuff automatically.
Accounting Basics (Simple Explanation)
What Is Accounting, Really?
At its core, accounting answers three simple questions:
- What do I own? (Assets - cash, equipment, money owed to you)
- What do I owe? (Liabilities - loans, bills to pay)
- Am I making or losing money? (Revenue minus Expenses)
Everything in Keepfig revolves around tracking these three things accurately. When you record a payment, create an invoice, or log an expense, Keepfig updates all three automatically.
The Golden Rule: Every Transaction Has Two Sides
This is called double-entry accounting, and it's simpler than it sounds. Let's use a real example:
β Example: Customer Pays You β¦100,000
What actually happened?
- Your cash increased by β¦100,000 (that's the first "entry")
- Your revenue increased by β¦100,000 (that's the second "entry")
Why two entries? Because money doesn't appear from nowhereβit came FROM revenue and went INTO your bank account. Both sides need to be recorded.
What Keepfig does: When you record this as a "received payment," Keepfig automatically creates both entries in the background. You just fill in one form.
Why This Matters to You
You might be thinking: "Can't I just write '+β¦100,000' in a spreadsheet?" Yes, but then:
- You'd lose track of WHERE the money came from
- Your cash balance wouldn't match your total revenue
- You couldn't tell if β¦100,000 was a sale, a loan, or investment
- Tax time would be a nightmare
Keepfig prevents these problems by maintaining the connection between "what happened" (revenue) and "where it went" (bank account).
Understanding Your Workspace
Keepfig organizes your financial data into workspaces (also called tenants). Think of a workspace as a complete set of books for one business entity. Each workspace is completely isolated, with its own:
- Payments β Money received from customers or sent to vendors
- Expenses β Business costs and spending tracked for reporting
- Invoices β Bills you send to customers or receive from suppliers
- Contacts β Customers, vendors, and business relationships
- Accounts β Chart of accounts for double-entry bookkeeping
Understanding Accounts
What Are Accounts? (And Why Should You Care)
An account in Keepfig is like a labeled bucket where you track specific types of money. Think of your business as having many buckets:
- A bucket for cash in your bank
- A bucket for money customers owe you
- A bucket for office rent expenses
- A bucket for sales revenue
Every time money moves, it flows FROM one bucket INTO another bucket. This is how Keepfig tracks exactly where your money comes from and where it goes.
π‘ Real-World Example
Let's say a customer pays you β¦50,000 for a website project:
- β¦50,000 flows OUT of your "Revenue" bucket (because you earned it)
- β¦50,000 flows INTO your "Bank Account" bucket (because that's where the cash landed)
Both buckets get updated. Your revenue goes up by β¦50,000, and your bank balance goes up by β¦50,000. This is why your books always balance!
Chart of Accounts: Your Complete List of Buckets
The Chart of Accounts is simply a list of all your buckets (accounts). It's organized into five main categories:
The Five Account Types Explained
1. Assets (Things You Own)
What they are: Anything of value your business owns or controls.
Common asset accounts:
- Cash/Bank Account β Money in your bank (e.g., "GTBank Current Account")
- Accounts Receivable β Money customers owe you (invoices you've sent but haven't been paid yet)
- Inventory β Products you have in stock to sell
- Equipment β Computers, machinery, furniture you own
- Prepaid Expenses β Things you've paid for but haven't used yet (like prepaid rent or annual software subscriptions)
How they increase: When you receive cash, buy equipment, or someone owes you money.
How they decrease: When you spend cash, sell equipment, or someone pays you back.
β Example: Buying a Laptop
You spend β¦300,000 on a new laptop for your business.
- Bank Account (asset) decreases by β¦300,000
- Equipment (also an asset) increases by β¦300,000
Your total assets stay the sameβyou just swapped cash for equipment.
2. Liabilities (Things You Owe)
What they are: Money or obligations your business owes to others.
Common liability accounts:
- Accounts Payable β Bills you've received but haven't paid yet
- Loans Payable β Money you borrowed from banks or investors
- Credit Card β Balance on your business credit card
- Taxes Payable β VAT, income tax, or other taxes you owe but haven't paid
- Salaries Payable β Employee wages you owe but haven't paid yet
How they increase: When you borrow money, receive a bill, or owe someone.
How they decrease: When you pay back a loan or settle a bill.
β οΈ Example: Taking a Loan
You borrow β¦1,000,000 from a bank.
- Bank Account (asset) increases by β¦1,000,000 (you now have more cash)
- Loan Payable (liability) increases by β¦1,000,000 (you now owe the bank)
Your cash went up, but so did your debt. This is why both sides matter!
3. Equity (What's Truly Yours)
What it is: The difference between what you own (assets) and what you owe (liabilities). This is your true ownership stake in the business.
The equation: Assets - Liabilities = Equity
Common equity accounts:
- Owner's Capital β Money you personally put into the business
- Retained Earnings β Profits the business has kept (not withdrawn)
- Owner's Drawings β Money you've taken out for personal use
Simple way to think about it: If you sold everything your business owns and paid off all debts, the equity accounts show how much you'd have left.
π‘ Example: Starting Your Business
You invest β¦500,000 of your own money to start.
- Bank Account (asset) increases by β¦500,000
- Owner's Capital (equity) increases by β¦500,000
The business now has β¦500,000 in cash, and you own 100% of it.
4. Revenue (Money You Earn)
What it is: Income from selling products or services. This is how your business makes money.
Common revenue accounts:
- Sales Revenue β Income from selling products
- Service Revenue β Income from providing services
- Consulting Revenue β If you're a consultant
- Interest Income β Interest earned on bank accounts
- Rental Income β If you rent out property or equipment
Important: Revenue is recognized when you EARN it, not necessarily when you receive cash. If you send an invoice for β¦100,000, that's revenue even if the customer hasn't paid yet.
β Example: Completing a Project
You finish a β¦200,000 website project and send an invoice.
- Accounts Receivable (asset) increases by β¦200,000 (customer owes you)
- Service Revenue (revenue) increases by β¦200,000 (you earned it)
Later, when they pay:
- Bank Account (asset) increases by β¦200,000
- Accounts Receivable (asset) decreases by β¦200,000
Notice: Revenue was recorded once (when earned), even though cash came later.
5. Expenses (Money You Spend)
What they are: Costs of running your business. These reduce your profit.
Common expense accounts:
- Rent Expense β Office or shop rent
- Salaries Expense β Employee wages
- Utilities β Electricity, water, internet
- Marketing & Advertising β Ads, promotions
- Office Supplies β Paper, pens, printer ink
- Software Subscriptions β Tools like Keepfig, Zoom, Adobe
- Bank Charges β Transaction fees, maintenance fees
- Professional Fees β Lawyers, accountants, consultants
- Depreciation β The "wearing out" of equipment over time
The Profit Formula: Revenue - Expenses = Profit (or Loss)
β οΈ Example: Paying Office Rent
You pay β¦50,000 for this month's rent.
- Bank Account (asset) decreases by β¦50,000
- Rent Expense (expense) increases by β¦50,000
Your cash went down, and your expenses went up. This reduces your profit for the month.
Managing Your Chart of Accounts
Viewing Your Accounts
Click "Accounts" in the left sidebar (under the Accounting section)
Accounts are organized into the five types (Assets, Liabilities, Equity, Revenue, Expenses). Click a type to see all accounts in that category.
Each account shows its current balance. For example:
- Bank Account: β¦2,500,000 (how much cash you have)
- Sales Revenue: β¦5,000,000 (how much you've earned this period)
- Rent Expense: β¦150,000 (how much you've spent on rent)
Creating a New Account
Keepfig comes with common accounts pre-configured, but you can add your own.
You'll see a form with these fields:
- Account Name β Choose a clear, descriptive name (e.g., "Facebook Ads" instead of just "Marketing")
- Account Type β Select from Assets, Liabilities, Equity, Revenue, or Expenses
- Account Code β Optional numbering system (e.g., 1000 for assets, 4000 for revenue). Keepfig can auto-generate this.
- Description β Optional notes about what this account tracks
π‘ Account Naming Best Practices
- Be specific: "Google Ads Expense" beats "Ads" if you use multiple platforms
- Stay consistent: If you use "Expense" at the end, do it for all expenses
- Think ahead: Will you understand this account name in 2 years?
- Group related accounts: Use prefixes like "Bank - GTBank", "Bank - UBA" for multiple bank accounts
When to Create New Accounts
DO create a new account when:
- You need to track a specific expense category separately (e.g., you want to see how much you spend on travel vs. meals)
- You open a new bank account and want to track it separately
- You offer a new product line and want to track its revenue separately
- Tax rules require you to separate certain expenses
DON'T create a new account when:
- An existing account already covers it (e.g., don't create "Printer Paper" if you have "Office Supplies")
- It's a one-time transaction (use an existing account)
- You're not sure what category it fitsβpick the closest existing account and move on
β οΈ Common Mistake: Too Many Accounts
New users often create way too many accounts. Having 50+ expense accounts makes reporting confusing. Start with broad categories, then split accounts only when you need detailed tracking.
Example: Start with "Marketing Expense." If later you're spending a lot and want details, split it into "Digital Ads," "Print Ads," and "Events."
Understanding Account Balances
Each account type behaves differently:
| Account Type | Normal Balance | What "High Balance" Means |
|---|---|---|
| Assets | Positive | Good! You have more cash, equipment, or money owed to you. |
| Liabilities | Positive | You owe more money. Not necessarily bad if it's strategic debt. |
| Equity | Positive | Your ownership stake has grown. Good! |
| Revenue | Positive | You've earned more. Great! |
| Expenses | Positive | You've spent more. Watch this number! |
β The Big Picture: How Accounts Connect
Here's how a typical business transaction flows through accounts:
- You provide a service β Revenue account increases
- Customer pays you β Bank Account (asset) increases
- You pay rent β Rent Expense increases, Bank Account decreases
- At month-end β Revenue minus Expenses = Profit, which increases Retained Earnings (equity)
Every account is connected. That's why your financial statements (Balance Sheet, Profit & Loss) always tell a complete story.
π Related Topics
- Journal Entries: The Foundation - See how accounts connect through journal entries
- Recording Payments - Put accounts into practice by recording transactions
- Custom Dashboards - Track specific accounts with custom widgets
Journal Entries: The Foundation
What Is a Journal Entry?
A journal entry is the actual record of a transaction showing the two accounts involved and the amounts. It's like a receipt that says "β¦X moved from Account A to Account B."
Good news: Keepfig creates journal entries automatically for you. When you record a payment, expense, or invoice, Keepfig writes the journal entry behind the scenes.
π‘ Example: What Happens When You Record a Payment
You record: "Customer paid β¦100,000"
What you see: A payment entry in your Payments list
What Keepfig does automatically:
| Account | Debit (Increase) | Credit (Increase) |
|---|---|---|
| Bank Account (Asset) | β¦100,000 | β |
| Sales Revenue (Revenue) | β | β¦100,000 |
This journal entry links the two accounts and updates both balances.
Understanding Debits and Credits (Optional Deep Dive)
You don't NEED to understand debits and credits to use Keepfigβthe system handles it automatically. But if you're curious:
- Debit means "left side of the journal entry"
- Credit means "right side of the journal entry"
The rules:
| Account Type | Increases With | Decreases With |
|---|---|---|
| Assets | Debit | Credit |
| Expenses | Debit | Credit |
| Liabilities | Credit | Debit |
| Equity | Credit | Debit |
| Revenue | Credit | Debit |
The golden rule: Total debits always equal total credits in every journal entry. This is why accounting is called "double-entry"βboth sides must balance.
β Memory Trick: DEALER
Debits increase Expenses and Assets
Credits increase Liabilities, Equity, and Revenue
(The "C" in credits is silent, but you get the idea!)
Viewing Your Journal Entries
Click "Journal Entries" in the left sidebar (under Accounting)
You'll see a list of all journal entries with:
- Date β When the transaction occurred
- Description β What the transaction was (e.g., "Payment from John Doe")
- Total Amount β The transaction amount
- Status β Usually "Posted" (finalized) or "Draft" (not yet finalized)
Click any entry to see the full breakdown:
- Which accounts were affected
- Debit and credit amounts for each account
- Any attached documents or notes
When to Create Manual Journal Entries
Keepfig automatically creates journal entries for standard transactions (payments, expenses, invoices). You rarely need to create them manually.
You MIGHT need a manual entry for:
- Corrections β Fixing a mistake in a past transaction
- Adjustments β Depreciation, inventory adjustments, or accruals
- Complex transactions β Transferring money between your own bank accounts, recording owner investments or withdrawals
- Period-end entries β Closing the books at year-end (your accountant might help with these)
β οΈ Warning: Be Careful with Manual Entries
Manual journal entries bypass Keepfig's built-in safeguards. If you enter the wrong accounts or amounts, you can throw off your reports.
Best practice: If you're unsure whether you need a manual entry, ask your accountant or reach out to Keepfig support. It's better to ask than to mess up your books!
Creating a Manual Journal Entry
Only use this if you're confident about what you're doing:
- Date β When did this transaction occur?
- Description β Brief explanation (e.g., "Owner invested cash")
For each account affected:
- Select the account
- Enter the debit amount (if increasing an asset or expense)
- OR enter the credit amount (if increasing a liability, equity, or revenue)
Total debits must equal total credits. Keepfig will warn you if they don't match.
Save as Draft to review later, or Post to finalize the entry and update your accounts immediately.
β Example: Recording Owner Investment
You personally invest β¦500,000 into the business.
Manual Journal Entry:
- Date: Today's date
- Description: "Owner capital investment"
- Line 1: Bank Account (Asset) β Debit β¦500,000
- Line 2: Owner's Capital (Equity) β Credit β¦500,000
Result: Your bank balance goes up by β¦500,000, and your equity goes up by β¦500,000.
Why Journal Entries Are Your "Single Source of Truth"
Here's the key insight: All financial data in Keepfig comes from journal entries.
- Your Profit & Loss report? It sums up revenue and expense accounts from journal entries.
- Your Balance Sheet? It shows balances of asset, liability, and equity accounts from journal entries.
- Your Cash Flow? It tracks how journal entries moved cash in and out of bank accounts.
This means: As long as journal entries are correct, your entire financial picture is accurate. Keepfig's automatic journal entry creation ensures consistency across all reports.
π‘ Pro Tip: Trust the System
When you record payments, expenses, or invoices through Keepfig's standard workflows, the system creates perfect journal entries every time. You get all the benefits of double-entry accounting without needing to understand the mechanics.
Your job: Focus on running your business. Let Keepfig handle the accounting.
π Related Topics
- Understanding Accounts - Learn about the accounts that journal entries update
- Recording Payments - See automatic journal entry creation in action
- Bank Reconciliation - Verify journal entries match bank statements
Managing Payments
What Are Payments?
Payments represent money flowing in or out of your business. They can be:
- Received β Money you receive from customers (revenue)
- Sent β Money you pay to vendors (expenses)
Recording Your First Payment
Click "Payments" in the left sidebar of your dashboard.
You'll see a form with the following fields:
- Amount β How much money (e.g., 500.00)
- Currency β Defaults to your workspace currency (NGN, USD, etc.)
- Payment Type β Select "Received" for income or "Sent" for expenses
- Payment Date β When the transaction occurred
- Contact Name β Who paid you or who you paid (optional but recommended)
- Description β Brief note about the payment
- Reference β Transaction ID, invoice number, or external reference
Example: Amount = 5000, Currency = NGN, Type = Received, Contact = "Acme Corp", Description = "Website design project"
Keepfig will:
- Create the payment record
- Generate a journal entry (debit Cash, credit Revenue)
- Update your dashboard widgets (cash balance, revenue, etc.)
- Add the payment to recent transactions
π‘ Pro Tip: Use References Wisely
Always fill in the Reference field with your bank transaction ID, payment gateway reference, or invoice number. This makes reconciliation easier and helps prevent duplicate entries.
Viewing and Filtering Payments
The Payments page shows all your transactions. You can:
- Filter by type β Show only received or sent payments
- Search β Find payments by contact name, description, or reference
- Sort β Order by date, amount, or contact
- Export β Download as CSV for external analysis
π Related Topics
- Journal Entries - See what happens behind the scenes when you record a payment
- Importing Data - Import multiple payments at once from CSV/Excel
- Integrations - Automatically sync payments from Paystack, Stripe, etc.
- Best Practices: Reconciliation - Match payments with bank statements
Importing Data
Why Import Data?
Instead of manually entering hundreds of transactions, you can import them from:
- Bank statements β CSV or Excel exports from your bank
- Payment processors β Stripe, Paystack, Flutterwave transaction exports
- Accounting software β QuickBooks, Xero, or other platforms
- Spreadsheets β Your own Excel or Google Sheets records
Importing Step by Step
Click "Data Imports" in the sidebar, then "New Import"
Select from the dropdown:
- Paystack β If importing Paystack transaction export
- Stripe β For Stripe balance history CSV
- Flutterwave, Square, Generic β Other payment providers
Drag and drop your CSV or Excel file. Supported formats:
- .csv (comma-separated values)
- .xlsx (Excel 2007+)
- .xls (Excel 97-2003)
Keepfig will analyze your file and suggest column mappings:
| Your CSV Column | Maps To | Required? |
|---|---|---|
| Amount / Total | Amount | β Required |
| Date / Transaction Date | Payment Date | β Required |
| Reference / ID | Reference | Recommended |
| Description / Narration | Description | Optional |
| Customer / Merchant | Contact Name | Optional |
You'll see a preview of how your data will be imported. Check:
- Amounts are correct (watch for currency conversions)
- Dates are properly formatted
- Payment types are assigned correctly (received vs sent)
Click "Import" to process. Keepfig will:
- Create payment records for each row
- Generate journal entries automatically
- Link to your integration (if applicable)
- Process in the background (you can close your browser)
- Check for duplicate files automatically
π Background Processing
Imports now run in the background using an async queue system. This means:
- Close your browser β Import continues on the server
- Track progress β Real-time progress bar shows rows processed
- Auto-retry β If import fails, it retries automatically (3 attempts)
- Crash recovery β Server restarts won't lose your import
The system polls for updates every 3 seconds until your import completes.
β οΈ Duplicate File Detection
Keepfig automatically detects if you're uploading the same file twice:
- Smart matching β Compares file content + data type + template + integration
- Active imports β Won't let you import while same file is being processed
- Completed imports β Allows re-import with different settings if needed
If duplicate detected: You'll see a dialog with options to continue the existing import or create a new one with "force upload".
β What Happens if Import is Interrupted?
Don't worry! The system includes robust crash recovery:
- Browser closed β Import continues in background
- Server crashes β Import automatically resumes on restart
- Duplicate re-upload β System prevents double-processing
Your import session is saved in the database, and the queue system ensures it completes successfully.
Using Templates for Faster Imports
If you regularly import from the same source (e.g., monthly bank statements), save your column mappings as a template:
- After mapping columns, click "Save as Template"
- Give it a name like "Chase Bank Monthly Statement"
- Next time, select the template and skip the mapping step
β Pre-Built Templates Available
Keepfig includes ready-to-use templates for popular services:
- Stripe Balance History β For Stripe transaction exports
- Paystack Transaction Export β For Paystack CSV downloads
Just select the template and upload your fileβno mapping needed!
Workflow Automation
What Are Workflows?
Workflows are visual automation engines that eliminate repetitive manual work. Instead of spending hours each week manually importing transactions, categorizing payments, sending reports, and updating records, you build workflows once and let them run automatically forever.
Real Impact: A typical accounting team spends 10-15 hours per week on repetitive data entry. Workflows reduce this to under 1 hour by automating:
- Data Import - Automatically sync transactions from payment processors (Paystack, Stripe) daily or hourly
- Data Processing - Loop through hundreds of transactions, categorize them, create payment records, and link to invoices
- Business Logic - Apply conditional rules like "if payment > $10,000, notify CFO" or "if vendor is new, create contact record"
- Notifications - Send email reports, alerts, and summaries to your team automatically
- Fraud Detection - Flag suspicious documents and notify finance team instantly
Workflow Architecture
Every workflow follows this structure:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β WORKFLOW EXECUTION FLOW β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
π― TRIGGER (What starts the workflow)
β
ββ Paystack: Scheduled Sync
ββ Paystack: After Sync Complete
ββ Paystack: After Sync Failed
ββ Fraud Detected
ββ Stripe Payment Received
ββ ...and more
β
βΌ
π LOGIC NODES (Control how data flows)
β
ββ Loop (For Each) β Process arrays/lists
β Example: Loop through 50 transactions
β
ββ Condition (If/Then) β Branch based on rules
β Example: If amount > 10000 then notify, else proceed
β
ββ Transform Data β Modify/format data
Example: Convert "USD" to "US Dollars"
β
βΌ
β‘ ACTIONS (What actually happens)
β
ββ Create Payment Record
ββ Create Contact
ββ Create Journal Entry
ββ Send Email
ββ Link External Transaction
ββ Update Payment Status
ββ Match Invoice to Payment
ββ Categorize Expense
ββ ...and more
β
βΌ
β
RESULT
ββ Data saved, emails sent, records updated
π‘ Data Flows Between Nodes
When nodes are connected, data automatically flows from one to the next. For example:
- Trigger outputs:
paystack_transactions.transactions(array of 50 transactions) - Loop receives: Full array, processes one transaction at a time, outputs
{{item.amount}},{{item.reference}} - Action receives: Individual transaction data, creates payment record using
{{item.amount}}
Key Concepts
π― Triggers (What Starts the Workflow)
Triggers are events that automatically start your workflow. Each workflow must have exactly one trigger. Keepfig provides dozens of triggers across different categories:
Payment Integration Triggers:
- Paystack: Scheduled Sync - Poll API at intervals (15 min, hourly, daily). Most common for daily transaction imports.
- Paystack: After Sync Complete - Fires when sync finishes successfully. Use for reporting and notifications.
- Paystack: After Sync Failed - Fires when sync encounters errors. Use for error alerts and monitoring.
- Paystack: New Payment Detected - Fires for each new payment found during sync. Use for per-transaction processing.
- Stripe: Payment Received - Similar triggers available for Stripe transactions.
- Flutterwave, Square - Integration-specific triggers for each payment provider.
System Event Triggers:
- Fraud Detected - Fires when document verification fails fraud checks (duplicate, suspicious patterns, tampered metadata)
- Invoice Created - Fires when new invoice is generated
- Invoice Overdue - Fires when invoice payment deadline passes
- Payment Received - Fires for any payment record creation (manual or automated)
- Expense Submitted - Fires when expense report is submitted for approval
β οΈ Important: One Trigger Per Workflow
Each workflow can only have one trigger. If you need multiple triggers, create separate workflows. This keeps workflows focused and easier to debug. Example: Create one workflow for "Paystack Daily Sync" and another for "Stripe Hourly Sync" rather than trying to combine them.
β‘ Actions (What Happens Next)
Actions are the steps that execute after a trigger fires. Unlike triggers, you can chain unlimited actions together to build complex automation. Actions are organized into categories:
Data Creation Actions:
- Create Payment Record - Creates new payment transaction with amount, date, reference, contact
- Create Contact - Adds customer or vendor with email, phone, address
- Create Journal Entry - Creates double-entry accounting entries (debits + credits)
- Create Invoice - Generates new invoice with line items
- Create Expense - Records business expense with category and receipt
Data Modification Actions:
- Update Payment Status - Change status (pending β cleared β reconciled)
- Match Invoice to Payment - Link payment to invoice and mark as paid
- Categorize Expense - Assign category tag to expense record
- Link External Transaction - Links to Paystack/Stripe API for duplicate prevention
- Reconcile Transaction - Mark as reconciled with bank statement
Communication Actions:
- Send Email - Sends notifications with dynamic data (supports templates, attachments, CC/BCC)
- Send SMS - Sends text message alerts (requires Twilio integration)
- Webhook - Calls external API endpoint with JSON payload
Reporting Actions:
- Generate Payment Report - Creates daily/weekly/monthly payment summaries
- Update Dashboard Metrics - Refreshes dashboard KPIs (revenue, transaction count)
- Export to CSV - Exports data for external analysis
Note: This is not an exhaustive list. Browse the workflow builder sidebar to see all available actions. New actions are added regularly as Keepfig expands integrations.
π Logic Nodes (Control Flow)
Logic nodes control how your workflow executes:
- Condition (If/Then) - Branch workflow based on rules. Example: "If amount > 10000, send alert email, else create payment normally"
Operators: equals, not equals, greater than, less than, contains, starts with, in list - Loop (For Each) - Repeat actions for multiple items. Example: Loop through 50 Paystack transactions and create a payment record for each one
Supports parallel processing and batch sizes for faster execution - Transform Data - Manipulate data before passing to next step. Example: Convert currency, format dates, concatenate fields, or extract values
π§ Configuring Nodes
Each node has configuration options that appear when you click on it:
- Required fields are marked with a red asterisk (*)
- Dynamic variables use
{{variable}}syntax to insert data from previous steps - Dropdown selectors automatically filter options based on context (e.g., Loop nodes show arrays from previous steps)
- Conditional fields appear/hide based on other selections (e.g., if integration is required, integration selector appears)
Common Automation Use Cases
πΈ Automatic Payment Import
Trigger: Paystack: Scheduled Sync (daily)
Actions: Loop through transactions β Create Payment β Link External Transaction
π§ Large Payment Alerts
Trigger: Paystack: New Payment Detected
Actions: Condition (if amount > 50000) β Send Email to finance team
π Daily Sync Reports
Trigger: Paystack: After Sync Complete
Actions: Generate Report β Update Dashboard β Send Email summary
π¨ Fraud Detection Alerts
Trigger: Fraud Detected
Actions: Send Email alert β Update payment status β Create audit log
Creating Your First Workflow
Click "Workflows" in the sidebar, then "Create Workflow" or choose a template from the marketplace
From the left sidebar, expand "Triggers" and drag a trigger node onto the canvas. Example: "Paystack: Scheduled Sync"
- Click the node to configure it
- Select your Paystack integration
- Set polling interval (e.g., "Daily")
- Choose transaction filter (e.g., "Success Only")
Drag action nodes from the left sidebar onto the canvas:
- Loop node: Set array source to "paystack_transactions.transactions" (from trigger)
- Create Payment: Map fields using
{{item.amount}},{{item.reference}}, etc. - Send Email: Use
{{synced_count}}transactions synced in subject line
Draw lines between nodes by clicking and dragging from one node's output handle to another node's input handle. This shows the flow of data.
- Trigger β Loop (all transactions flow to loop)
- Loop β Create Payment (each transaction creates a payment)
- Loop β Send Email (summary sent after all payments created)
Click each node and set configuration. Use
{{variable}} syntax for dynamic data:
Email subject: "{{synced_count}} new Paystack payments synced"
Payment amount: {{item.amount}}
Payment reference: {{item.reference}}
Contact name: {{item.customer.email}}
Click "Test Run" to execute the workflow once and verify it works. Check execution logs for errors. When ready, click "Enable" to activate automatic execution.
Complete Workflow Example: Automated Paystack Sync
π‘ Real-World Scenario
Problem: Your business processes 200+ Paystack transactions daily. Your bookkeeper spends 3 hours every morning manually importing them, creating payment records, categorizing transactions, and sending daily reports to the CFO.
Solution: One workflow that runs automatically every morning at 6 AM:
TRIGGER
ββ Paystack: Scheduled Sync
- Polling interval: Daily at 6:00 AM
- Transaction filter: Success only
- Integration: Main Paystack Account
NODE 1: LOOP
ββ Loop (For Each Transaction)
- Array source: paystack_transactions.transactions
- Item variable: {{item}}
- Parallel processing: Enabled (batch size: 10)
NODE 2: CONDITION (Inside Loop)
ββ If amount > 50000
- Then: Branch A (Large Payment Alert)
- Else: Branch B (Normal Processing)
BRANCH A: Large Payment Alert
ββ Send Email
β - To: cfo@company.com
β - Subject: "Large payment received: {{item.amount}} NGN"
β - Body: "Customer: {{item.customer.email}}, Ref: {{item.reference}}"
ββ Create Payment (with high-value flag)
BRANCH B: Normal Processing
ββ Create Payment
- Amount: {{item.amount}}
- Currency: {{item.currency}}
- Reference: {{item.reference}}
- Contact: {{item.customer.email}}
- Payment method: bank_transfer
- Payment type: received
NODE 3: LINK EXTERNAL (After Loop)
ββ Link External Transaction
- Links payments to Paystack API
- Prevents duplicates on next sync
NODE 4: SEND DAILY REPORT
ββ Send Email
- To: finance@company.com
- Subject: "Daily Paystack sync: {{synced_count}} transactions"
- Body: "Processed {{synced_count}} payments totaling {{total_amount}} NGN"
- Attachment: CSV report
Result:
- β 200+ transactions imported automatically every morning
- β Large payments (>50K) trigger instant CFO alerts
- β All payments linked to Paystack to prevent duplicates
- β Daily summary email with CSV report sent to finance team
- β Time saved: 3 hours/day β 5 minutes/day (just reviewing the summary)
- β Cost savings: $450/month in bookkeeper time
Why Workflows Matter for Small Businesses
Traditional accounting software forces you to manually enter every transaction. Keepfig's workflow automation means:
- Zero data entry - Transactions import automatically from all your payment processors
- Instant notifications - Get alerted the moment important events happen (large payments, overdues, fraud)
- Consistent processes - Every transaction follows the same rules, reducing human error
- Scale without hiring - Process 10x more transactions without adding accounting staff
- Real-time insights - Your books are always up-to-date, not waiting for month-end data entry
Bottom line: Workflows turn Keepfig from "accounting software" into "your automated accounting department."
Connecting Integrations
Why Connect Integrations?
Integrations let Keepfig automatically fetch transactions from your payment processors, banks, and other financial tools. This eliminates manual data entry and keeps your records up to date.
Available Integrations
- Paystack β Nigerian payment gateway
- Stripe β Global payment processing NEW
- Flutterwave β African payment platform BETA
- Square β Point of sale and payments
Connecting Paystack (Example)
Click "Integrations" in the sidebar
Click "Connect" next to the Paystack logo
You'll need:
- Secret Key β From your Paystack dashboard (Settings β API Keys & Webhooks)
- Public Key β Also from Paystack settings
Keepfig will verify your keys by making a test API call
Choose sync options:
- Auto-sync β Automatically import new transactions daily
- Historical sync β Import past transactions (last 90 days)
β Integration Connected!
Once connected, you can:
- Manually sync anytime by clicking "Sync Now"
- View sync history and status
- Create workflows that trigger on new transactions
- Import data using the integration in Data Imports
Fraud Detection
What Is Fraud Detection?
Keepfig includes built-in fraud detection to verify invoices and receipts. Upload a document and get instant analysis including:
- Duplicate detection β Check if you've seen this document before
- Image forensics β Detect if the image has been manipulated
- OCR extraction β Read text from the document (invoice numbers, amounts, etc.)
- Risk scoring β Overall fraud risk assessment
Checking a Document
Click "Fraud Detection" in the sidebar
Drag and drop or click to select:
- PDF invoices or receipts
- JPG/PNG images of receipts
- Scanned documents
You'll see a detailed report:
| Check | What It Means |
|---|---|
| β ACCEPT | Document looks legitimate, safe to process |
| β οΈ REVIEW | Some suspicious indicators, manual review recommended |
| β REJECT | High fraud risk, likely fake or manipulated |
β οΈ Privacy & GDPR Compliance
Keepfig never stores your original documents. We only save cryptographic hashes for duplicate detection. All forensic analysis happens in memory and results are stored separately from your document images.
Understanding Fraud Signals
The fraud report includes specific signals that contributed to the decision:
- Duplicate Detected β Same invoice number or exact file hash seen before
- Similar Document Found β Visually similar but not identical (could be recurring vendor)
- Image Manipulation β Evidence of editing detected via ELA (Error Level Analysis)
- Missing Metadata β No camera info or creation date in image metadata
- Copy-Move Detection β Parts of the image appear to be copied and pasted
Custom Dashboards
Why We Encourage Custom Dashboards
Unlike traditional accounting software that forces everyone to use the same generic dashboard, Keepfig believes your dashboard should reflect your business priorities.
Every business tracks different metrics:
- Startups care about burn rate, runway, and growth metrics
- Agencies focus on project profitability and client revenue
- E-commerce tracks conversion rates and average order value
- SaaS companies monitor MRR, churn, and customer acquisition cost
With custom dashboards, you can:
- See what matters at a glance instead of digging through generic reports
- Create role-specific views (CEO dashboard vs Operations dashboard)
- Monitor KPIs in real-time without manual spreadsheet updates
- Save time by eliminating repetitive report generation
β Real Benefits Our Users See
- Founders: "I check my runway every morning in 5 seconds instead of opening Excel"
- Operations: "Our expense tracking dashboard catches overspending before it becomes a problem"
- Sales: "The top customers widget helps us prioritize relationship management"
Creating a Dashboard
Click "Dashboards" in the sidebar, then the "+" icon
Be specific about its purpose:
Examples: "Founder Metrics", "Q1 Investor Report", "Expense Analysis", "Sales Performance"
Click "Add Widget" and choose from:
- Metric Widgets (single numbers): Cash Balance, Revenue, Burn Rate, Runway
- Chart Widgets (visual trends): Line charts, bar charts, pie charts, donut charts
- List Widgets (recent activity): Latest transactions, new customers, pending invoices
- Table Widgets (detailed data): Expense reports, invoice aging, payment history
- Cap Table Widget (equity tracking): Ownership breakdown, dilution analysis
Click the gear icon on any widget to customize:
- Data source: What metric or data to display
- Chart type: Line, bar, pie, or donut (you can change this anytime)
- Timeframe: This month, last 30 days, last 90 days, this year, all time
- Filters: Show only certain categories, contacts, or payment types
- Limit: How many items to show (e.g., top 10 customers)
Drag widgets to reorder them. Resize by dragging corners. Put your most important metrics at the top where you'll see them first.
Click "Save". Toggle "Set as Default" to make this dashboard load when you sign in.
Example Dashboard Configurations
Example 1: Founder Dashboard (Startup Metrics)
Purpose: Monitor business health and runway for investor updates
| Widget Type | Data Source | Configuration | Why It Matters |
|---|---|---|---|
| Metric | Cash Balance | Current balance | Know your available liquidity |
| Metric | Burn Rate | Monthly average, last 3 months | Track spending velocity |
| Metric | Runway | Months remaining | Plan fundraising timeline |
| Metric | Monthly Revenue | This month vs last month | Monitor growth trajectory |
| Line Chart | Revenue Trend | Last 12 months | Visualize growth for investors |
| Line Chart | Expense Trend | Last 12 months | Identify spending patterns |
| Pie Chart | Cap Table | Current ownership | Track dilution at a glance |
| List | Top Customers | By revenue, top 5 | Focus on key relationships |
Example 2: Operations Dashboard (Expense Control)
Purpose: Monitor spending and catch budget overruns early
| Widget Type | Data Source | Configuration | Why It Matters |
|---|---|---|---|
| Metric | Total Expenses | This month | Quick spend check |
| Metric | Average Daily Spend | Last 30 days | Identify unusual spending days |
| Bar Chart | Expenses by Category | This month | See where money is going |
| Line Chart | Monthly Expenses | Last 6 months | Spot trends and seasonality |
| Table | Recent Expenses | Last 20 transactions | Quick review of recent spending |
| List | Top Vendors | By spend, top 10 | Identify negotiation opportunities |
Example 3: Sales Dashboard (Revenue Tracking)
Purpose: Monitor sales performance and customer health
| Widget Type | Data Source | Configuration | Why It Matters |
|---|---|---|---|
| Metric | Monthly Revenue | This month | Track toward quota |
| Metric | Revenue Growth | Month-over-month % | Measure acceleration |
| Metric | Average Deal Size | Last 30 days | Monitor deal quality |
| Line Chart | Revenue Trend | Last 12 months | Show seasonal patterns |
| Bar Chart | Revenue by Customer | This quarter, top 10 | Identify concentration risk |
| Pie Chart | Revenue by Product | This year | Understand product mix |
| List | Recent Payments | Last 10 received | Verify customer payments |
π‘ Pro Tips for Effective Dashboards
- Start simple: Begin with 4-6 widgets, add more as needed
- Group related metrics: Put revenue widgets together, expense widgets together
- Use color wisely: Green for positive metrics, red for alerts/warnings
- Update timeframes regularly: Switch from "last 30 days" to "this quarter" as your business matures
- Create multiple dashboards: Daily operations dashboard + monthly review dashboard
- Share with your team: Export dashboard screenshots for board meetings or investor updates
Cap Table & Equity Management NEW
What Is a Cap Table?
A cap table (capitalization table) tracks who owns what percentage of your company. It shows:
- Shareholders: Founders, investors, employees, advisors
- Share classes: Common stock, preferred stock, warrants, options
- Ownership percentages: How much of the company each person owns
- Equity grants: Stock issued, options granted, vesting schedules
Why it matters: Your cap table determines control (voting rights), economics (who gets paid when), and fundraising (how much dilution each round causes). Keeping it accurate is critical for taxes, fundraising, and exits.
β οΈ Common Cap Table Mistakes We Help You Avoid
- Not tracking vesting schedules properly (can cause disputes on departure)
- Forgetting to account for options when calculating dilution
- Missing 83(b) election deadlines for early exercised options
- Not documenting capital contributions from founders
Key Concepts Explained
Share Classes
Different types of shares with different rights:
- Common Stock: Standard ownership, usually for founders and employees. One vote per share, last to get paid in liquidation.
- Preferred Stock: Usually for investors. May have liquidation preferences (gets paid first) and conversion rights (can convert to common).
- Options: Right to buy shares at a set price (strike price) in the future. Must vest before exercise.
- Warrants: Similar to options but typically issued to investors or service providers, often with longer expiration dates.
Vesting
Vesting means earning your shares over time instead of getting them all at once. Standard vesting terms:
- 4-year vesting: You earn 100% of shares over 4 years
- 1-year cliff: Nothing vests until 12 months, then 25% vests all at once
- Monthly vesting after cliff: Remaining 75% vests monthly over 36 months
Example: You're granted 40,000 options with standard 4-year vesting and 1-year cliff:
- Month 0-11: 0 shares vested (still earning)
- Month 12: 10,000 shares vest (25% cliff)
- Month 13-48: 833 shares vest per month (75% / 36 months)
- Month 48: All 40,000 shares fully vested
Fully Diluted Ownership
Fully diluted means counting all shares as if every option and warrant had been exercised. This is the most conservative (and honest) way to calculate ownership.
Formula: Your shares / (Total issued shares + All unvested options + All warrants)
Managing Shareholders
Click "Cap Table" in the sidebar, then "Shareholders"
Click "Add Shareholder" and fill in:
- Name: Full legal name
- Email: Contact email (required for equity grant notices)
- Shareholder Type: Founder, Employee, Investor, Advisor, or Other
- Tax ID: National ID, TIN, or SSN (for tax reporting)
- Address: Legal address (required for stock certificates)
Click the eye icon (ποΈ) next to any shareholder to see:
- Total shares owned across all share classes
- Ownership percentage (fully diluted)
- Capital contributions made
- Equity grants received (with vesting status)
Recording Capital Contributions
When shareholders (especially founders) inject cash into the company, you need to record it properly for accounting and tax purposes. There are two ways to do this in Keepfig:
Method 1: From Shareholder Detail Page (Recommended for Equity Transactions)
Use when: Shareholder is contributing cash in exchange for shares
Go to Cap Table β Shareholders, click the eye icon (ποΈ) on the shareholder
Fill in the form:
- Amount: Cash contributed (e.g., β¦500,000)
- Date: When the contribution was made
- Payment Method: Bank Transfer, Cash, Wire, etc.
- Reference: Bank transaction ID or check number
- Notes: Optional description (e.g., "Series A closing")
Toggle "Issue Shares" if you're exchanging the contribution for equity:
- Share Class: Select Common, Preferred, or Warrant
- Number of Shares: How many shares to issue
- Vesting: Typically "No Vesting" for direct stock grants
Keepfig automatically:
- Creates a payment record (category: Capital Contribution)
- Creates a journal entry (Debit: Cash, Credit: Owner's Equity)
- Creates an equity grant (if shares issued)
- Links everything together for audit trail
Method 2: Through Payment Form (Flexible for All Contributions)
Use when: Recording any capital contribution, with or without immediate share issuance
Click "Payments" in sidebar, then "Create Payment"
Then select category: Capital Contribution
Choose the contributing shareholder from the dropdown. The contact name will auto-fill.
The account selector automatically filters to show only equity accounts (Owner's Equity, Retained Earnings, etc.)
If you don't have an equity account yet, create one from Chart of Accounts.
Amount, date, payment method, reference. Then submit.
π‘ Which Method Should I Use?
- Use Method 1 (Shareholder page) when you want to issue shares immediately in exchange for the contribution
- Use Method 2 (Payment form) when recording contributions without immediate share issuance, or when you prefer the flexibility of the payment workflow
- Both create identical accounting entries (DR: Cash, CR: Owner's Equity)
- Both appear in contribution history on the shareholder detail page
Issuing Equity Grants
Click "Create Grant"
- Direct Stock: Immediate ownership, no vesting required (for founders or investors)
- Stock Options: Must vest before exercise (for employees)
- Warrants: Right to purchase shares, often for investors or advisors
| Field | Description | Example |
|---|---|---|
| Shareholder | Who receives the grant | Jane Doe |
| Share Class | Type of shares | Common Stock |
| Number of Shares | How many shares | 50,000 |
| Strike Price | Price per share (for options/warrants) | β¦1.00 |
| Grant Date | When grant is issued | 2025-01-01 |
| Vesting Schedule | How shares vest over time | 4-year, 1-year cliff |
For stock options:
- Vesting Period: Total time to fully vest (e.g., 4 years)
- Cliff Period: Time before first vesting (e.g., 1 year)
- Vesting Frequency: How often shares vest (monthly, quarterly, annually)
Keepfig automatically:
- Creates the equity grant record
- Updates cap table ownership percentages
- Starts vesting clock (for options)
- Generates stock certificate (for direct grants)
Understanding Your Dashboard Widget
The Cap Table widget provides a visual snapshot of ownership. You can:
- Switch chart types: Pie chart (ownership %), line chart (dilution over time), bar chart (shares per shareholder)
- Filter by share class: Show only common stock or only preferred
- Toggle fully diluted: Show current ownership vs fully diluted (including unvested options)
β Real-World Scenario: Founder Capital Injection
Situation: Co-founder Sarah contributes β¦2,000,000 cash to fund operations. Company issues 20,000 common shares in exchange.
Step-by-step:
- Go to Cap Table β Shareholders β Click eye icon on Sarah
- Click "Record Contribution"
- Amount: β¦2,000,000, Date: Today, Method: Bank Transfer
- Toggle "Issue Shares" ON
- Share Class: Common Stock, Shares: 20,000, Vesting: No Vesting
- Submit
What Keepfig does automatically:
- Payment record created (β¦2,000,000 received from Sarah)
- Journal entry: DR Cash β¦2,000,000 / CR Owner's Equity β¦2,000,000
- Equity grant created: 20,000 shares issued to Sarah
- Cap table updated: Sarah now owns 20,000 shares
- Dashboard widget shows Sarah's ownership percentage
Result: Complete audit trail from cash receipt to equity issuance, fully compliant for tax and legal purposes.
Common Cap Table Tasks
Adding a New Investor
- Create shareholder record (type: Investor)
- Record capital contribution (investment amount)
- Issue equity grant (preferred stock, usually)
- Configure liquidation preference and conversion terms (in share class settings)
Granting Employee Options
- Create shareholder record (type: Employee)
- Issue equity grant (stock options)
- Set vesting schedule (standard: 4 years, 1-year cliff)
- Set strike price (typically 409A valuation)
- Employee receives grant notice email
Handling Employee Departure
- Go to Equity Grants, find employee's grants
- Calculate vested shares (based on tenure)
- Mark unvested shares as "Cancelled"
- If employee exercises vested options: Record exercise transaction, issue shares
- If employee doesn't exercise: Options expire per grant terms
Preparing for Fundraising
- Run cap table report (fully diluted ownership)
- Export equity grant history (all grants with dates, vesting, strike prices)
- Generate shareholder list with contact info
- Review option pool sufficiency (do you need to increase pool?)
- Share reports with investors during diligence
β οΈ Important Tax and Legal Notes
- 83(b) Elections: Employees exercising options early should file 83(b) within 30 days (consult tax advisor)
- 409A Valuations: Strike prices for options must be at or above fair market value per IRS rules
- Securities Laws: Equity issuances may be subject to securities regulations, consult legal counsel
- Stock Certificates: Issue physical or electronic certificates for all direct stock grants
Best Practices
Organizing Your Data
Use Consistent Contact Names
Always use the same name format for contacts. Instead of mixing "Acme Corp", "Acme", and "Acme Corporation", pick one and stick with it. This ensures accurate reporting and makes filtering easier.
Fill in References
The reference field is your friend! Always include:
- Bank transaction IDs for bank transfers
- Payment gateway references for online payments
- Invoice numbers when paying bills
This prevents duplicates and makes reconciliation much easier.
Categorize Expenses
Create expense categories that match your business needs. Common categories:
- Operations β Office rent, utilities, supplies
- Marketing β Ads, events, content creation
- Technology β Software subscriptions, hosting, tools
- Personnel β Salaries, benefits, contractors
Security Tips
Protect Your API Keys
Never share your integration API keys. Treat them like passwords. If you suspect a key has been compromised, regenerate it immediately in your payment processor's dashboard.
Review Fraud Alerts
If a document is flagged for review, always investigate before processing. Look for:
- Mismatched amounts or dates
- Unfamiliar vendor names
- Suspicious image quality
Enable Two-Factor Authentication
Add an extra layer of security to your Keepfig account by enabling 2FA in your account settings.
Financial Reporting
Reconcile Regularly
Match your Keepfig records with bank statements at least monthly. This catches errors early and ensures accuracy.
Monitor Key Metrics
Create a dashboard with your most important metrics and check it daily or weekly:
- Cash balance β Ensure you have enough liquidity
- Burn rate β Track spending trends
- Revenue β Monitor income consistency
- Runway β Plan ahead for fundraising or profitability
Export for Your Accountant
Keepfig's journal entries follow standard accounting principles. Export them as CSV and share with your accountant for tax filing or financial audits.
Need more help? Check out our Technical Documentation or contact support.