CS-Cart & Multi-Vendor Addon ·

B2B Registration that
actually qualifies customers

Stop losing wholesale leads to generic signup forms. Give every B2B segment its own branded registration flow — with VAT validation, custom fields, and admin approval built in.

CS-Cart 4.16+ & Multi-Vendor
Installs in 30 seconds
Zero external dependencies
German + English included

A complete B2B registration system

Every feature is purpose-built for wholesale operations. Nothing you don't need, everything you do.

🧩

Multiple Registration Profiles

Create separate profiles for Wholesaler, Reseller, Distributor — each with its own URL, field set, usergroup, and approval rules. Customers self-sort.

Live EU VAT Validation

Validates EU VAT numbers against the official VIES service on form blur. Three tracked states: verified, invalid, or service unavailable — all recorded in admin.

📋

Custom Fields Per Profile

Build the form your business needs: text, textarea, date, dropdown, multiselect, radio, checkbox. Attach file fields for trade licenses and certificates.

👤

Admin Approval Workflow

Pending registrations queue up in admin. One-click approve or disable — with bulk actions and email notifications to both admin and customer.

🏪

Full Multi-Vendor Support

Each vendor manages their own B2B customers and profiles. Shared profiles work across all vendors. Scoped automatically using CS-Cart's native company system.

🔒

Native CS-Cart Security

CSRF via security_hash. CAPTCHA via built-in Image Verification (reCAPTCHA v2/v3). Bcrypt passwords. GDPR deletion. Rate limiting. Zero custom security code.

📧

5 Email Events

Pending, approved, auto-approved, admin notification, profile updated — all as native CS-Cart email template events, editable from Marketing → Email templates.

🌍

AGG / GDPR Compliant

No hardcoded Mr/Mrs titles. Salutation fields are custom Select fields — admin defines values per profile, including Mx, Divers, or none. German compliance built in.

Country & State Dropdowns

Countries pulled from your CS-Cart enabled-only list. State dropdowns rebuild automatically on country change — CS-Cart's native JS, no custom AJAX needed.

How it works

Simple for your customers, powerful for your team.

1

Customer visits URL

Each profile has its own URL like /b2b-register/wholesaler. Link it from your header, homepage, or account menu.

2

Fills the form

Personal info, company details, optional VAT validation, address, and any custom fields you've configured — all in one clean, branded form.

3

Admin reviews

New registrations appear in Customers → B2B Customers. Admin sees name, company, VAT status, and profile. Approve or disable with one click.

4

Customer gets access

On approval, the customer's usergroup is set, they receive an email, and they can log in to see B2B pricing and features.

Auto-approve vs. manual approval

📝
Registration submitted

Form submitted, user record created

🔍
VAT checked

VIES validation runs on submit

Auto-approve ON

User activated instantly, auto-logged in

Auto-approve OFF

Pending email sent, admin notified

👍
Admin approves

Usergroup assigned, welcome email sent

Example: Three profiles for three customer types

Each profile is fully independent — different URL, fields, usergroup, and approval settings.

🔗 /b2b-register/wholesaler

Wholesaler

Requires VAT, trade license upload, company turnover field. Manual approval. Assigns "B2B Wholesale" usergroup.

VAT required File upload Manual approval
🔗 /b2b-register/reseller

Reseller

Simpler form — company name, VAT optional. Auto-approves customers and assigns "Reseller" usergroup immediately.

Auto-approve VAT optional Instant access
🔗 /b2b-register/distributor

Distributor

Full form with address, multiple certificates, territory field. Strict manual approval. Assigns premium usergroup.

Full form Multi-file Manual approval

Getting started

Everything you need to set up your first B2B registration flow in minutes.

1

Download from CS-Cart Marketplace

Purchase and download the addon .zip file from your CS-Cart Marketplace account.

2

Upload in CS-Cart Admin

Go to Add-ons → Manage add-ons. Click + (upload add-on). Select the downloaded zip and click Upload & Install.

💡 The addon creates all database tables automatically on install and seeds a default "B2B" profile so you can test immediately.
3

Visit Customers → B2B Registration Profiles

You'll see a default profile already created. Click it to configure your first registration form.

4

