LedgereeStart free trial
B2B orders, done right

Booking Shopify B2B orders -- correctly, not as a generic consumer sale.

The moment an order carries a buyer GSTIN, it needs to become a completely different kind of invoice -- a real tax-credit document, with its own ledger, its own voucher, kept out of your ordinary retail aggregate entirely.

The problem with a generic connector

A GSTIN captured but never booked is worse than no GSTIN at all.

Shopify has no native GSTIN field. Merchants who sell B2B usually solve capture with a checkout note attribute, a metafield, or Shopify's native B2B/Wholesale feature -- but capturing the GSTIN is only half the problem. It has to actually reach the invoice, correctly matched to the right customer, every time. At least one competing Shopify-to-Zoho connector reportedly drops the captured GSTIN entirely and books every buyer as a plain consumer -- which quietly blocks the buyer's own input tax credit until someone notices and fixes it by hand.

How Ledgeree handles it

Every part of the B2B path.

Three ways to capture a GSTIN

Shopify's checkout has no native GSTIN field -- Ledgeree reads it from a checkout note attribute, an order or company metafield, or Shopify's native B2B/Wholesale company (Shopify Plus), configurable per shop.

Matched by GSTIN, never by name

Customer names vary and typo across orders ("Acme Pvt Ltd" vs "ACME Private Limited") -- the one reliable identifier is the GSTIN, so party-ledger lookup is always keyed on it, checked before ever creating a new ledger.

Auto-created Sundry Debtor / Contact

The first order from a new B2B customer creates their dedicated ledger (name + GSTIN + state) on the fly -- idempotent, so a hundred repeat orders from the same customer never create a hundred ledgers.

Never folded into the B2C aggregate

B2B orders are excluded from the standard state-day gateway/website aggregate entirely and post against the customer's own ledger -- unlike at least one competing Shopify-to-Zoho connector that reportedly drops the captured GSTIN and books every buyer as a plain consumer.

One voucher per fulfillment, never aggregated

Unlike the B2C daily aggregate, every B2B fulfillment gets its own voucher -- so a tax-credit invoice always maps to exactly one real shipment, never a blended multi-order total.

Its own Sales / Sales Return ledger pair

B2B sales and returns post to dedicated ledgers, kept separate from ordinary retail Sales/Sales Return -- your B2C and B2B revenue never mix in one account.

Configurable GSTIN-source-not-enabled fallback

If auto-ledger-creation is switched off, a captured GSTIN is simply ignored and the order falls back to plain B2C -- a deliberate escape hatch, not a silent failure.

Get your B2B invoices right, automatically.

A 5-day free trial is enough to see a real B2B order post correctly.

Start free trial