Dissenyar un backend de wallets financers implica assumir una responsabilitat crítica: garantir que cada transacció es registri de forma atòmica, consistent i immutable. Cap error de concurrència, reintent de xarxa o fallada d'infraestructura pot provocar la creació o pèrdua de diners. Aquest article aborda l'arquitectura d'un nucli de wallet usant PostgreSQL com a font de veritat, Node.js per a la lògica de transferència i Kafka per notificar als serveis perifèrics. Es tracta d'un enfocament que prioritza la integritat financera mitjançant comptabilitat de doble entrada, bloqueig de files i claus d'idempotència. El patró descrit és extrapolable a sistemes de pagaments, plataformes d'inversió o qualsevol aplicació que gestioni saldos. A Q2BSTUDIO, com a empresa especialitzada en aplicacions a mida, apliquem aquests principis en cada projecte que requereix una gestió fiable de dades sensibles.
La base del disseny rau en un esquema relacional on el saldo de cada compte és un valor calculable a partir de les entrades comptables immutables. Emmagatzemar els diners en unitats menors enteres (cèntims) evita els errors d'arrodoniment dels tipus flotants. Cada transferència s'executa dins d'una transacció de base de dades: primer s'intenta inserir un registre de transferència amb una clau única d'idempotència; si ja existeix, es retorna el resultat original sense modificar saldos. Després es bloquegen ambdós comptes en ordre establert (ordenant els ID) per evitar interbloquejos, es verifica que el compte origen tingui fons suficients, s'actualitzen els balanços i es registren dues entrades comptables (dèbit i crèdit). Només després de confirmar la transacció s'emet un esdeveniment a Kafka. Aquest enfocament garanteix que cap reintent dupliqui un moviment i que cap fallada posterior al commit faci perdre l'operació, tot i que per a una fiabilitat total es recomana utilitzar el patró d'outbox transaccional, on l'esdeveniment es persisteix a la mateixa base de dades abans de publicar-lo.
La integració amb Kafka permet que la resta del sistema reaccioni de manera asíncrona: notificacions, analítica, motors de frau o ia per a empreses poden consumir els esdeveniments sense alentir el flux principal. Per a entorns productius convé que els consumidors també siguin idempotents, ja que Kafka garanteix lliurament almenys un cop. A més, la conciliació periòdica entre el saldo emmagatzemat i la suma de les entrades comptables permet detectar qualsevol desviació d'hora. A Q2BSTUDIO integrem serveis cloud aws i azure per desplegar aquests sistemes amb alta disponibilitat, i apliquem ciberseguretat a cada capa de comunicació. També desenvolupem agents IA per automatitzar la detecció d'anomalies i oferim serveis intel·ligència de negoci amb power bi per visualitzar l'estat de la cartera en temps real. Combinem intel·ligència artificial amb programari a mida per construir plataformes financeres robustes i escalables, adaptades a les necessitats específiques de cada client.

.jpg)