Test the form

Open a new browser window (or incognito) and visit /b2b-register/b2b on your storefront. The registration form is live.

⚠️ If you want CAPTCHA on the form, enable the reCAPTCHA addon first (Settings → Add-ons) and configure your Google keys in Settings → Image verification.
1

Go to Customers → B2B Registration Profiles

This is your profile management screen. Each profile is a separate registration form with its own URL.

2

Click "Add Profile" and fill in General settings

Key fields to configure:

FieldWhat it does
Profile nameShown as the form heading on the storefront
URL slugThe URL suffix: /b2b-register/your-slug
Default usergroupAssigned to the customer when approved
Auto-approveYes = instant activation; No = manual admin review
Is defaultUsed when no slug is specified in the URL
Enable reCAPTCHAShow CAPTCHA on this profile's form (requires reCAPTCHA addon)
T&C pageSelect a CMS page — customer must accept before submitting
3

Configure Form Sections tab

Toggle which sections and fields appear on the form. All toggles are per-profile — you can show VAT on Wholesaler but hide it on a simpler Reseller form.

⚠️ The Company section is always visible — this is a B2B form. Company name is always required.
4

Set section headings in the Headings tab

Customize the heading text shown above each form section. Also set the Pending message (shown after submission when awaiting approval) and Success message (shown after auto-approval).

💡 Headings are multilingual — switch the language tab at the top to enter translations for each installed language.
5

Add Custom Fields in the Custom Fields tab

An inline table of custom fields for this profile. Click "Add Custom Field" to add any field type. See the Custom Fields tab above for details.

Custom fields let you collect exactly the information your business needs. Go to Customers → B2B Custom Fields (global view) or the Custom Fields tab inside a profile edit.

Field type Use case Notes
Text Company registration number, SIRET, tax ID Optional character limit
Textarea Additional notes, product interest description Multi-line free text
Date Company founding date, contract start Date picker
Select Business type, annual revenue range, country of incorporation Single choice from your defined options. Also use for salutation/title (Mr, Mrs, Mx, Dr…)
Multiselect Product categories of interest, markets served Multiple choices allowed
Radio Preferred contact method, payment terms preference Single choice, all options visible
Checkbox Services needed, accepted terms variations Multiple checkboxes
File Trade license, reseller certificate, VAT exemption document PDF, JPG, PNG, GIF — max 5MB per file (configurable per field)
Image Company logo, storefront photo Same as File, image-optimized

Salutation / Title field

The addon does not hardcode Mr/Mrs/Ms titles. To add a salutation field, create a Select custom field and add the values you want: Mr, Mrs, Ms, Mx, Dr, Prof, or leave options empty for "no preference". This gives you full control and makes the form AGG-compliant for German stores.

Field display toggles

Each field has three display toggles: Show in admin (B2B customer detail page), Show in email (included in admin notification), Show in customer account (visible after login). Control exactly what appears where.

Field ordering

Drag the handle column in the Custom Fields list to reorder fields. Position is saved automatically.

VAT validation is built directly into the addon — no external addon required. It connects to the EU's official VIES service when a VAT number is entered.

The three validation states

Verified (V)

VIES confirmed the VAT number is registered and active. Registration proceeds normally.

Invalid (I)

VIES says this number is not registered. Registration is blocked until corrected.

⚠️
Unverified (U)

VIES service was unavailable. Registration goes through — flagged for manual admin review.

Not provided

VAT field was not shown or left empty. No validation, no status recorded.

Where to see VAT status in admin

Go to Customers → B2B Customers. The VAT Number column shows the submitted number with a small badge: ✅ verified, ❌ invalid, ⚠️ unverified (needs review). Click a customer to see full details.

Inline validation on form

When the customer leaves the VAT field (on blur), an AJAX call checks the number and shows the result immediately below the field — green checkmark, red X, or yellow warning — before they submit.

Valid VAT format

Enter the full VAT number including the 2-letter country prefix. Examples: DE123456789   FR98765432101   NL987654321B01

1

View pending registrations

Go to Customers → B2B Customers. New pending registrations appear with a Disabled status badge. You can filter by status, profile, or VAT status.

2

Review a customer

