stuff
This commit is contained in:
parent
0e7af36270
commit
9607c41b54
3 changed files with 244 additions and 0 deletions
94
log.md
94
log.md
|
|
@ -1,5 +1,99 @@
|
||||||
# Log
|
# Log
|
||||||
|
|
||||||
|
## 2025-08-13
|
||||||
|
|
||||||
|
### Meeting with Luis
|
||||||
|
|
||||||
|
- We sit down to discuss UIF:
|
||||||
|
- Report docs: (https://drive.google.com/drive/folders/17dhJdF5cUDT50g4-FhAEaonqatH8SMzR)
|
||||||
|
- Law: https://drive.google.com/file/d/1gQ8F96C_kmJe7oLvXxML7CODjPE32zun/view
|
||||||
|
- Open topics
|
||||||
|
- Does the documentation in these files cover 100% of what we need to do, UIF wise? Or should we add anything in there?
|
||||||
|
- Are these docs up to date?
|
||||||
|
- What does "having" these reports mean? Is file generation good enough for an audit? Do we need to worry about integrating with UIF systems earlier than launch?
|
||||||
|
- Are there any XSD validation files somewhere, like the ones from the Central de Riesgos?
|
||||||
|
- No.
|
||||||
|
- We should build it.
|
||||||
|
- Confirm that the Excel templates and the PDF forms are just illutrative and not really relevant for our case
|
||||||
|
- Propose that I build an inventory of what needs to be built and how it could be reviewed before going crazy with implementing, and that we all agree on it (including Luis)
|
||||||
|
- best way to communicate
|
||||||
|
|
||||||
|
Also generate in Excel so they can be reviewed by Marcos
|
||||||
|
|
||||||
|
we are missing transfer365 report details, do we care
|
||||||
|
|
||||||
|
reportes de efectivo -> we don't need to do since we don't do cash
|
||||||
|
|
||||||
|
otros medios -> cheques, debitos, etc
|
||||||
|
|
||||||
|
otros medios electronicos is the only applicable
|
||||||
|
|
||||||
|
we need to clarify tipo de producto
|
||||||
|
|
||||||
|
Oficial Cumplimiento -> Marco (quien es Marco?)
|
||||||
|
- actividad economica -> uses a different catalogue than the one used for KYC, we need to develop a mapping
|
||||||
|
|
||||||
|
you usually need to report the teller's identity. In our case, we can add a generic "banca electronica" identity. Unless it's a "manual", accounting driven (not UI driven) operation, in which case we would need the "oficial del banco" identity. We will need to add a field for usernames, since we right now only have email.
|
||||||
|
|
||||||
|
Do we need to create the human readable forms?
|
||||||
|
|
||||||
|
Should we check absolutely any transaction above the thresholds
|
||||||
|
|
||||||
|
Reporting suerly applies to the current account transactions, but not to the collateral account. We should confirm with Marcos. Perhaps on liquidation?
|
||||||
|
|
||||||
|
|
||||||
|
#### Clean notes after meeting
|
||||||
|
|
||||||
|
- On which reports we need to do:
|
||||||
|
- We have confirmed with Luis that we need to generate the 5 reports here (https://github.com/GaloyMoney/knowledge-base/pull/14/files).
|
||||||
|
- Yet it seems only `07 UIF Método Reporte Diario de Otros Medios Electrónicos.pdf` applies to us given that all of our operations are digital.
|
||||||
|
- `03 UIF Método Reporte Diario de Efectivo` and `04 UIF Método Reporte Mensual de Efectivo` only apply to physical cash transactions, so they don't apply to Volcano since it doesn't handle cash.
|
||||||
|
- `05 UIF Método Reporte Diario de Otros Medios` and `06 UIF Método Reporte Mensual de Otros Medios` apply to other bank methods such as checks.
|
||||||
|
- He also mentioned that there is a sixth report, not listed there, related to the transfer365 payment rail. He doesn't have details on that report at the moment, but thinks it doesn't apply to us since we don't do transfer365 transactions.
|
||||||
|
- On how we need to deliver it:
|
||||||
|
- The end stage in production is to integrate with the UIF systems via XML delivery, but this will only happen when we're actually launching.
|
||||||
|
- For the current stage and to satisfy the audit, we will simply produce files.
|
||||||
|
- Technically, we need to produce XML files as described by the UIF documentation. But we will also produce CSV-structured exports that are easy to consume by humans so that auditors and regulators can easily check the info (this has been explicitly recommended by Luis).
|
||||||
|
- On validation:
|
||||||
|
- We are not aware of the existence of any `xsd` files that we can use to validate the XML files that we must deliver to the UIF. I would propose building them ourselves according to their spec so we have something to validate against.
|
||||||
|
- On the applicability to collateral accounts:
|
||||||
|
- Luis considers that the transactions on the collateral account don't need to be reported, since they are not really change of ownership but rather just the delivery of a collateral. He equates it to how setting a house as collateral for a mortgage doesn't trigger any reporting to the UIF.
|
||||||
|
- On identifiying parties:
|
||||||
|
- When reporting a transaction, the details of everyone involved must be reported. This means that if a Volcano client receives a bank transfer of some third party to his USD account, we would need to have the personal details of that third party.
|
||||||
|
- Given that we don't currently have any way to collect that, we need to either:
|
||||||
|
- Expand `lana-bank` features to be able to do that.
|
||||||
|
- Or simply have the convention that customers can only send/receive USD from other accounts under their name.
|
||||||
|
- On identifying tellers:
|
||||||
|
- The reports expect us to inform who in the bank handles the transaction.
|
||||||
|
- Given that our operations are driven by a digital app, Luis suggests that we simply use some "Electronic Banking" generic identity, since generally there is no human at the wheel.
|
||||||
|
- But if we make transactions manually, for instance by having a Volcano employee do a transfer between different customer accounts in the bank manually via accounting, then we would be expected to inform the identity of the particular employee who did that.
|
||||||
|
- On the professional activity mapping:
|
||||||
|
- The UIF has a different taxonomy for customer profession that the one used in KYC. This needs to be added to the customer data in the transaction reports.
|
||||||
|
- We need a mapping between the KYC taxonomy and the UIF one so we can translate that in our reports and send the UIF the codes they expect. Either Luis gets it from somewhere or we painfully build it ourselves.
|
||||||
|
|
||||||
|
Open actions:
|
||||||
|
- Confirm to a 100% that we only need to do report `07 UIF Método Reporte Diario de Otros Medios Electrónicos.pdf`.
|
||||||
|
- Confirm if other reports need to simply be delivered empty, or not at all.
|
||||||
|
- Discuss with the team if we're comfortable with restricting USD transactioning with other accounts to accounts under the name of the same customer.
|
||||||
|
- Clarify where do we get the profession code mapping between KYC codes and UIF codes.
|
||||||
|
- Build the reports.
|
||||||
|
|
||||||
|
|
||||||
|
## 2025-08-08
|
||||||
|
|
||||||
|
### Feedback with Justin
|
||||||
|
|
||||||
|
Stuff I'm enjoying:
|
||||||
|
- Great engineering practices and culture
|
||||||
|
- First row seat on Bitcoin adoption
|
||||||
|
- International team
|
||||||
|
|
||||||
|
Stuff that feels sour:
|
||||||
|
- Confusion with urgency but not rushing?
|
||||||
|
- Timezones are a challenge
|
||||||
|
- For now I've been cautiously backing off, but I'll probably become a bit more noisy
|
||||||
|
- I would love to interact directly with the client when it makes sense
|
||||||
|
|
||||||
|
|
||||||
## 2025-07-30
|
## 2025-07-30
|
||||||
|
|
||||||
|
|
|
||||||
27
open-data-arch-topics.md
Normal file
27
open-data-arch-topics.md
Normal file
|
|
@ -0,0 +1,27 @@
|
||||||
|
- Supported SQL Engine
|
||||||
|
- One or more?
|
||||||
|
- If one, which? Postgres? Snowflake? BQ?
|
||||||
|
|
||||||
|
- App to DW EL
|
||||||
|
- Push all tables by default? Or craft them?
|
||||||
|
- Activate incremental loading for all tables?
|
||||||
|
- Include some kind of data contract/test to detect breaking changes? In prod? In CI? In both?
|
||||||
|
- Current lack of visibility on state of the sync
|
||||||
|
|
||||||
|
- dbt project
|
||||||
|
- conventions
|
||||||
|
- code style
|
||||||
|
- stricter definitions on things allowed/forbidden in each layer
|
||||||
|
- add docs in staging and output?
|
||||||
|
- translations only happen in output?
|
||||||
|
- usage of exposures
|
||||||
|
- testing
|
||||||
|
- unit testing for logic models?
|
||||||
|
- how thorough should be testing that a report "is valid"?
|
||||||
|
- do we need a richer sim-bootstrap?
|
||||||
|
- e2e testing for reports along with app?
|
||||||
|
|
||||||
|
- file transformation service
|
||||||
|
- how much more mature/flexible/robust do we need this to be?
|
||||||
|
- how thorough should testing be here since it's mostly glue?
|
||||||
|
- are we happy with just incrementally growing this python script? should we switch to a different approach already?
|
||||||
123
report-generation-cli-notes.md
Normal file
123
report-generation-cli-notes.md
Normal file
|
|
@ -0,0 +1,123 @@
|
||||||
|
Current issues
|
||||||
|
|
||||||
|
- [ ] Coupled to Airflow
|
||||||
|
- [ ] Can only use env vars to set where to read/point to, no other config
|
||||||
|
- [ ] Infer what reports to generate and their format from crappy name parsing instead of proper declarative definition
|
||||||
|
- [ ] Lots of hardcodes
|
||||||
|
- [ ] Validation not in place
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
List of reports that are currenlty being filed:
|
||||||
|
[
|
||||||
|
"report_nrp_41_01_persona",
|
||||||
|
"report_nrp_41_02_referencia",
|
||||||
|
"report_nrp_41_03_referencia_garantia",
|
||||||
|
"report_nrp_41_04_garantia_hipotecaria",
|
||||||
|
"report_nrp_41_05_garantia_fiduciaria",
|
||||||
|
"report_nrp_41_06_garantia_aval",
|
||||||
|
"report_nrp_41_07_garantia_pignorada",
|
||||||
|
"report_nrp_41_08_garantia_prenda",
|
||||||
|
"report_nrp_41_09_garantia_bono",
|
||||||
|
"report_nrp_41_10_garantia_poliza",
|
||||||
|
"report_nrp_41_11_garantia_fondo",
|
||||||
|
"report_nrp_41_12_referencia_gasto",
|
||||||
|
"report_nrp_41_13_referencia_unidad",
|
||||||
|
"report_nrp_41_14_referencia_cancelada",
|
||||||
|
"report_nrp_41_15_socios_sociedades",
|
||||||
|
"report_nrp_41_16_junta_directiva",
|
||||||
|
"report_nrp_41_17_garantia_prendaria",
|
||||||
|
"report_nrp_51_01_saldo_cuenta",
|
||||||
|
"report_nrp_51_02_deposito_extranjero",
|
||||||
|
"report_nrp_51_03_dato_extracontable",
|
||||||
|
"report_nrp_51_04_titulo_valor_extranjero",
|
||||||
|
"report_nrp_51_05_prestamo_garantizado",
|
||||||
|
"report_nrp_51_06_aval_garantizado",
|
||||||
|
"report_nrp_51_07_deuda_subordinada",
|
||||||
|
"report_nrp_51_08_balance_proyectado",
|
||||||
|
"report_nrsf_03_01_cliente",
|
||||||
|
"report_nrsf_03_02_depósitos",
|
||||||
|
"report_nrsf_03_03_documentos_clientes",
|
||||||
|
"report_nrsf_03_04_titulares",
|
||||||
|
"report_nrsf_03_05_agencias",
|
||||||
|
"report_nrsf_03_06_productos",
|
||||||
|
"report_nrsf_03_07_funcionarios_y_empleados",
|
||||||
|
"report_nrsf_03_08_resumen_de_depósitos_garantizados",
|
||||||
|
"report_nrsf_03_09_ajustes",
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
||||||| Print summary hash
|
||||||
|
find report_files/ -type f -print0 | sort -z | xargs -0 sha256sum | sha256sum | awk '{print $1}'
|
||||||
|
|
||||||
|
||||||| Print individual name and hash
|
||||||
|
find report_files/ -type f -print0 | sort -z | xargs -0 sha256sum
|
||||||
|
|
||||||
|
|
||||||
|
||||||| hash before starting to fuck around with declarative approach:
|
||||||
|
67b9a95ef945b8b194bdf01ecae2f82fe040c1af583c3a30766bac0b7c2b2c3b
|
||||||
|
|
||||||
|
and individual ones
|
||||||
|
|
||||||
|
9883dd64373c7dba4812aaca2075b7e90c4a8774724bcc3e70086926bc946499 report_files/reports/dev/nrp_41/garantia_aval.csv
|
||||||
|
179ff63cd6f143ca832710180a9b8f0dc27b7c46ffb117c5e3fd775de41b0f85 report_files/reports/dev/nrp_41/garantia_aval.xml
|
||||||
|
9adb935ca335dcab64bed8c6d6f661f3b8081cfb2484e323f4995d5f24647708 report_files/reports/dev/nrp_41/garantia_bono.csv
|
||||||
|
179ff63cd6f143ca832710180a9b8f0dc27b7c46ffb117c5e3fd775de41b0f85 report_files/reports/dev/nrp_41/garantia_bono.xml
|
||||||
|
db68a6bc8f083287d1a7f19555b6b9ed5514c6070e9f0b65869232cada3b1f09 report_files/reports/dev/nrp_41/garantia_fiduciaria.csv
|
||||||
|
179ff63cd6f143ca832710180a9b8f0dc27b7c46ffb117c5e3fd775de41b0f85 report_files/reports/dev/nrp_41/garantia_fiduciaria.xml
|
||||||
|
e3219507569666f7b461c9c643556501081b275ef67062bb850583a2eb98c2ff report_files/reports/dev/nrp_41/garantia_fondo.csv
|
||||||
|
179ff63cd6f143ca832710180a9b8f0dc27b7c46ffb117c5e3fd775de41b0f85 report_files/reports/dev/nrp_41/garantia_fondo.xml
|
||||||
|
2e03bef6b5dda570d918e1124d8f7b0bde39dd9af191982a9a3f8bd0688c451c report_files/reports/dev/nrp_41/garantia_hipotecaria.csv
|
||||||
|
179ff63cd6f143ca832710180a9b8f0dc27b7c46ffb117c5e3fd775de41b0f85 report_files/reports/dev/nrp_41/garantia_hipotecaria.xml
|
||||||
|
4e5f0ff464abeae63cca4b7b9b464a54c35f0ff77a526ca347fb98304c7beea3 report_files/reports/dev/nrp_41/garantia_pignorada.csv
|
||||||
|
f33a8e7c5ca652432c10c794b57faf8692dc9cf604aab602b644292d3702fd2d report_files/reports/dev/nrp_41/garantia_pignorada.xml
|
||||||
|
064728714c01e84cf92967a03061dc659fb5a4080de4a15959c8659e5e79c4c2 report_files/reports/dev/nrp_41/garantia_poliza.csv
|
||||||
|
179ff63cd6f143ca832710180a9b8f0dc27b7c46ffb117c5e3fd775de41b0f85 report_files/reports/dev/nrp_41/garantia_poliza.xml
|
||||||
|
59c37b77da9754b4c05bf9d15b60f459b75c9a53a3ecf83df3260ec8c5cfb696 report_files/reports/dev/nrp_41/garantia_prenda.csv
|
||||||
|
2e03bef6b5dda570d918e1124d8f7b0bde39dd9af191982a9a3f8bd0688c451c report_files/reports/dev/nrp_41/garantia_prendaria.csv
|
||||||
|
179ff63cd6f143ca832710180a9b8f0dc27b7c46ffb117c5e3fd775de41b0f85 report_files/reports/dev/nrp_41/garantia_prendaria.xml
|
||||||
|
179ff63cd6f143ca832710180a9b8f0dc27b7c46ffb117c5e3fd775de41b0f85 report_files/reports/dev/nrp_41/garantia_prenda.xml
|
||||||
|
9461e97b72d8c69fea39a9d4b18dbe97ff482d4a186c8370a08bcc4b94a4e772 report_files/reports/dev/nrp_41/junta_directiva.csv
|
||||||
|
179ff63cd6f143ca832710180a9b8f0dc27b7c46ffb117c5e3fd775de41b0f85 report_files/reports/dev/nrp_41/junta_directiva.xml
|
||||||
|
446520a75f7125eefbe1d7f251f2dab2640772aec04340af7feb4d88f4fba866 report_files/reports/dev/nrp_41/referencia_cancelada.csv
|
||||||
|
179ff63cd6f143ca832710180a9b8f0dc27b7c46ffb117c5e3fd775de41b0f85 report_files/reports/dev/nrp_41/referencia_cancelada.xml
|
||||||
|
a36c439dd3af4639c4ccc61933b7287e5b681303632df1309eb21932750256c9 report_files/reports/dev/nrp_41/referencia.csv
|
||||||
|
420d5e09dfa6cb1948cf74b613acfb98dcfa13d8c2b1233267842fe8e679ae31 report_files/reports/dev/nrp_41/referencia_garantia.csv
|
||||||
|
9306d4aa86a21793da257e93040a5fe4c5728f2a11dd926919d1f153ec89b62b report_files/reports/dev/nrp_41/referencia_garantia.xml
|
||||||
|
79af4ab08a8ad9dcb9887b6f51fba385e9b5a01c5a115ee263d637bfc93dec3f report_files/reports/dev/nrp_41/referencia_gasto.csv
|
||||||
|
179ff63cd6f143ca832710180a9b8f0dc27b7c46ffb117c5e3fd775de41b0f85 report_files/reports/dev/nrp_41/referencia_gasto.xml
|
||||||
|
087bc1df7473d208ebe4d5435ae1de6d69a58d76c7fbea3932d18b15421ccd48 report_files/reports/dev/nrp_41/referencia_unidad.csv
|
||||||
|
179ff63cd6f143ca832710180a9b8f0dc27b7c46ffb117c5e3fd775de41b0f85 report_files/reports/dev/nrp_41/referencia_unidad.xml
|
||||||
|
005a8425ecc4c0b4e9e57e5def1268f80b143373a63c15fa964a9ace69264614 report_files/reports/dev/nrp_41/referencia.xml
|
||||||
|
6ff88a8e5271e0c61431b060897ee9b81079a87d007c601f973eca1284b7d585 report_files/reports/dev/nrp_41/socios_sociedades.csv
|
||||||
|
179ff63cd6f143ca832710180a9b8f0dc27b7c46ffb117c5e3fd775de41b0f85 report_files/reports/dev/nrp_41/socios_sociedades.xml
|
||||||
|
bff301f0df802d4e3ef865b21fce80af90f3d26fa5495c2a443960b28da2cffa report_files/reports/dev/nrp_51/aval_garantizado.csv
|
||||||
|
179ff63cd6f143ca832710180a9b8f0dc27b7c46ffb117c5e3fd775de41b0f85 report_files/reports/dev/nrp_51/aval_garantizado.xml
|
||||||
|
130721155258d34b7027c3a12d7b4c2ea0243caaa8a1426fa6d6f12d54f0323d report_files/reports/dev/nrp_51/balance_proyectado.csv
|
||||||
|
1155f9b04752707180c396f7f6862a8d2010658f662d512bbdb2476a51e44b92 report_files/reports/dev/nrp_51/balance_proyectado.xml
|
||||||
|
228e5425d25f67303fdd63bb0cfc798dcbca1446dc01c72ccf7c1144c2e5cf7f report_files/reports/dev/nrp_51/dato_extracontable.csv
|
||||||
|
179ff63cd6f143ca832710180a9b8f0dc27b7c46ffb117c5e3fd775de41b0f85 report_files/reports/dev/nrp_51/dato_extracontable.xml
|
||||||
|
e20faeaad13cfb88a9d11ac5ac72ef3b917e121bec0dd29d397f472acfd65a12 report_files/reports/dev/nrp_51/deposito_extranjero.csv
|
||||||
|
179ff63cd6f143ca832710180a9b8f0dc27b7c46ffb117c5e3fd775de41b0f85 report_files/reports/dev/nrp_51/deposito_extranjero.xml
|
||||||
|
f0bba23a129f8b62de86b8010e09af5e1ea5bbe76e1e958bcd38e035b54aa74e report_files/reports/dev/nrp_51/deuda_subordinada.csv
|
||||||
|
179ff63cd6f143ca832710180a9b8f0dc27b7c46ffb117c5e3fd775de41b0f85 report_files/reports/dev/nrp_51/deuda_subordinada.xml
|
||||||
|
d8bd2753cf6e306499040266f96c3e1af9b8c9be34a03d53e2a2424a7f7245b8 report_files/reports/dev/nrp_51/prestamo_garantizado.csv
|
||||||
|
179ff63cd6f143ca832710180a9b8f0dc27b7c46ffb117c5e3fd775de41b0f85 report_files/reports/dev/nrp_51/prestamo_garantizado.xml
|
||||||
|
7fdd162497baa61decbd2f9637db3769521479b0092efe4ed457d95fd944a36c report_files/reports/dev/nrp_51/saldo_cuenta.csv
|
||||||
|
24148e2cfa3cea6fc3799f721a413f4d8351aceb5f18215912b0f5a4129ad1d6 report_files/reports/dev/nrp_51/saldo_cuenta.xml
|
||||||
|
d79f6ff228cbdc75504544e0a3a4e17e6c84d36f76c795eca86214558a82d2e7 report_files/reports/dev/nrp_51/titulo_valor_extranjero.csv
|
||||||
|
179ff63cd6f143ca832710180a9b8f0dc27b7c46ffb117c5e3fd775de41b0f85 report_files/reports/dev/nrp_51/titulo_valor_extranjero.xml
|
||||||
|
5c8ba503ccf2cae1439f4e14512c636eb3371ba268fc978a922df8f6eda69b10 report_files/reports/dev/nrsf_03/ajustes.csv
|
||||||
|
a51ee5cdea1a34278e7b325a4daf274ae83ecff3b7d5b50094461bbf3b914660 report_files/reports/dev/nrsf_03/ajustes.txt
|
||||||
|
625924bfe6b5a886e9ae877a0596682e3aa7614c1e78bc1db0c8a86edc8d9f1e report_files/reports/dev/nrsf_03/productos.csv
|
||||||
|
ff44a4dabc6beabd4572a115997b0231c26a57995aaedd229b7f967e092b5e10 report_files/reports/dev/nrsf_03/productos.txt
|
||||||
|
ada8a8651b8ce7294e553102761cc9772883d44d8ed23c27b67a624134622f3a report_files/reports/dev/nrsf_03/titulares.csv
|
||||||
|
7c6483c48fa0e963609575682537418db0e79920a37f4851dc07ff940f3e4abe report_files/reports/dev/nrsf_03/titulares.txt
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
f6db153d045af9637883ab12d97efdb7b4d678b98257259f8d560f86d7875132
|
||||||
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue