Had exactly this with my shepherd's hut setup last summer. Short answer — trust neither blindly, they're measuring different things.
The BMV-712 is doing coulomb counting from a fixed reference point (your last full charge sync). If it hasn't synced recently it'll drift. The BMS is watching cell voltages and estimating from there, which is its own kind of guesswork depending on how good the BMS firmware is.
Few things worth checking:
- Has your BMV synced lately? It needs to hit your tail current threshold at full charge to reset. If your solar's been topping up gradually without hitting absorption properly it can get well out of whack
- What BMS are you running? Cheap ones (no offence) can be wildly optimistic about SOC
- How big's the discrepancy? 3-5% I wouldn't worry about. 20%+ and something's definitely off
On my Fogstar lithium bank I found the BMV-712 was the more reliable day-to-day indicator once I'd dialled in the charged voltage and tail current settings properly. The BMS SOC readout was just... cheerful.
Worth having a look at the Victron Connect app and checking your sync frequency in the history tab. If it's only syncing once a week something's wrong with your charge profile.
What's your setup — solar, mains hook-up, or both? Makes a difference to what's likely causing the drift.