Click the customer's name to open their detail page. You'll see all submitted information including personal details, company data, VAT validation result, and any custom field values (including uploaded files).

3

Approve or disable

Change the status in the detail page and save. Or use bulk actions from the list: tick multiple customers and choose Approve selected or Disable selected from the action menu.

💡 On approval, the customer's usergroup is automatically set to the one configured in their registration profile. They receive an "Account approved" email.
4

Email notifications

All email templates are editable in Marketing → Email templates — search for "B2B" to find them. Five templates: pending, approved, auto-approved, admin notification, profile updated.

The addon adds the registration button in two places automatically. Both are controlled by CS-Cart's block system — no theme editing required.

A

Header / Navigation button (primary placement)

A "Register as B2B" button is available as a block that can be placed anywhere via Design → Layouts. Look for the B2B Registration block in the block manager. Position it in your header, top navigation, or footer — wherever makes sense for your store layout.

💡 The button text is pulled from the default profile's "Top link text" field, editable per language.
B

My Account dropdown (secondary placement)

A "Register as B2B" link is automatically injected into the My Account dropdown menu — but only shown to non-logged-in users. This appears in the top-right account widget without any configuration.

Linking to a specific profile

Any link to /b2b-register/your-slug goes directly to that profile's form. Use this in banners, product pages, or email campaigns to direct different customer types to the right form.

Frequently asked questions

Does this work on plain CS-Cart (non-Multi-Vendor)?
Yes. The addon works on both CS-Cart and CS-Cart Multi-Vendor. On plain CS-Cart, Multi-Vendor features (vendor scoping, vendor panel access) are simply inactive — they don't interfere with anything.
What CS-Cart version is required?
CS-Cart 4.16+ or CS-Cart Multi-Vendor 4.16+. The addon uses CS-Cart 4.16+ API patterns (event dispatcher for emails, antibot schema for CAPTCHA). Earlier versions are not supported.
Does VAT validation work for all EU countries?
Yes. The VIES service covers all EU member states. Just enter the VAT number with the country prefix (DE, FR, NL, AT, BE…). If a member state's VIES endpoint is temporarily down, the registration still goes through but is flagged "unverified" for admin review.
How does CAPTCHA work?
The addon uses CS-Cart's built-in Image Verification system. Enable the reCAPTCHA addon (included with CS-Cart), enter your Google reCAPTCHA keys in Settings → Image verification, and then toggle "Enable reCAPTCHA" per profile. Supports both reCAPTCHA v2 (checkbox) and v3 (invisible).
Can I have salutation/title fields (Mr/Mrs/Mx)?
Yes — create a custom field of type "Select" and add the options you want: Mr, Mrs, Ms, Mx, Dr, Prof, or any other values. This approach is intentional: it gives you full control over the options per profile and makes the form AGG-compliant for German stores (Divers, or no salutation at all).
How are uploaded files stored and protected?
Files are stored outside the web root in CS-Cart's secure files directory. Only the file owner or an admin can download them. The download URL goes through a controller that verifies ownership before serving the file — no direct file access is possible.
Does uninstalling the addon remove all data?
Yes. Uninstalling via CS-Cart's addon manager drops all 9 addon-specific tables (b2b_profiles, b2b_registrations, custom fields, etc.) and removes uploaded B2B files. The standard CS-Cart user records (in the users table) are not deleted — only the B2B-specific overlay is removed.
Is the addon GDPR compliant?
Yes. When a user is deleted through CS-Cart's standard user deletion flow, the addon automatically removes all their B2B records and uploaded files. Rate limiting is included to prevent abuse of the registration endpoint.
In Multi-Vendor, can each vendor see only their own B2B customers?
Yes. The addon uses CS-Cart's native company scoping. Vendor admins see only the B2B customers and profiles belonging to their vendor. The marketplace admin sees all. Shared profiles (not vendor-specific) are visible to all vendors but managed by the marketplace admin.

Ready to qualify your B2B leads?

Install in 30 seconds. Your first registration profile is set up automatically. Start approving B2B customers today.

🛒 Get B2B Registration on CS-Cart Marketplace
By mokeshop · CS-Cart 4.16+ · German + English included