Wholesale buyers usually expect to be invoiced rather than to pay at checkout. Clay lets you offer exactly that: a wholesale customer who registers through your registration form is turned into a Shopify B2B company, and a payment term rule decides — based on the customer's tags — which net term that company gets. From then on, when that buyer checks out, Shopify turns their order into a draft order carrying their payment term (for example NET 30), so you can review it and invoice them instead of collecting payment up front.
This guide walks the whole chain end to end: form → approval → company → payment term → draft order.
Prerequisites
The Advance plan or higher. Payment terms are a paid feature. If your plan doesn't include it, the Payment terms screens show an upgrade banner instead of the create button.
A published registration form. This guide uses the Wholesale registration form that ships with the app.
Address fields on that form. This is not optional for this feature — see Step 1.
B2B companies available on your Shopify plan. Payment terms live on a company location, which is a Shopify B2B object. Clay itself no longer restricts company creation by plan, but if your store can't create B2B companies, Shopify's own error is shown on the approval screen.
Step 1: Make sure your form collects a full address
Payment terms are not stored on the customer — they're stored on the company location that Clay creates for that customer. That location is built from the address the customer types into your registration form. So the address fields on your form are what make the whole feature possible.
The Wholesale registration form already includes them: Company address, Customer city, Customer state province, Customer country code and Customer zip code. Any field whose name starts with Customer is mapped onto the customer record in Shopify.
The one thing you must not skip: the Customer country code field. If a submission arrives without a valid country, Clay still creates the company — but it creates it with no location at all. And with no location, there is nowhere to attach a payment term, so the buyer will never see NET 30 no matter how your rules are set up. Keep the country field on the form, and mark it required.
If you're building a form from scratch, add these from Add element, where they're grouped under Address.
Step 2: Open the form's account settings
Company creation is a per-form switch, so you turn it on inside the form you want it to apply to. Open the form, then use More actions in the top right and choose Account settings.
Step 3: Turn on company creation
Tick Create Shopify Company for all submissions of this form. As the help text says, approving a submission from this form will now create a B2B company with the customer as its contact, rather than just a plain customer account.
The second checkbox, Automatically approve customers on submission, approves people the moment they submit — no manual review. Leave it off if you want to vet applications yourself, which is what the rest of this guide assumes. (It's also what lets you add a tag by hand at approval time, as in Step 6.)
Save twice. The dialog's own Save button only stages the change; the form itself is still dirty afterwards, and Shopify shows an Unsaved changes bar at the top of the admin. Click Save there too, and wait for the bar to disappear. If you navigate away while that bar is still showing, the setting is silently discarded. To confirm it stuck, reload the page and reopen More actions → Account settings — the checkbox should still be ticked.
Step 4: Find the new submission
When someone submits the form, they appear under Customers with the status Pending. Nothing has been created in Shopify yet at this point — Clay is holding the application for your review.
Behind the scenes: a pending application exists only inside Clay. No Shopify customer, no company, no tags. That's why rejecting an application leaves nothing behind in Shopify.
Step 5: Review the application
Open the row to see everything the customer submitted. The Customer information card on the left shows the address you collected in Step 1 — this is the exact data that becomes the company's location and shipping address.
Notice the Account configuration card on the right already reads Create company account. That's your form setting from Step 3 carrying through. You can still override it per customer here — switch it to Create customer account if this particular applicant shouldn't get a company.
This is also where you'd turn on Company tax exempt, which applies to every location of the company.
Step 6: Add the tag that selects the payment term
Tags are the link between a customer and a payment term. A payment term rule says "customers with tag X get NET 30", so the customer needs that tag.
Type the tag into Customer tags and pick Add net30 from the list. Tags you've used before are suggested, and brand-new ones can simply be typed.
Tags can also arrive automatically — from your form's Default tag setting, or from a customer group — so you won't always add them by hand. What matters is that the tag is on the customer by the time you want the payment term to apply.
Step 7: Approve
Set Status to Approved, then save from the Unsaved changes bar.
Approving is the moment everything happens. In one step Clay:
creates the B2B company in Shopify with this customer as its contact,
creates the company's location from the submitted address,
pushes the customer's tags to Shopify,
assigns a customer group if one of the tags matches a group,
applies any matching payment term to the new location,
and sends the customer their account approved email with an activation link.
Step 8: Confirm the company was created
Once saved, the Account configuration card locks and tells you "A Shopify company has already been created for this customer." The status dropdown locks too — approval is a one-way door in this screen.
If the email is already in use: Shopify won't let two customers share an email, so if the applicant's address already exists on your store, Clay shows a Link to existing customer account? prompt instead of failing. Choosing to link makes the company using the existing customer as its contact, and merges the tags from both records.
Step 9: Open payment terms for draft orders
In the app navigation, go to Payment terms. There are two separate features here, and it's easy to pick the wrong one:
Payment terms for online orders reorders the payment methods shown at your normal online checkout. Not what you want here.
Payment terms for draft orders is the one that offers NET 30 / NET 60 and turns B2B checkouts into draft orders.
Step 10: Create the NET 30 rule
A rule has three parts:
Term name — for example NET 30 wholesale buyers. This is internal only; the customer never sees it.
Customer configuration — Include: Customers WITH these tags, then the tag that identifies these buyers. Here that's the
net30tag from Step 6. Tags you already use are suggested; you can also type a new one.Payment term configuration — Apply net term within, where you pick the term itself: Due on receipt, NET 7, NET 15, NET 30, NET 60 or NET 90. There's also No payment terms, which keeps orders coming through as drafts for review but attaches no net term.
New rules default to Due on receipt, so remember to change this.
Step 11: Activate it
In the Publish card on the right, change Status from Draft to Active, then save.
Don't leave it as a Draft. A rule saved as Draft is stored but does nothing at all — it isn't pushed to Shopify and no customer gets the term. Only activating it makes it real. This is the single most common reason merchants report that "payment terms aren't working".
After saving, the rule appears in the list as Active. You can have several rules side by side — here a NET 7 rule for clay_wholesale buyers and the new NET 30 rule for net30 buyers.
Behind the scenes: activating or editing an active rule starts a background sync that walks every customer who has a company and updates their company locations. It runs in batches to stay within Shopify's rate limits, so on a large store give it a few minutes rather than expecting an instant change. Approving a new customer is different — the term is applied immediately, as part of the approval.
Step 12: Verify on the company
The proof is on the company itself, in your Shopify admin under Customers → Companies. Open the company and look at the Customizations panel on the right.
Two things should have changed:
Payment terms: Net 30 — the term from your rule.
Checkout: Submit as drafts for review — this is what converts this buyer's checkout into a draft order.
Notice also that the location's address matches what the customer typed into the form back in Step 5. That's the address chain working end to end.
Step 13: What the buyer sees at checkout
Nothing further is needed from you. When this buyer signs in to your store and reaches checkout, the payment step no longer asks them to pay:
A notice reads "You'll be on Net 30 terms once your order is confirmed."
Choose payment method later is selected for them, alongside the normal card option.
An optional PO number field appears, so the buyer can reference their own purchase order.
The summary splits into Due today (zero) and Total due later for the full amount.
The button says Submit for review rather than Pay now.
Step 14: The draft order in your admin
When the buyer submits, the order arrives under Orders → Drafts rather than as a paid order. Open it and you'll find the term already filled in:
Payment due later is ticked.
Payment terms: Within 30 days, with the issue date set to the day the order came in.
A line spelling it out: "Payment due on 11 October 2026 (Net 30). You'll be able to collect the balance from the order page."
The Company is linked on the right, and the shipping and billing addresses are the ones from the company location.
From here you review the order, adjust anything that needs adjusting, then Send invoice or Create order — and collect payment when the term falls due instead of up front. The order's timeline also records that a review requirement was added for this order, which is the trace of the draft-order rule doing its job.
Terms are attached to the company location, not to the individual — so every buyer at that company location gets the same terms.
Changing or removing terms later
Different term: edit the rule's Apply net term within and save. The background sync pushes the change to every matching company.
Move a customer to a different term: change their tags. Tag changes flow back into Clay automatically and re-trigger the sync for that customer.
Stop offering terms: set the rule to Inactive. Clay clears the terms and turns off draft-order checkout — but only on locations it configured itself. Any company you set up by hand in the Shopify admin is left untouched.
Troubleshooting
The customer has no company. Payment terms live on a company location, so a customer with only a plain customer account can never receive one. Open the customer in Clay and use Account configuration → Create company account to upgrade them.
The company exists but has no location. This happens when the submission had no valid country — see the warning in Step 1. Terms can't apply without a location. Add a location to the company in the Shopify admin; the next sync will pick it up and apply the term.
The rule is saved but nothing changed. Check its status. A rule in Draft never syncs. Set it to Active and save again.
Nothing changed yet, but the rule is Active. Give the background sync a few minutes on a large store. Re-saving an active rule re-triggers it.
The customer has two tags that both match rules. There's no priority setting. The winner is decided by the order the tags sit on the customer — the first tag that matches any active rule wins. Because that order isn't something you control precisely, avoid overlapping rules: use one distinct tag per payment term.
The wrong term appears. Check the customer's tags in Clay against your rule's tags. Remember tags can arrive from the form's default tag or a customer group, not just from what you typed at approval.
The buyer still pays at checkout. Confirm the company location shows Submit as drafts for review (Step 12). If it doesn't, the rule never applied — work back through the checks above.















