WooCommerce is built for B2C. But with the right plugins and configuration, it works for B2B too. We've built B2B stores with customer-specific prices, quote functions, and approval flows. It requires more work, but the result can be really good.
Customer-specific pricing
WooCommerce Wholesale Prices (free version available) or B2BKing. Create a "Wholesale" role with custom prices per product or category. Customers logging in with wholesale accounts see different prices than regular consumers. Prices can be set as fixed price, percentage discount, or price group.
Hidden prices
Many B2B stores don't want to show prices to non-logged-in visitors. Catalog Visibility Options or B2BKing lets you hide prices and "Add to cart" buttons for guests. Instead it shows "Log in for pricing" or "Request quote".
Quote function
YITH Request a Quote or WooCommerce Quote Requests. The customer fills the cart and requests a quote instead of paying. You review, adjust prices if needed, send back the quote. The customer approves with one click.
New customer approval
The New User Approve plugin requires manual approval before new accounts are activated. Good if you only want to give access to verified businesses.
Invoice instead of card payment
WooCommerce PDF Invoices & Packing Slips plus a "Pay by invoice" payment method (manual payment in WooCommerce). Set payment terms (net 30) in the terms message. Combine with credit checks if you want to be careful.
B2B in WooCommerce requires three to five plugins and some configuration. But the alternative (a dedicated B2B system) costs ten times more and takes months to implement.