PixSim: a calibrated open-source simulator of instant-payment fraud, recovery and interdiction under analyst capacity constraints
Organizations: Instituto CERTI Amazônia, Manaus, Brazil · Universidade Federal do Amazonas, Manaus, Brazil · Universidade do Estado do Amazonas, Manaus, Brazil
Abstract
Brazil's Pix settles about 5.9 billion instant, irreversible transfers a month. A fraudulent transfer can be recovered only while the funds remain in a traceable account, and in 2025 the Central Bank's recovery mechanism (MED) returned 9% of accepted contested value. Interdiction therefore has to happen before settlement, by routing each transaction to pass, human review or block, under a finite analyst team and a regulatory hold window. To our knowledge no public simulator jointly models irreversible settlement, a regulated recovery mechanism, downstream fund dispersal and capacity-constrained review. We present PixSim, an open-source simulator of the Pix rail with these elements, calibrated to Banco Central do Brasil open data, with every parameter sourced, calibrated to one published observable, or registered as an assumption. With the model frozen, full-scale runs reproduce the 2025 recovery rate within 0.006 and its decomposition within 0.02; the February-April 2026 window is reported as a misfit and the May 2026 tracing regime as a projection. On a benchmark with a payer-side scorer, four reference policies and ten scenarios, within the simulated mule model: recovery after settlement is constrained by dispersal speed; staffing by the arrival profile cuts a fixed rule's alert expiry from 52% to 2% at constant hours; halving the team removes a fixed threshold-and-block rule's advantage over a queue-aware rule, on loss and on loss plus false-block harm (+0.106 of victim value, positive on all twenty paired seeds), while a reversal at two thirds of the team was not confirmed on independent seeds; and a synthetic scorer of held-out AUC 0.82 cuts lost value by about a quarter. Code and data: https://doi.org/10.5281/zenodo.22948895
Figures & tables
| MED 1.0 | MED 2.0 without tracing | MED 2.0 with tracing | |
|---|---|---|---|
| Window | 2025 | 2 Feb–10 May 2026 | from 11 May 2026 |
| Legal basis | Res. BCB 1, Regulamento [ 2 ] | Res. BCB 493/2025 [ 21 ] ; optional from 23 Nov 2025, enforcement waiver to 10 May | Res. 493/2025; top-up until case closure from 1 Jul (Res. 559/2026 [ 22 ] ) |
| Complaint opening | Institution channel, 1,800 s at p95 | Self-service in the paying app, 300 s at p99 | As without tracing |
| Block execution | After analysis, 24 h at p95 | On registration of the infraction notification | As without tracing |
| Accounts blocked | Root only | Root only | Root and the accounts it forwarded to |
| Returns | Regulamento deadlines | 6 h at p99 | 6 h at p99, sequential along the traced path |
| Public-data | Irreversible | Regulated | Multi-hop | Analyst | Policy acts | Open | |
|---|---|---|---|---|---|---|---|
| calibration | settlement | recovery | dispersal | capacity | on the flow | code | |
| PaySim [ 13 ] | – (private logs) | – | – | one hop | – | – | ✓ |
| AMLworld [ 14 ] | – | – | – | ✓ | – | – | data ∗ |
| CardSim [ 15 ] | ✓ | – | – | – | – | – | ✓ |
| FiFAR / OpenL2D [ 7 ] | – | – | – | – | ✓ | – | ✓ |
| FALCON [ 23 ] | – | – | – | – | ✓ (fatigue) | – | ✓ |
| Parameter | Target observable (2025) | BCB | Value | Bracket | Verified (SE) | Dist. (SE) |
|---|---|---|---|---|---|---|
| Uniform receiver share (A1.15) | Partial return share | 0.0323 | 0.0357 | [0.0356, 0.0359] | 0.0315 (0.0034) | 0.22 |
| Cautelary block prob. (A3.12) | Cautelary route share | 0.1774 | 0.267 | [0.2656, 0.2688] | 0.1736 (0.0060) | 0.63 |
| Active mule share (A3.22) | Full return share | 0.0573 | 0.0830 | [0.0820, 0.0840] | 0.0572 (0.0042) | 0.03 |
| Mule burn probability (A2.21) | Victim transfers per root mule, monthly | 3.19 | 0.168 | [0.164, 0.172] | 3.184 (0.032) | 0.20 |
| Dormant activity factor (A3.17) | (boundary) | – | 0 | [0, 0.0016] | – | – |
| Mean chain depth (A2.12) | none published | – | 2.0 (assumed) | – | – | – |
| MED 1.0 (2025) | MED 2.0 no tracing (Feb–Apr 2026) | MED 2.0 tracing | |||
| Quantity | Simulated | BCB | Simulated | BCB | Simulated |
| Recovery rate (MED route) | 0.090 | 0.142 | |||
| Returned in full | 0.057 | 0.101 | |||
| Partial (returned) | 0.032 | 0.040 | |||
| Not returned, all reasons | 0.613 | 0.614 | |||
| of which no balance | – | 0.523 | – | 0.519 | – |
| Scenario | What changes | Seeds |
|---|---|---|
| S1 baseline | Profile staffing, full scorer, team of 6 | 20 |
| S2 drift | Fraud mix, tickets and dispersal speed drift over 90 days | 5 |
| S4 half capacity | Team of 3 | 20 |
| S5 flat staffing | Same analyst hours spread evenly over the day | 5 |
| S6 no DICT | Scorer without the DICT settlement statistics | 10 |
| S7 scorer quality | Full, no DICT, no amount features, logit noise | 3 per point |
| Pass all | Budget thr. | Thr. + block | Capacity-aware | |
| Loss share | ||||
| S1 baseline ( ) | ||||
| S2 drift ( ) | ||||
| S4 half capacity ( ) | ||||
| S5 flat staffing ( ) | ||||
| S6 no DICT ( ) | ||||
| Scenario | Paired difference | 95% interval | |
|---|---|---|---|
| S1 baseline | 20 | ||
| S2 drift | 5 | to | |
| S6 no DICT | 10 | ||
| S9 MED 2.0 no tracing | 10 | ||
| S4 half capacity | 20 | ||
| S5 flat staffing | 5 | to |
| Team | Budget | Thr.+block | Cap.-aware | Paired diff. (95% CI) | Expiry (T+B / CA) |
|---|---|---|---|---|---|
| Loss share | |||||
| 6 (S1, seeds 1–10) | 0.020 / 0.008 | ||||
| 5 | 0.190 / 0.014 | ||||
| 4 | 0.587 / 0.031 | ||||
| 3 (S4, seeds 1–10) | 0.772 / 0.117 | ||||
| Loss plus harm (share of victim value) | |||||
| Scenario | Policy | Caught | Hop held | MED | Cautelary | Lost |
|---|---|---|---|---|---|---|
| S1 ( ) | pass all | 0 | 0 | |||
| budget threshold | ||||||
| threshold + block | ||||||
| capacity-aware | ||||||
| S4 ( ) | pass all | 0 | 0 | |||
| budget threshold |
| Point | AUC | Budget | Thr.+block | Cap. (prob.) | Cap. (rank) |
|---|---|---|---|---|---|
| Operating point of threshold plus block: alert precision on victim transfers / victim-value recall at the alert budget | |||||
| no amount features | / | ||||
| no DICT statistics | / | ||||
| full scorer | / | ||||
| noise | / | ||||
| noise | / | ||||
Appendix figures & tables2 assets
Supplementary material from the paper’s appendix.
Appendix
| Scenario | Probability-space | Rank-space | Paired difference | |
|---|---|---|---|---|
| S1 baseline | 20 | |||
| S2 drift | 5 | , to | ||
| S4 half capacity | 20 | |||
| S5 flat staffing | 5 | , to | ||
| S6 no DICT | 10 | |||
| S9 MED 2.0 no tracing | 10 |
| Tables | Scenario (configuration) | Hash | Seeds | Parts |
|---|---|---|---|---|
| 6 , 7 , 9 , 11 ; S7, S11, S10 reference | S1 baseline ( fullscale ) | e4a21c75 | 20260910–20260929 | 20 |
| 6 , 7 , 11 | S2 drift ( fullscale_drift ) | 8c80a08d | 20260910–20260914 | 5 |
| 6 , 7 , 8 , 9 , 11 | S4 half capacity ( fullscale_halfcap ) | cb8130c9 | 20260910–20260929 | 20 |
| 6 , 7 , 9 , 11 | S5 flat staffing ( fullscale_flat ) | 8533dca9 | 20260910–20260914 | 5 |
| 6 , 7 , 9 , 10 , 11 | S6 no DICT ( fullscale_nodict ) | b487ff4a | 20260910–20260919 | 10 |
| 6 , 7 , 11 | S9 MED 2.0 no tracing ( fullscale_s9_med2_notrace ) | 31e67de2 | 20260910–20260919 | 10 |
Financial Services
Financial services applies AI to banking, lending, payments, insurance, investment, and financial risk management.
See all 106 papers