[{"data":1,"prerenderedAt":536},["ShallowReactive",2],{"blog-\u002Fblog\u002Ffqm-flow-reconciliation-and-troubleshooting":3,"blog-surround-\u002Fblog\u002Ffqm-flow-reconciliation-and-troubleshooting":516,"blog-related-\u002Fblog\u002Ffqm-flow-reconciliation-and-troubleshooting":526},{"id":4,"title":5,"audience":6,"body":10,"cluster":468,"contentRole":469,"conversionGoal":469,"date":470,"description":471,"draft":472,"extension":473,"factCheckedAt":470,"faq":474,"featured":472,"language":469,"meta":484,"navigation":485,"order":486,"originalAsset":469,"path":487,"pillar":488,"primaryKeyword":489,"relatedProject":469,"releaseScope":490,"reviewCycle":491,"reviewStatus":492,"reviewedBy":493,"searchIntent":494,"seo":495,"sources":496,"stem":506,"tags":507,"type":514,"updated":469,"__hash__":515},"blog\u002Fblog\u002Ffqm-flow-reconciliation-and-troubleshooting.md","FQM_FLOW Reconciliation & Troubleshooting in S\u002F4HANA",[7,8,9],"sap-treasury-consultant","solution-architect","treasury-system-lead",{"type":11,"value":12,"toc":458},"minimark",[13,37,44,49,52,77,84,88,91,195,202,206,227,240,246,249,281,285,296,320,330,334,344,358,365,395,399,402,428,431,434],[14,15,16,25,26,31,32,36],"p",{},[17,18,19,20,24],"strong",{},"When a number is wrong in S\u002F4HANA Cash Management, you don't debug the cash position — you debug ",[21,22,23],"code",{},"FQM_FLOW","."," ",[27,28,30],"a",{"href":29},"\u002Fblog\u002Fone-exposure-from-operations-fqm-flow","One Exposure from Operations"," made the module a single-source design: every cash-relevant flow lands in one store, and the position, the forecast and the reporting are all ",[33,34,35],"em",{},"views"," of it. That's the good news and the whole troubleshooting method in one sentence. A position that doesn't tie isn't a broken position — it's a faithful view of a store that's missing a row, holding a stale one, or holding one with the wrong date. Find the row, and you've found the bug.",[14,38,39,40,43],{},"This is the guide the standard documentation doesn't quite write: not what One Exposure ",[33,41,42],{},"is",", but what to do at 6pm when the position is short by a number nobody can explain.",[45,46,48],"h2",{"id":47},"the-one-mental-model-that-makes-this-tractable","The one mental model that makes this tractable",[14,50,51],{},"Every troubleshooting question collapses into three:",[53,54,55,62,71],"ol",{},[56,57,58,61],"li",{},[17,59,60],{},"Should a flow exist?"," — is the source document genuinely cash-relevant, and did the derivation that makes it so actually fire?",[56,63,64,70],{},[17,65,66,67,69],{},"Does the flow exist in ",[21,68,23],{},"?"," — did the source application's integration write it into One Exposure?",[56,72,73,76],{},[17,74,75],{},"Is the flow in the view you're looking at?"," — value date, currency, bank account, liquidity item: a flow that exists can still sit outside the position or forecast slice on screen.",[14,78,79,80,83],{},"Almost every \"the number is wrong\" reduces to a ",[33,81,82],{},"no"," at exactly one of these steps. The skill is finding which one, fast — and resisting the urge to \"correct\" the position, which only hides the cause until it recurs.",[45,85,87],{"id":86},"why-a-flow-is-invisible-the-triage-table","Why a flow is invisible: the triage table",[14,89,90],{},"Work it top to bottom. Each row is a symptom, its usual cause, and where the answer lives.",[92,93,94,110],"table",{},[95,96,97],"thead",{},[98,99,100,104,107],"tr",{},[101,102,103],"th",{},"Symptom",[101,105,106],{},"Most likely cause",[101,108,109],{},"Where to look",[111,112,113,125,136,151,162,173,184],"tbody",{},[98,114,115,119,122],{},[116,117,118],"td",{},"Document posted, but no flow at all",[116,120,121],{},"Source not cash-relevant — planning level \u002F flow type \u002F liquidity-item derivation didn't fire",[116,123,124],{},"Source document's cash-management assignment; derivation config",[98,126,127,130,133],{},[116,128,129],{},"Whole source application missing",[116,131,132],{},"That source's integration into One Exposure isn't active or configured",[116,134,135],{},"One Exposure source\u002Fintegration setup for that application",[98,137,138,145,148],{},[116,139,140,141,144],{},"Flow exists but not in ",[33,142,143],{},"this"," position",[116,146,147],{},"Value\u002Fplanning date puts it in a different horizon than the view",[116,149,150],{},"The flow's date fields vs the position's date basis",[98,152,153,156,159],{},[116,154,155],{},"Flow in wrong liquidity item \u002F bucket",[116,157,158],{},"Liquidity-item derivation rule maps it elsewhere",[116,160,161],{},"Liquidity-item derivation; the flow's assigned item",[98,163,164,167,170],{},[116,165,166],{},"Right amount, wrong bank account",[116,168,169],{},"Account assignment on the source or house-bank-account mapping",[116,171,172],{},"Source document bank data; house bank account master",[98,174,175,178,181],{},[116,176,177],{},"Number was right yesterday, wrong today",[116,179,180],{},"Config changed but flows not rebuilt, or a source correction not reflected",[116,182,183],{},"Change history of derivation config; rebuild status",[98,185,186,189,192],{},[116,187,188],{},"Duplicated flow \u002F double-counted amount",[116,190,191],{},"Two sources feeding the same economic event, or a partial rebuild left a stale row",[116,193,194],{},"Source of each flow; last rebuild scope",[14,196,197,198,201],{},"The pattern to internalise: ",[17,199,200],{},"a wrong number is almost never a Cash Management bug — it's a source, a derivation rule, or a rebuild that didn't run."," Cash Management is doing exactly what it was told.",[45,203,205],{"id":204},"reconcile-per-source-never-in-aggregate","Reconcile per source, never in aggregate",[14,207,208,209,212,213,216,217,220,221,226],{},"The instinct when a position is off is to reconcile the ",[33,210,211],{},"position"," against the bank or the ledger. That tells you ",[33,214,215],{},"that"," there's a gap, not ",[33,218,219],{},"where",". One Exposure's whole point — many sources, one store — gives you a better method: reconcile ",[17,222,223,224],{},"each source application against its flows in ",[21,225,23],{},", one at a time.",[14,228,229,231,232,235,236,239],{},[21,230,23],{}," is fed from several sources — financial accounting, purchasing and sales, Treasury and Risk Management, loans, bank statement items, memo records — each through its ",[33,233,234],{},"own"," integration, not one universal pipe. So a difference is always specific: \"FI produced these documents, One Exposure holds these flows, here's the delta.\" SAP ships reconciliation apps (for example ",[17,237,238],{},"Reconcile Cash Flows",") precisely to compare cash-management flows against their sources and surface the differences.",[241,242,243],"pull-quote",{},[14,244,245],{},"Reconcile the source to its flows, not the position to the bank. The position tells you there's a problem; the source-to-flow reconciliation tells you which document, in which application, for which reason.",[14,247,248],{},"A working order of attack:",[53,250,251,257,263,269,275],{},[56,252,253,256],{},[17,254,255],{},"Scope tightly."," One company code, one date range, one source application. A gap you can't localise is a gap you can't fix.",[56,258,259,262],{},[17,260,261],{},"Reconcile that source to its flows."," Use the reconciliation app for the source; list documents with no matching flow (and flows with no matching document — that's your duplicate\u002Fstale hunt).",[56,264,265,268],{},[17,266,267],{},"Classify each difference"," using the triage table: relevance, timing, mapping or rebuild.",[56,270,271,274],{},[17,272,273],{},"Fix the cause at the source or the config"," — never by editing the position.",[56,276,277,280],{},[17,278,279],{},"Re-reconcile"," to prove the delta is gone, then move to the next source.",[45,282,284],{"id":283},"duplicates-and-stale-flows-the-quieter-failure","Duplicates and stale flows: the quieter failure",[14,286,287,288,291,292,295],{},"A missing flow is loud — someone notices the position is short. A ",[33,289,290],{},"duplicate"," or ",[33,293,294],{},"stale"," flow is quiet: the position looks plausible, just wrong, and nobody questions a number that isn't obviously broken. Two causes dominate:",[297,298,299,314],"ul",{},[56,300,301,304,305,308,309,313],{},[17,302,303],{},"Two sources for one economic event."," The same underlying cash movement integrated by two paths, so it lands twice. This is a design\u002Fconfiguration question — which source ",[33,306,307],{},"owns"," that flow — and it ties directly to ",[27,310,312],{"href":311},"\u002Fblog\u002Ftreasury-system-of-record","naming a single system of record"," for each data domain.",[56,315,316,319],{},[17,317,318],{},"A partial or failed rebuild."," Flows deleted and regenerated for one scope but not cleanly, leaving orphans from the old derivation alongside the new ones.",[14,321,322,323,326,327,329],{},"Hunt these from the ",[33,324,325],{},"flow"," side: flows in ",[21,328,23],{}," with no matching current source document are your candidates. They rarely surface on their own — you have to go looking, which is why a periodic source-to-flow reconciliation belongs in the operating routine, not just the incident.",[45,331,333],{"id":332},"when-and-how-to-rebuild","When (and how) to rebuild",[14,335,336,337,339,340,343],{},"Because ",[21,338,23],{}," is ",[33,341,342],{},"derived"," operational data, SAP provides initialization, deletion and rebuild tools — and the reason they exist is the reason you sometimes need them: change how flows are derived, and the existing store no longer matches the rules. Rebuild after:",[297,345,346,349,352,355],{},[56,347,348],{},"new or changed liquidity-item or flow-type configuration,",[56,350,351],{},"a corrected planning level or derivation rule,",[56,353,354],{},"activating a source application's integration,",[56,356,357],{},"a data correction in the source that should reflect in cash.",[14,359,360,361,364],{},"Rebuild is a ",[17,362,363],{},"deliberate, scoped operation",", and in production it earns real caution:",[297,366,367,373,379,389],{},[56,368,369,372],{},[17,370,371],{},"Test the rebuild in a non-production client first"," — same config, representative data — and reconcile the result before you touch production.",[56,374,375,378],{},[17,376,377],{},"Scope it as narrowly as the fix allows."," Company code, date range, source. A full-store rebuild is a last resort, not a reflex.",[56,380,381,388],{},[17,382,383,384,387],{},"Reconcile before ",[33,385,386],{},"and"," after."," Know the delta you expect to close; prove you closed it and nothing else moved.",[56,390,391,394],{},[17,392,393],{},"Plan it like a change",", not a click — timing, approval, a way back. A rebuild that runs at the wrong scope in a live system creates exactly the duplicate-and-stale mess this article is about.",[45,396,398],{"id":397},"what-good-looks-like","What good looks like",[14,400,401],{},"Teams that stay out of trouble treat One Exposure as what it is — a derived single store — and build the habits that follow from that:",[297,403,404,410,416,422],{},[56,405,406,409],{},[17,407,408],{},"A periodic source-to-flow reconciliation"," across the active sources, run on a schedule, so drift is caught small.",[56,411,412,415],{},[17,413,414],{},"One owner per flow",": every economic event integrated by exactly one path, decided on purpose, not discovered in an incident.",[56,417,418,421],{},[17,419,420],{},"Rebuilds as controlled changes",", tested and scoped, with before\u002Fafter reconciliation as the evidence.",[56,423,424,427],{},[17,425,426],{},"Troubleshooting from the store outward"," — should it exist, does it exist, is it in the view — instead of correcting the symptom on the position.",[14,429,430],{},"Do that, and \"the position is wrong\" stops being a mystery and becomes a lookup: which source, which document, which of three reasons. Skip it, and you'll keep adjusting a position that was only ever telling you the truth about a store you hadn't looked at.",[432,433],"hr",{},[14,435,436],{},[33,437,438,439,443,444,447,448,452,453,457],{},"Part of the ",[27,440,442],{"href":441},"\u002Ftopics\u002Fsap-treasury","SAP Treasury & Cash Management guide",". See also ",[27,445,446],{"href":29},"One Exposure from Operations & FQM_FLOW explained"," and ",[27,449,451],{"href":450},"\u002Fblog\u002Fsap-cash-management-s4hana","SAP Cash Management in S\u002F4HANA",". The ",[27,454,456],{"href":455},"\u002Fnewsletter","newsletter"," sends one finance-systems pattern, product decision or build lesson every two weeks.",{"title":459,"searchDepth":460,"depth":460,"links":461},"",2,[462,463,464,465,466,467],{"id":47,"depth":460,"text":48},{"id":86,"depth":460,"text":87},{"id":204,"depth":460,"text":205},{"id":283,"depth":460,"text":284},{"id":332,"depth":460,"text":333},{"id":397,"depth":460,"text":398},"cash-management",null,"2026-07-28","When a cash flow is missing or wrong in S\u002F4HANA Cash Management, the answer is in FQM_FLOW. A practical triage guide: why a flow is invisible, which source to check, and when to rebuild.",false,"md",[475,478,481],{"question":476,"answer":477},"Why is a cash flow missing from the cash position in S\u002F4HANA?","Because the flow never made it into FQM_FLOW — the single store One Exposure from Operations reads from. The usual causes are: the source document isn't flagged as cash-relevant (planning level, flow type or liquidity-item derivation didn't fire), the source application's integration into One Exposure isn't active or configured, the flow was generated but with a value date or account that puts it outside the view you're looking at, or the flows haven't been rebuilt after a configuration change. The position isn't wrong so much as reading faithfully from a store that's missing a row. Fixing it means finding which source should have produced the flow and why it didn't, not adjusting the position.",{"question":479,"answer":480},"How do you reconcile FQM_FLOW against the source documents?","You compare what's in One Exposure (FQM_FLOW) against the operational documents that should have fed it — FI documents, purchase orders, sales orders, treasury deals, bank statement items — for the same scope and horizon. SAP provides reconciliation apps (such as Reconcile Cash Flows) to compare cash-management flows against their sources and surface differences. The discipline is to reconcile per source application: a difference is always 'this source produced X, One Exposure holds Y', so you isolate the source, then the document, then the reason (relevance, timing or a failed rebuild).",{"question":482,"answer":483},"When should you rebuild the cash flows in S\u002F4HANA Cash Management?","After anything that changes how flows are derived: new or changed liquidity-item or flow-type configuration, a corrected planning level, activation of a source application, or a data fix in the source. Because FQM_FLOW is derived operational data, SAP provides initialization, deletion and rebuild tools precisely so the store can be regenerated to match the current configuration. Rebuild is a deliberate, scoped operation — not a daily habit — and in a production system it's planned, tested in a non-production client first, and run for the narrowest scope that fixes the problem.",{},true,3.5,"\u002Fblog\u002Ffqm-flow-reconciliation-and-troubleshooting","sap-treasury","FQM_FLOW reconciliation","SAP S\u002F4HANA — app names, transactions and reconciliation tools differ by release and between on-premise and Cloud; verify against the documentation for your system.","annual","reviewed","Tan Gravam","informational",{"title":5,"description":471},[497,500,503],{"title":498,"url":499,"accessed":470},"SAP Help — One Exposure from Operations (SAP S\u002F4HANA)","https:\u002F\u002Fhelp.sap.com\u002Fdocs\u002FSAP_S4HANA_ON-PREMISE\u002Fac319d8fa4ea4624b40a58d23e3c4627\u002Fabd32554225fea6fe10000000a423f68.html",{"title":501,"url":502,"accessed":470},"SAP Help — Flow Builder (Cash and Liquidity Management)","https:\u002F\u002Fhelp.sap.com\u002Fdocs\u002FSAP_S4HANA_CLOUD\u002F186460fdc35a4b64a713da9bb00deb1e\u002F835cc0f9ff554154bf06245b70c4c79b.html",{"title":504,"url":505,"accessed":470},"SAP Help — Reconcile Cash Flows (SAP S\u002F4HANA)","https:\u002F\u002Fhelp.sap.com\u002Fdocs\u002FSAP_S4HANA_CLOUD\u002F186460fdc35a4b64a713da9bb00deb1e\u002Feb100328e8464540b2616356eec2f62f.html","blog\u002Ffqm-flow-reconciliation-and-troubleshooting",[508,509,510,511,468,512,513],"sap","treasury","fqm-flow","one-exposure","s4hana","troubleshooting","pattern","uKGtIF1mMawcearaDYOJaO7Fq_502l8t0igHxAfwAyU",[517,522],{"title":518,"path":519,"stem":520,"type":521,"language":469,"draft":472,"children":-1},"Fit-Gap Analysis for Finance Systems","\u002Fblog\u002Ffit-gap-analysis-for-finance-systems","blog\u002Ffit-gap-analysis-for-finance-systems","text",{"title":523,"path":524,"stem":525,"type":521,"language":469,"draft":472,"children":-1},"FX Hedging Instruments: Forwards, Options and Swaps","\u002Fblog\u002Ffx-hedging-instruments-forwards-options-swaps","blog\u002Ffx-hedging-instruments-forwards-options-swaps",[527,529,533],{"path":450,"title":451,"description":528},"SAP Cash Management in S\u002F4HANA — the redesigned cash and liquidity solution: Bank Account Management, Cash Operations and Liquidity Management, on One Exposure.",{"path":530,"title":531,"description":532},"\u002Fblog\u002Fsap-bank-account-management-s4hana","SAP Bank Account Management (BAM) in S\u002F4HANA","SAP Bank Account Management (BAM) governs bank accounts and house banks as master data in S\u002F4HANA — the base cash position, statements and payments rest on.",{"path":29,"title":534,"description":535},"One Exposure from Operations & FQM_FLOW Explained","One Exposure from Operations is the hub at the centre of S\u002F4HANA Cash Management — a single store (FQM_FLOW) every cash-relevant flow feeds. Why it exists.",1785237638643]