Espero que esta pregunta no sea demasiado amplia. En el futuro, es posible que deba agregar algunos sistemas de contabilidad y de seguimiento financiero a algunas aplicaciones (en su mayoría aplicaciones basadas en la web, pero mis preguntas también se refieren a las aplicaciones de escritorio).
En teoría, crear un registro simple de transacciones financieras es teóricamente fácil. Una tabla de base de datos con algunas columnas podría hacer el trabajo. Incluso MS Access, Excel o incluso un simple archivo de texto ASCII se pueden usar para almacenar fechas de transacciones, ID de cuentas y montos en dólares. Sin embargo, creo que incluso una tabla SQL con una copia de seguridad frecuente con integridad transaccional puede no ser lo suficientemente robusta para un seguimiento financiero serio.
Escucho términos como "contabilidad de doble entrada", y tengo la sensación de que la mayoría de las aplicaciones de seguimiento financiero (por ejemplo, Mint.com o GnuCash) tienen una estructura de datos o un proceso mucho más complicado para realizar la doble Asegúrese de que todo se integre perfectamente, exactamente como debería, y que nunca se pierdan o corrompan datos.
Mi pregunta es: Al diseñar una aplicación para rastrear transacciones financieras, ¿qué consideraciones especiales de diseño se deben hacer? Parece que podría haber tantos problemas potenciales ... problemas con la precisión de redondeo, paridad controles, algún tipo de proceso de auditoría, copias de seguridad especiales, seguridad / cifrado, formas adicionales de proteger los datos en el caso de un fallo en el ingreso de datos ... Realmente no sé lo que debería preguntar específicamente, pero recibo la sensación de que la industria de la programación tiene un conjunto de mejores prácticas de las que no sé nada. ¿Qué son?
Editar:
Parece que abrí una lata más grande de gusanos de lo que esperaba. Para aclarar, estoy pensando específicamente en dos tipos de aplicaciones:
- Aplicaciones de tipo "Verificar registro" como GnuCash o Quicken que mantienen un registro de transacciones individuales para su propio uso.
- Aplicaciones que rastrean la facturación / crédito / o "puntos" para proveedores y clientes que tratan con una empresa.
Probablemente no haré banca directa o (AFAIK) cualquier cosa que tenga un montón de regulaciones gubernamentales relacionadas con las finanzas adjuntas.