How reconciliation works
List reconciliation reports
Report detail
Discrepancy types
| Type | Cause | Typical resolution |
|---|---|---|
ledger_only | Sly thinks it settled, rail has no record | Chase rail provider; may be lag or actual miss |
rail_only | Rail has entry, Sly ledger doesn’t | Usually a rail credit we didn’t originate (e.g. return); create adjustment |
amount_mismatch | Same txn, different amounts | Often unexpected rail fees; book delta |
timing_mismatch | Settlement date disagrees | Usually benign — rail processed next day |
duplicate | Multiple rail entries for one ledger | Request refund from rail; exceedingly rare |
Resolve a discrepancy
adjusted— you booked a correcting ledger entrywritten_off— too small to chase, absorbedchasing— external action in progress; returns to open poolno_action— benign (timing) — close without adjustment
Trigger a reconciliation run
Reconciliation runs automatically nightly, but you can force a run:Supported rails
| Rail | Settlement file source | Cadence |
|---|---|---|
ach | NACHA + Fed | Daily |
wire | Fed + OFAC | Daily |
usdc-base | Base block explorer | Every 15 min |
usdc-solana | Solana RPC | Every 15 min |
pix | Central Bank of Brazil | Hourly |
spei | Banxico | Hourly |
card-stripe | Stripe payout files | Daily |
card-adyen | Adyen settlement files | Daily |
Monitoring signals worth alerting on
- Discrepancy rate > 0.5% on any given day
- Specific rail gone quiet — no settlement file received for expected window
ledger_onlyolder than 3 days — actual missing money, not lag- Repeated
amount_mismatchon same merchant — pattern of unexpected fees
reconciliation.discrepancy.opened webhook for real-time.
Endpoints
| Endpoint | Purpose |
|---|---|
GET /v1/reconciliation/reports | List reports |
GET /v1/reconciliation/reports/:id | Report detail |
POST /v1/reconciliation/run | Trigger a recon run |
POST /v1/reconciliation/discrepancies/:id/resolve | Resolve discrepancy |
Monthly close workflow
A typical month-end:- Trigger a full-month recon per rail
- Review the discrepancy summary
- Book adjusting entries for unresolved amount mismatches
- Chase open
ledger_onlyitems with rail providers - Export final report to your GL
