Decentralized Accounting System
Master's thesis University of PisaThis thesis explored the design and implementation of a decentralized accounting and document-management system for a restaurant use case. The prototype combines blockchain-based transactions, Solid Pods for privacy-preserving document storage, MetaMask payments, QR-code-based interaction, and eBill-inspired billing workflows.
2021/22
academic year
SME
restaurant use case
Solid
private document storage
ETH
blockchain transaction layer
Context
The thesis starts from a practical problem: accounting and document management in small and medium-sized businesses can be costly, manual, error-prone, and difficult to verify. In a restaurant scenario, payments, invoices, orders, customer interactions, and supplier operations create a flow of documents that must remain consistent, auditable, and accessible to the right actors.
The proposed solution uses blockchain as a transparent and tamper-aware transaction layer, while Solid Pods provide a separate privacy-preserving storage layer for documents and business data that should not be placed directly on-chain.
Conceptual background
The work connects multiple concepts: ERP systems, electronic billing, Ethereum, smart contracts, Web3, Solid Pods, QR codes, and digital wallets. The key design idea is to avoid treating blockchain as a general-purpose database: verifiable payment events can be anchored on-chain, while sensitive documents remain stored in controlled, access-managed Pods.
Solid architecture
The thesis uses Solid Pods as a privacy-preserving storage layer for business documents, invoices, orders, and data access control.
ERP domain
The work starts from the accounting and ERP context, where administrative processes can become costly, manual, and error-prone.
Invoice formats
The thesis discusses the evolution from paper invoices to PDF/XML and electronic billing formats.
eBill flow
The eBill process is used as a reference for designing a more digital and traceable billing workflow.
Architecture and design
The prototype models the restaurant as an interaction between physical space, customer actions, digital ordering, document storage, and payment confirmation. QR codes connect tables and invoices to the web interface, Solid manages private resources, and the blockchain layer handles payment-related verification.
Restaurant flow
A model of incoming and outgoing restaurant flows, including customers, business actors, services, bills, and payments.
Restaurant timeline
A timeline of the customer experience, from entry to menu selection, ordering, service, billing, and payment.
Infrastructure components
The implementation combines web technologies, Solid, Ethereum, MetaMask, QR codes, eBill concepts, and deployment tooling.
Infrastructure layers
The proposed architecture separates interface, API, Solid, Pods, menu, eBill, and hash/blockchain layers.
Wallet-blockchain structure
The payment side connects Ethereum, MetaMask, Web3.js, and blockchain transactions.
Solid graph interactions
The Solid-based data flow models how orders, bills, storage, and access-controlled resources interact.
Prototype workflow
The implemented prototype follows the customer journey: access the table-specific interface, browse the menu, manage the cart, generate the bill, confirm payment, and obtain a digital document that can be connected to the accounting workflow.
Menu and cart
The user interface separates menu browsing from cart management.
Product list
Products are loaded from the restaurant data layer and exposed through the web interface.
Product description
The prototype includes product details and purchase actions.
Quantity update
The cart supports quantity changes before order confirmation.
Get bill phase
The customer can move from ordering to bill generation.
Billing phase
The billing workflow produces a payable state before final settlement.
MetaMask experience
MetaMask is used to confirm the blockchain payment transaction.
Table QR code
QR codes are used to identify the table and connect the physical restaurant space with the digital workflow.
Digital bill QR code
The invoice flow includes QR-based identification for payment and document retrieval.
Pre-invoice
The prototype generates a pre-invoice containing order, payment, and blockchain-related information.
Implementation stack
Backend and web interface
Node.js, Express, EJS, JavaScript, static assets, and Heroku-oriented deployment.
Decentralized data
Solid Pods, Inrupt APIs, WebID, access-control policies, containers, and document resources.
Payment and verification
Ethereum, MetaMask, Web3 interaction, QR codes, billing states, and transaction references.
Main contribution
- Designed a decentralized document-management and accounting prototype for a restaurant/SME scenario.
- Combined Ethereum blockchain transactions with Solid Pods to separate verifiable payment events from private business documents.
- Used QR codes to connect physical restaurant tables, bills, and digital interaction flows.
- Integrated MetaMask and Web3-style payment interaction into the customer-facing workflow.
- Explored how accounting, ERP, eBill, and blockchain concepts can be connected in a practical software prototype.
Relationship with later research
This thesis anticipates several directions that later became central in my research profile: blockchain systems, experimental prototypes, digital assets, privacy-aware data management, and the connection between technical infrastructure and real organisational workflows.