Guide · Strategy & transition paths
CVI Business Partner Conversion for S/4HANA: Step by Step
How to convert ECC customers and vendors to Business Partners before an S/4HANA conversion: CVI checks, sync runs, PPO errors and sign-off evidence.
Matt Angerer
October 16, 2026 · 9 min read · 19 sources
Part of the complete guide: ECC to S/4HANA Migration: The End-to-End Guide (2026)

You have to turn every customer and vendor in ECC into a Business Partner before you can run an S/4HANA system conversion. This work is called Customer Vendor Integration (CVI), and all of it happens in ECC while the system is still running. The order is: set up BP and CVI customizing, run the master data consistency checks, synchronize with MDS_LOAD_COCKPIT, clear errors in the Post Processing Office (MDS_PPO2), and then show that every record is linked using CVI_COMPL_CHK. Finish CVI before SUM touches the system. Treat the completeness result as a signed deliverable, not a technical footnote.
Why CVI blocks your conversion
In S/4HANA, the Business Partner is the only place to create, change and display customer and vendor master data. SAP's own simplification item has been clear about this since the first on-premise release: SAP Community (SAP) says only Business Suite customers that already have customer/vendor integration in place can take the conversion path.
You will see this in the Readiness Check as the simplification item "S4TWL - Business Partner Approach", listed under Database and Data Management. It covers both CVI activation and correcting customer and vendor data (SAP Community (SAP)). SAP's central reference for the process is Note 2265093. Its attached PDF walks through the full conversion of existing customers and vendors (SAP Community (SAP)).
CVI is one workstream inside the wider program described in our end-to-end ECC to S/4HANA migration guide. It is also one of the earliest things that can hold up a system conversion, because the slow part is cleaning data, not running the tools.
The CVI sequence at a glance
- CustomizeBP groupings, number ranges, roles, CVI mapping (CVI_COCKPIT)
- Check dataCVI_PRECHK finds bad tax numbers, emails, addresses
- CleanseFix in production, archive or flag dead records
- SynchronizeMDS_LOAD_COCKPIT runs, DEV → QAS → PRD
- Post-processClear MDS_PPO2 orders, re-run
- ProveCVI_COMPL_CHK empty, counts reconciled, sign-off
SAP added the CVI Cockpit (transaction CVI_COCKPIT) to bring these steps into one guided path. SAP Help says the cockpit documentation is a PDF attached to Note 2832085 (SAP Help Portal). Before the cockpit existed, the same work meant running separate reports and applying Notes from several application components (SAP Community (SAP)).
Step 1: Check customizing and master data before you sync
There are two kinds of checks. Customizing checks tell you whether CVI can map a record at all. Data checks tell you whether a specific customer or vendor will fail when it is synchronized. Run both in every client you plan to convert. The customizing check report only looks at the client you are logged on to (SAP Community (SAP)).
| Tool | What it tells you | Evidence to keep |
|---|---|---|
| CVI Customizing - Check Report (CVI_FS_CHECK_CUST) | Missing or wrong BP/CVI customizing in both directions, with links to the IMG activity that fixes it. You start it from CVI_COCKPIT under Preparation and again under Upgrade Preparation. | Clean run per client, filed before each sync |
| CVI_UPGRADE_CHECK_RESOLVE (Note 2344034), CVI_FS_CHECK_CUSTOMIZING (Note 1623677) | The older customizing reports. SAP still supports them. | Only needed if your team already uses them |
| CVI_MIGRATION_PRECHK (transaction CVI_PRECHK) | Business checks on customer and vendor data, with a jump to XD02/XK02 so you can fix single records. Lower ECC releases get it through Note 2743494. | Error count by check, trended week over week |
| PRECHECK_UPGRADATION_REPORT (Note 2216176) | Pre-check from the Business Partner side, including contact persons missing from the CVI link tables. | Zero open findings before the conversion dress rehearsal |
Sources for the table: SAP Community (SAP), TCodeSearch, SAP Community (SAP), SAP KBA 3478108, SAP KBA 2633026.
Look closely at the precheck output before you report it as clean. A result of "All applied Checks (0/0)" or message CVI_PRECHK033 ("0 records to be checked") usually means the selection didn't pick up any records. It does not mean the data passed. SAP covers both cases in KBA 3478108 and KBA 3339735.
The usual data errors are dull but there are a lot of them. Missing tax type customizing and email addresses without an @ sign are the examples SAP itself gives (SAP Community (SAP)). If your SI-Check returns errors on the Business Partner item, our guide to SI-Check return codes 7, 8 and 12 explains how to read them.
Step 2: Settle the design decisions before the first run
These decisions are hard to change once BPs exist in production. Get them written down and approved first.
- Number ranges. SAP recommends, but does not require, that BP numbers match the customer and vendor numbers (SAP Community (SAP)). Matching numbers make reconciliation and user adoption much easier.
- Customer and vendor as one BP. If a customer is linked to a vendor (KNA1-LIFNR / LFA1-KUNNR), Note 2363892 covers loading them into one BP. You can also unlink them to get two separate BPs (SAP Community (SAP)).
- Records flagged for deletion. Note 3072409 enhances MDS_LOAD_COCKPIT so it can suppress data errors on records marked for deletion (SAP FAQ). Archiving is still the cleaner way to shrink the population.
- Employees as vendors. Make sure the BAdI implementation CVI_EXCLUDE_VEND_EMPLOYEE is not active. If it is, vendors linked to employees will not synchronize (SAP FAQ).
- SAP CRM in the landscape. Do the CRM pre-synchronization steps in Note 2285062 first, and reuse the existing BP GUIDs (SAP FAQ).
- Contact persons. Vendor contact persons are mapped differently depending on the ECC release. KBA 2711712 explains the options.
Step 3: Run the synchronization and work the PPO
MDS_LOAD_COCKPIT is the synchronization cockpit. You use it to select, start and monitor runs, and to post-process the errors (SAP Community). Before the load, switch on postprocessing orders for component AP-MD for the customer → BP and vendor → BP processes (CVI_01 and CVI_02). That way each failed record becomes an order you can work instead of disappearing into a log.
Run the synchronization in DEV, then QAS, then PRD. Fix data errors in production as well as in the sandbox (SAP Community). Practitioners report that the load does not need downtime and can run over a weekend (SAP Community). Still schedule it with batch operations, because it competes with your period-end jobs.
Errors you can't fix in the run go to MDS_PPO2. A typical one is tax number plausibility (CVI_API007), which SAP documents in KBA 3207123. Assign the PPO queue to named data owners in AR and AP, not to the Basis team. They are the only people who can decide whether a tax number is wrong or whether the check customizing is too strict.
Step 4: Prove completeness and reconcile
CVI_COMPL_CHK lists customers, vendors and contact persons that are not yet synchronized. When the list is empty, the synchronization is complete (SAP Community). Don't take a clean MDS_LOAD_COCKPIT run on trust. SAP describes a case where a customer was already mapped to a BP through the old table BD001, the load ran without errors, and the customer still showed up as unconverted in CVI_COMPL_CHK (SAP Community (SAP)). KBA 3339397 covers the same symptom.
Add your own reconciliation on top of the SAP check:
- Count of KNA1 records vs. CVI_CUST_LINK entries, and LFA1 vs. CVI_VEND_LINK, per client, with every gap explained (archived, flagged or excluded by an approved rule).
- Contact persons reconciled against CVI_CUST_CT_LINK and CVI_VEND_CT_LINK.
- A sample of BPs compared field by field with the source customer or vendor: name, address, tax numbers, bank details, company code and sales area data.
- Bank details and payment methods on the sample checked by AP, because errors there cost money directly.
- CVI_PRECHK, PRECHECK_UPGRADATION_REPORT and the customizing check re-run on the final production copy used for the dress rehearsal.
Record the results in the Data Migration Reconciliation Checklist, and log the Business Partner item in the Simplification Item Test Impact Tracker.
Step 5: Decide who signs off and what to retest after conversion
Three people sign the CVI deliverable: the master data owner (completeness and accuracy), the AR and AP process owners (the sample review), and the conversion lead (all prechecks clean on the rehearsal copy). Make it an entry criterion for the first mock conversion, not a box to tick just before go-live.
After SUM finishes, switch on the opposite direction: BP → customer and BP → vendor (CVI_03 and CVI_04). Practitioners keep only CVI_01 and CVI_02 active before the conversion (SAP Community). Then test the processes that change for users:
- Create and change customers and suppliers through BP, including BP grouping, number assignment and the roles your teams actually use.
- Order-to-cash and procure-to-pay end to end on converted partners: sales order, delivery, billing, purchase order, invoice, payment run.
- Security roles: anyone who maintained master data with XD01/XK01 in ECC now needs working BP access. Cover this in the Security, Role & SoD Test Plan.
- Interfaces and custom code that create or read customers and vendors directly, including MDG, EDI partner profiles and anything that writes to KNA1 or LFA1.
Fit this into the wider plan in Testing an ECC to S/4HANA migration: a phase-by-phase plan. Use masked production copies for the rehearsal, as described in Test data for S/4HANA.
Frequently asked questions
Is CVI mandatory for an S/4HANA system conversion?
Yes. Every customer and vendor you keep must be synchronized to a Business Partner before the conversion, because the Business Partner is the only master data entry point in S/4HANA. Records you don't want to carry over should be archived or flagged for deletion so they don't block the completeness check.
Can CVI run in production while the business is working?
Yes. The synchronization runs in ECC and practitioners report it doesn't need downtime. Run it outside peak batch windows anyway, and freeze or closely watch master data changes between the final sync and the conversion so new records don't reopen gaps in CVI_COMPL_CHK.
Do Business Partner numbers have to match customer and vendor numbers?
No. SAP recommends matching numbers but doesn't require them. Matching numbers make reconciliation, interface mapping and user adoption simpler, so most programs choose it unless numbering clashes between customers and vendors rule it out.
Does CVI apply to a new implementation?
Not in the same way. In a new implementation you load Business Partners directly into S/4HANA, typically with the Migration Cockpit, so the ECC synchronization steps don't apply. The data quality problems the prechecks find in ECC still have to be fixed before the load.
Sources
- Simplification Item: Business Partner Approach / Customer-Vendor Integration (CVI), SAP Community (SAP), 2016-04-29
- SAP S/4HANA Business Partner Conversion: CVI_PRECHK tax type, SAP Community (SAP), accessed October 2026
- FAQ: CVI - Customer Vendor Integration for system conversion to SAP S/4HANA, SAP Community (SAP), accessed October 2026
- Customer Vendor Integration Cockpit, SAP Help Portal (What's New, EHP8 for ERP 6.0)
- CVI Cockpit: Enabling Movement to SAP S/4HANA through seamless BP Synchronization, SAP Community (SAP), 2019-10-29
- Overview of transaction CVI Customizing - Check Report, SAP Community (SAP), accessed October 2026
- Business Partner CVI: Master Data Consistency Checks supporting the SAP S/4HANA move, SAP Community (SAP), 2019-07-22
- S/4HANA Business Partner - Customer-Vendor Integration, SAP Community (SAP), accessed October 2026
- SAP S/4HANA Business Partner Conversion: handle old customer/vendor mapping with BD001 and BC001, SAP Community (SAP), 2023
- KBA 3478108: How to check the result returned by CVI_MIGRATION_PRECHK, SAP Support
- KBA 3339735: CVI_MIGRATION_PRECHK returns error CVI_PRECHK033, SAP Support
- KBA 2633026: Contact person is not maintained in table CVI_CUST_CT_LINK, SAP Support
- KBA 3207123: Errors CVI_API007 and CMD_API006 in MDS_PPO2, SAP Support
- KBA 3339397: Customer linked to BP still returned by CVI_COMPL_CHK, SAP Support
- Customer Vendor Integration (CVI) during S4 HANA Conversion (Brownfield), SAP Community, 2025
- CVI integration in S4 Hana conversion, SAP Community, 2026
- Important things to know before starting CVI, SAP Community, accessed October 2026
- CVI Business Partner Conversion Activities with Error Resolutions in S/4HANA Conversion, SAP Community, 2018-06-15
- CVI_FS_CHECK_CUST (CVI Customizing - Check Report), TCodeSearch, accessed October 2026
Free S/4HANA testing templates
Master test strategy, migration test plan, cutover runbook, go/no-go checklist and more.
The RISE Testing Playbook
One practical move a week for testing your ECC to S/4HANA transformation.
More on Strategy & transition paths
How this guide is made: researched with AI-assisted search across SAP documentation and practitioner sources, with every fact linked to its source. Found an error or have field experience to add? Tell us.