Questa è una versione PDF del contenuto. Per la versione completa e aggiornata, visita:
https://blog.tuttosemplice.com/en/credit-brokerage-crm-software-architecture-boma-deep-dive/
Verrai reindirizzato automaticamente...
In today’s fintech landscape, creating management software is no longer just about digitizing paper processes, but about building resilient ecosystems capable of handling high logical complexity. When talking about a credit brokerage crm, the most common mistake is attempting to adapt generalist solutions (like Salesforce or HubSpot) to a domain that requires unique structural rigidity and relational flexibility. In this technical deep-dive, we will analyze the architectural choices behind BOMA, exploring how a vertical approach solves engineering challenges related to mortgage management, from data modeling to cryptographic security.
Most generalist CRMs rely on a linear structure: a Lead becomes a Contact, which is associated with an Opportunity (Deal). In the credit sector, this abstraction is insufficient and dangerous. A mortgage application is not an isolated entity, but a complex graph of relationships.
In designing BOMA’s database, we had to abandon standard models to embrace a relational schema with high referential integrity. The complexity lies in the many-to-many nature of the entities involved:
To handle this scenario, BOMA’s architecture uses advanced junction tables with specific attributes (e.g., role_type in the Application-Subject relationship) and rigorous foreign key constraints. This ensures that a record cannot be deleted if it is active as a guarantor in an ongoing application, preserving the integrity of financial data.
One of the most critical aspects in developing a credit brokerage crm is managing the application lifecycle. An approach based on simple status fields (e.g., a status column in the database updated manually) is prone to human error and does not guarantee procedural compliance.
In BOMA, we implemented deterministic Finite State Machines (FSM). This architectural pattern mathematically defines:
State transitions in BOMA are not simple string updates, but executions of conditional logic. For example, the system programmatically blocks the transition from the Document Collection state to the Submission to Bank state if:
This approach transforms the CRM from a simple data container into an active process guarantor, drastically reducing the rate of applications rejected for formal defects.
Handling sensitive data (financial, health, legal) imposes banking-level security standards. A credit brokerage crm must comply with stringent regulations such as GDPR and PSD2/PSD3 directives.
BOMA’s architecture adopts a security-by-design approach:
For file management (pay slips, notarial deeds), we avoided direct storage in the database (BLOB), which would degrade performance. BOMA uses secure object storage (such as AWS S3 or Azure Blob Storage) with time-limited pre-signed URLs. When an operator requests to view a document, the backend generates a link valid only for that session and that specific user, ensuring files are never publicly exposed.
Finally, a modern vertical CRM must communicate with the external ecosystem. The architecture was designed with microservices to facilitate integration with:
The use of Message Queues allows these integrations to be handled asynchronously, ensuring the system remains responsive even during peak workloads or third-party service slowdowns.
Designing BOMA required a paradigm shift compared to traditional software development. Creating the best credit brokerage crm does not just mean adding features, but engineering a data structure capable of reflecting real-world complexity, governed by rigorous state machines and protected by military-grade security standards. This architecture not only optimizes the daily operations of brokers but constitutes a strategic technological asset, capable of scaling and adapting to future regulatory evolutions in the credit market.
Unlike generalist CRMs that use linear structures, a vertical software like BOMA adopts a complex relational schema suited to the sector. This allows for the correct management of many-to-many relationships between applicants, guarantors, and properties, avoiding the limitations of standard models that treat applications as simple isolated sales opportunities.
Finite State Machines (FSM) replace simple manual status fields by mathematically defining the permitted steps in the application lifecycle. Thanks to Guard Clauses, the system prevents the application from advancing if specific criteria are not met, such as the presence of mandatory documents or adherence to risk parameters, drastically reducing procedural errors.
The platform implements a «security-by-design» approach with AES-256 encryption for data at rest and TLS 1.3 protocols for communications. Documents are not saved directly in the database but in secure object storage, accessible only via temporary links generated for the specific user session, ensuring maximum compliance with GDPR and banking regulations.
BOMA’s microservices architecture uses message queues to communicate asynchronously with external ecosystems like digital identity providers, banking portals, and Open Banking services. This structure ensures the system remains responsive and scalable even during peak workloads or third-party service slowdowns, facilitating digital onboarding and cash flow analysis.
Through advanced junction tables and foreign key constraints, the system treats each subject as a unique entity. This means a person can act as a guarantor in one application and as an applicant in another without duplicating the record, maintaining referential integrity and the historical consistency of financial data within the database.