Features and Modules — ContaAutónomo capabilities
ContaAutónomo ships as a Flask core plus 14 self-contained modules. This page lists every module with its status, endpoints, models and user-facing features, then summarizes cross-cutting capabilities: multi-currency support, security and the task scheduler.
All modules
| Module | Status | Description |
|---|---|---|
| Expenses | Core | Track expenses with file uploads, contractor links, multi-currency support and category filtering |
| Tax Management | Core | Manage Spanish tax forms (Modelo 349, 303, 130, 390, 100) and Social Security (autonomo) payments |
| Tax Poland (IT) | Optional | Polish tax rules for IT freelancers (JDG/B2B): flat 19% PIT or progressive 12%/32%, VAT 23%, ZUS |
| Documents | Core | Store and manage documents with categories, tags, multi-file attachments, preview and download |
| Backup & Restore | Core | Full encrypted backups (DB JSON + uploaded files) with daily scheduling and external storage |
| Reports | Core | Generate professional financial reports (PDF) with selectable sections from any enabled module |
| External Storage | Optional | Route file storage to external backends: AWS S3, Google Cloud Storage or Google Drive |
| Invoice Attachments | Optional | Upload ready-made invoice PDFs from the invoice view, create or edit forms instead of generating them |
| PDF Signature | Optional | Visual (image overlay) and digital (X.509/PFX) signing of invoice PDFs via pluggable capabilities |
| PDF Signature Verify | Optional | Detect digital signatures in uploaded PDFs and display signer info (DocuSign, Adobe Sign, generic) |
| Invoice Comments | Optional | Add internal comments to invoices for tracking notes, reminders and communication history |
| Invoice Designer | Optional | Visual UI for custom invoice PDF templates with block positioning, colours, fonts and label overrides |
| AI Document Parser | Optional | AI-powered parsing of invoices and expenses (OpenAI GPT-4o, Anthropic Claude, Google Document AI) |
| OAuth Authentication | Optional | Pluggable OAuth provider (Google, GitHub) registered through BaseModule.get_auth_providers hook |
Module details
Expenses
Track expenses with file uploads, contractor links, multi-currency support and category filtering
Endpoints
GET /expenses/GET /expenses/createPOST /expenses/createGET /expenses/edit/</code></li> POST /expenses/edit/</code></li> POST /expenses/delete/</code></li> GET /expenses/file/</code></li> GET /expenses/download/</code></li> GET /expenses/preview/</code></li> </ul> Models
ExpenseContractor
Features
- Multi-currency expense entries with per-row exchange rate
- Receipt attachments via FileStorageBackend (local, S3, GCS, GDrive)
- Contractor relationships and category-based search
- Quarterly grouping aligned with quarterly tax reporting
- Contributes Expenses and VAT data to the Tax Obligations panel
Tax Management
Manage Spanish tax forms (Modelo 349, 303, 130, 390, 100) and Social Security (autonomo) payments
Endpoints
GET /tax-forms/POST /tax-forms/uploadGET /tax-forms/download/</code></li> GET /tax-forms/preview/</code></li> POST /tax-forms/delete/</code></li> POST /tax-forms/ss-payments/addPOST /tax-forms/ss-payments//edit</code></li> POST /tax-forms/ss-payments//delete</code></li> </ul> Models
TaxFormSSPayment
Features
- Upload and version Spanish Modelo PDFs (303, 130, 349, 390, 100)
- Track Social Security (cuota autonomos) payments per month
- Dashboard panel with annual SS totals and pending months
- Quarterly grouping that mirrors AEAT submission deadlines
- Inline preview and download for archived returns
Tax Poland (IT) Optional
Polish tax rules for IT freelancers (JDG/B2B): flat 19% PIT or progressive 12%/32%, VAT 23%, ZUS
Can be enabled or disabled in Settings without data loss.
Endpoints
No HTTP endpoints (data-only module).
Models
TaxPolandConfig
Features
- Flat tax (19%) or progressive (12%/32%) PIT calculation
- Health insurance: 4.9% on flat tax, 9% on progressive
- Automatic VAT 23% (PTU) override on enable
- Monthly ZUS social insurance with annual aggregation
- Localized field labels (NIP, PESEL) for Polish freelancers
Documents
Store and manage documents with categories, tags, multi-file attachments, preview and download
Endpoints
GET /documents/GET /documents/createPOST /documents/createGET /documents/edit/</code></li> POST /documents/edit/</code></li> GET /documents/view/</code></li> POST /documents/delete/</code></li> GET /documents/download/</code></li> GET /documents/preview/</code></li> GET /documents/file//download</code></li> GET /documents/file//preview</code></li> POST /documents/file//delete</code></li> POST /documents/file//sign/ </code></li> GET /documents/categoriesPOST /documents/categories/addPOST /documents/categories//delete</code></li> POST /documents/categories//color</code></li> POST /documents/duplicate/</code></li> POST /documents/bulkPOST /documents/note/add/</code></li> POST /documents/note/edit/</code></li> POST /documents/note/delete/</code></li> </ul> Models
DocumentDocumentCategoryDocumentFileDocumentConfigDocumentHistoryDocumentNote
Features
- Multiple file attachments per document with size and format
- Categories with custom colours and tag-based filtering
- Per-document notes plus full audit history of changes
- Inline preview, download and bulk operations
- Auto-collected categories merged with manually managed ones
Backup & Restore
Full encrypted backups (DB JSON + uploaded files) with daily scheduling and external storage
Endpoints
POST /backup/GET /backup/download/</code></li> POST /backup/restore/</code></li> POST /backup/delete/</code></li> GET /backup/upload-restorePOST /backup/upload-restore </ul>POST /backup/load-demoModels
BackupConfig
Features
- Single ZIP archive with DB dump and all uploaded files
- Optional AES-256 encryption (app password or separate password)
- Daily scheduled backups via TaskScheduler
- Optional copy to External Storage (S3, GCS, Google Drive)
- Restore from local backup, uploaded JSON, or demo dataset
Reports
Generate professional financial reports (PDF) with selectable sections from any enabled module
Endpoints
GET /reports/POST /reports/generatePOST /reports/file-list
Models
No SQLAlchemy models.
Features
- Quarterly or full-year reports for income, expenses and SS
- Pluggable sections via get_report_sections() from any module
- Currency mode: original or converted to base currency
- Optional ZIP bundle with attached source documents
- Configurable PDF report templates (official, minimal, custom)
External Storage Optional
Route file storage to external backends: AWS S3, Google Cloud Storage or Google Drive
Can be enabled or disabled in Settings without data loss.
Endpoints
POST /storage/test
Models
StorageConfig
Features
- Pluggable FileStorageBackend implementations
- AWS S3 with profile, key-pair or default credentials
- Google Cloud Storage and Google Drive with service accounts
- Connection test directly from the settings UI
- Transparent to other modules; uses core.storage API
Invoice Attachments Optional
Upload ready-made invoice PDFs from the invoice view, create or edit forms instead of generating them
Can be enabled or disabled in Settings without data loss.
Endpoints
POST /invoice-attachments/attach/</code></li> </ul> Models
No SQLAlchemy models.
Features
- Attach an external PDF to any unlocked invoice
- PDF upload field added to invoice create and edit forms
- MIME validation and full audit logging on each upload
- Replaces a generated PDF when one already exists
PDF Signature Optional
Visual (image overlay) and digital (X.509/PFX) signing of invoice PDFs via pluggable capabilities
Can be enabled or disabled in Settings without data loss.
Endpoints
POST /pdf-signature/upload-fileGET /pdf-signature/preview-signaturePOST /pdf-signature/sign/</code></li> </ul> Models
PDFSignatureConfigPDFSignatureInvoice
Features
- Visual signature overlay with configurable position and size
- Digital signing with X.509 PFX certificates via pyHanko
- Capability provider for cross-module pdf_sign calls
- Auto-detects pre-signed PDFs and badges them in the UI
PDF Signature Verify Optional
Detect digital signatures in uploaded PDFs and display signer info (DocuSign, Adobe Sign, generic)
Can be enabled or disabled in Settings without data loss.
Endpoints
POST /pdf-verify/checkGET /pdf-verify/details
Models
No SQLAlchemy models.
Features
- Extract X.509 signer details from embedded PKCS#7 signatures
- Inline Signed badges injected into file lists across modules
- Full certificate chain with validity dates per signer
- Capability provider for pdf_verify and file_badge integrations
Invoice Comments Optional
Add internal comments to invoices for tracking notes, reminders and communication history
Can be enabled or disabled in Settings without data loss.
Endpoints
POST /invoice-comments/add/</code></li> POST /invoice-comments/delete/</code></li> </ul> Models
InvoiceComment
Features
- Comments are internal only and never appear on the PDF
- Inline comments panel on the invoice view page
- Initial-comment field injected into create and edit forms
- Timestamped per comment with single-click delete
Invoice Designer Optional
Visual UI for custom invoice PDF templates with block positioning, colours, fonts and label overrides
Can be enabled or disabled in Settings without data loss.
Endpoints
GET /invoice-designer/GET /invoice-designer/createPOST /invoice-designer/createGET /invoice-designer/edit/</code></li> POST /invoice-designer/edit/</code></li> POST /invoice-designer/delete/</code></li> POST /invoice-designer/duplicate/</code></li> GET /invoice-designer/preview/</code></li> POST /invoice-designer/importGET /invoice-designer/export/</code></li> </ul> Models
InvoiceTemplate
Features
- Grid layout with top, header, subtotal, bottom and footer slots
- Per-block colours, fonts, label overrides and offsets
- Six layout presets plus a live PDF preview
- Import and export templates as JSON
- Multiple templates selectable from invoice settings
AI Document Parser Optional
AI-powered parsing of invoices and expenses (OpenAI GPT-4o, Anthropic Claude, Google Document AI)
Can be enabled or disabled in Settings without data loss.
Endpoints
GET /ai-parser/POST /ai-parser/parse
Models
AIParserConfig
Features
- Pluggable providers: OpenAI, Anthropic, Google Document AI
- Auto-fills invoice and expense forms from parsed JSON
- Per-provider credentials stored in settings
- Supports PDF, JPEG and PNG document uploads
- Activity log entry for every parse attempt
OAuth Authentication Optional
Pluggable OAuth provider (Google, GitHub) registered through BaseModule.get_auth_providers hook
Can be enabled or disabled in Settings without data loss.
Endpoints
GET /auth/oauth/login/</code></li> GET /auth/oauth/callback/</code></li> </ul> Models
OAuthAccount
Features
- Implements the AuthProvider interface from core auth_routes
- Multiple providers can be enabled simultaneously
- Account linking with existing local users
- Stateless and removable without affecting core auth