Customer and Business Partner
SD / O2Cintermediate

SD Customer and Business Partner Part 2: Business Partner Model and CVI Configuration

Key takeaway

How S/4HANA replaces direct customer maintenance with the Business Partner: BP categories, roles, groupings and number ranges, and the Customer Vendor Integration (CVI) settings that synchronize BP data to customer and vendor tables — including number assignment and role-category mapping.

Explanation

📌 KEY POINTS
✅ In S/4HANA the Business Partner (BP) is the only entry point for customers and vendors; XD01/VD01 are redirected to transaction BP.

✅ BP category (person, organization, group), BP roles (000000, FLCU00, FLCU01, FLVN00…) and BP grouping (number range) define the BP.

✅ CVI synchronizes BP data into KNA1/KNB1/KNVV (and vendor tables) — the classic tables still exist and SD reads them.

✅ Number assignment maps each BP grouping to a customer account group, usually with "same number" for BP and customer.

⚠️ A BP without a customer role has no customer number — SD cannot use it.

━━━━━━━━━━━━━━━━━━━━
▶ WHERE WE ARE

Part 1 showed the customer data levels. Here is how S/4HANA maintains them through the Business Partner.

━━━━━━━━━━━━━━━━━━━━
▶ 1. BP BASICS

  • BP category: 1 person, 2 organization, 3 group.
  • BP role: defines the business view; customer roles FLCU00 (FI) and FLCU01 (sales); vendor roles FLVN00/FLVN01.
  • One BP can be customer and vendor at the same time (linked via CVI).

━━━━━━━━━━━━━━━━━━━━
▶ 2. GROUPINGS AND NUMBER RANGES

  • BP number range (internal or external) and BP grouping referencing it.
  • Customer account group with its own number range.
  • "Same number": BP number = customer number — simplest for users and interfaces.

━━━━━━━━━━━━━━━━━━━━
▶ 3. CVI CUSTOMIZING

  • Activate synchronization BP → customer (synchronization objects).
  • Role category mapping: which BP roles create a customer.
  • Number assignment: BP grouping → customer account group, with same-number flag.
  • Field value mappings (industry, form of address, etc.).

━━━━━━━━━━━━━━━━━━━━
▶ 4. WHAT HAPPENS ON SAVE

  • BP save triggers CVI: customer record created/updated in KNA1/KNB1/KNVV.
  • Link stored in CVI_CUST_LINK (BP GUID ↔ customer number).
  • Errors in CVI (e.g. missing mandatory customer field) block the BP save.

━━━━━━━━━━━━━━━━━━━━
▶ 5. DAY-TO-DAY IMPACT

  • SD users still see customer numbers in orders; maintenance happens in BP or Fiori apps.
  • Authorizations cover BP roles plus customer sales area objects.
  • Interfaces should use BP APIs (released APIs, e.g. Business Partner OData or SOAP), not direct table updates.

━━━━━━━━━━━━━━━━━━━━
▶ STEP BY STEP

  1. Define BP number range and grouping.
  2. Define or reuse customer account group and number range.
  3. Map BP grouping to account group with same number.
  4. Check role category mapping for FLCU00/FLCU01.
  5. Create a BP in roles 000000, FLCU00, FLCU01 and verify KNA1/KNVV.

✅ CHECKPOINT: a new BP with the customer roles appears as a customer with the same number in a sales order.

Code example

ABAP Code
===== STEP 1: BP settings (SPRO > Cross-Application Components > SAP Business Partner) =====Business Partner > Basic Settings > Number Ranges and Groupings > Define Number Ranges      (BUCF)Business Partner > Basic Settings > Number Ranges and Groupings > Define Groupings and Assign Number Ranges ===== STEP 2: CVI settings (SPRO > Cross-Application Components > Master Data Synchronization) =====Synchronization Control > Activate Synchronization Options      BP → Customer : activeCustomer/Vendor Integration > Business Partner Settings > Settings for Customer Integration >  Set BP Role Category for Direction BP to Customer               FLCU00, FLCU01 → customer  Field Assignment > Assign Keys > Define Number Assignment for Direction BP to Customer     BP grouping Z001 → account group Z001, "Same Numbers" = X ===== STEP 3: example =====BP grouping Z001 "Sold-to"  number range 01 (internal 1000000–1999999)Account group Z001          number range 01 (external, same interval)   → BP 1000345 = customer 1000345 ===== STEP 4: verify =====BP        create organization, roles 000000 + FLCU00 (company code) + FLCU01 (sales area)SE16N     CVI_CUST_LINK : BP GUID ↔ KUNNRSE16N     KNVV : KUNNR 1000345 with the sales areaCVI_FS_CHECK_CUSTOMIZING : consistency check of CVI settings

Real project scenario

On a greenfield S/4HANA project, the team created BP groupings with internal numbering but mapped them to customer account groups that also used internal numbering, without the same-number flag. BP 1000345 became customer 0000200017. Interfaces from the CRM system, which sent the BP number, failed to find customers, and order entry users had to look up two numbers. Before go-live the architect corrected the design: customer account group number ranges were set to external with identical intervals and "Same Numbers" was activated, so BP and customer numbers are always identical.

Common mistakes

  • Trying to maintain customers via XD01/VD01 in S/4HANA instead of BP.
  • Not using same number for BP and customer, creating two numbers per customer.
  • Missing role category mapping, so a BP with FLCU01 never becomes a customer.
  • Updating KNA1/KNVV directly in interfaces, bypassing BP and CVI.
  • Ignoring CVI errors that block BP save in mass loads.

Best practices

  • Use same number for BP and customer/vendor.
  • Keep a small set of BP groupings aligned with customer account groups.
  • Run CVI_FS_CHECK_CUSTOMIZING after changes.
  • Use released BP APIs for integration.
  • Train users on BP roles instead of classic transactions.

Interview angle

Questions: "How is the customer maintained in S/4HANA?", "What is CVI?", "How do you get the same number for BP and customer?"
Strong answer: BP is the single entry point; roles FLCU00/FLCU01 create the customer views; CVI synchronizes BP to KNA1/KNB1/KNVV and stores the link in CVI_CUST_LINK. Number assignment maps BP grouping to account group with the same-number flag and matching (external) customer number range. Mentions BP category, roles, groupings and that SD still reads customer tables.

Practice this lesson

Quick check

1. In an S/4HANA system where Business Partner (BP) is the leading object for master data, what concept ensures that maintaining a Business Partner automatically creates or updates the corresponding customer master record in the background?

2. Which type of data is maintained when assigning the FI Customer role to a Business Partner, enabling accounting-relevant processing such as invoicing and dunning?

3. Before Business Partner roles for customers can automatically synchronize to classic customer master records, what configuration must be in place to link BP number ranges with the corresponding customer account groups?

Interview questions

1. A regional finance team reports that a newly created customer via Fiori Manage Customer Master Data app cannot be used in a sales order because the required sales area is missing. Walk through how you would diagnose and resolve this.

Answer it in your own words first, then compare.

2. A BP was created in the Fiori app with roles 000000 and FLCU00 only. Finance can post to it, but sales cannot use it in orders. Explain why and what is needed.

Answer it in your own words first, then compare.

Practice more with Interview AI →

Reference-verified: the steps are checked against official SAP documentation and tutorials, and object and field names in the sample code are checked for consistency. The code has not been compiled or run on an SAP system by ERPClimb. Syntax marked release-dependent varies by SAP release, so check it in your own system.

More lessons in this topic

Interview questions on this topic

Related SAP topics