Introduction
This documentation provides exhaustive technical details for integrating with the FisCool driver. It is designed for software developers and system integrators who require a deep understanding of the driver's capabilities and interfaces.
The driver is architected to provide maximum flexibility, offering three distinct integration methods to accommodate various system designs, from legacy file-based systems to modern real-time applications.
Virtual Cash Register with Electronic Journal
Virtual Cash Register with Electronic Journal in FisCool.
Easily test fiscal device integrations without having 10 cash registers on your desk. If it works with the simulated device, it will work with the real one.
Complete pre-validation and more: you can view/export reports, the electronic journal, and even simulate error cases (out of paper, connection issues, response times, etc.). It behaves exactly like a normal cash register.
Note: It must be enabled in FisCool settings, at Settings -> Application Settings -> Enable simulated devices. Then, you will be able to create cash registers with Brand and Model "Simulated".
Documentation Structure
This documentation is organized into focused sections, each providing complete technical details:
- Device Operations - Complete reference of all fiscal and POS operations, with detailed parameter specifications, response formats, and edge case handling
- INP File Interface - Exhaustive guide to the file-based integration method, including command syntax, file processing, and error handling
- HTTP API - Comprehensive REST API reference with complete endpoint documentation, request/response examples, and error codes
- Headless API - Documentation for programmatic driver management (device configuration, settings, updates)
- WebSocket API - Real-time communication protocol details, including message envelopes, action codes, and client implementation examples
- Error Codes - Complete error code reference for troubleshooting and error handling
Integration Methods
-
INP File Interface
A folder-watching mechanism designed for maximum compatibility with legacy systems that operate by dropping command files into a directory. This method is asynchronous and robust, making it ideal for printing fiscal receipts and running daily reports without direct API integration.
-
HTTP API
A standard, stateless RESTful API for direct communication with the driver. It is simple to implement and ideal for applications that need to query device status or execute specific, self-contained operations on demand.
-
Headless API
A specialized API for managing the driver itself (devices, settings, updates) programmatically, enabling full automation without user interaction.
-
WebSocket API
A real-time, stateful communication channel designed for partner POS systems and applications that require instant feedback, asynchronous operations, and server-pushed events (like device status changes). This is the most powerful and responsive integration method.
Core Principles
- Unified Operations: All core actions (e.g., printing a receipt, making a POS sale) are defined as unified "Device Operations". These operations can be invoked via the HTTP API, the WebSocket API, or parsed from INP files, ensuring consistent behavior across all interfaces.
- Strongly-Typed: The modern APIs (HTTP/WS) use strongly-typed JSON structures, reducing the risk of malformed requests.
- Detailed Error Handling: The driver provides a comprehensive set of error codes to distinguish between application-level configuration issues and device-level hardware or state errors.
- Complete Documentation: Every parameter, response field, edge case, and error condition is documented with examples and best practices.
Each section provides production-ready examples, complete parameter specifications, and practical integration guidance. Use the navigation on the left to explore each integration method in detail.