Emailing applicants your decision
Tell wholesale applicants they've been approved, denied, or need to send more information, using your own branded emails through Klaviyo.
Approving or denying an application in Wholesale GOAT doesn't email the applicant on its own. Instead, the app sends the decision — and the reason you wrote — to Klaviyo, where you build the actual email in your own template with your own branding.
That way the email looks like it came from you rather than from an app, and you keep full control over the wording.
What you need
- Connect Klaviyo — this is what carries the decision out of the app
- A flow in Klaviyo for each decision you want to email about
Setting your application page URL
So your emails can link a denied applicant back to your form, tell the app where that form lives.
- In the Shopify admin, open Wholesale GOAT → Settings
- Under Applications, fill in Application page URL — for example
https://yourstore.com/pages/wholesale - Click Save
This is optional. If you leave it blank, just type the link into your Klaviyo template by hand instead.
Building the flows
In Klaviyo, create a flow triggered by one of these metrics:
| Metric | Send this when |
|---|---|
| Wholesale Application Approved | They're in. Welcome them and explain how to order. |
| Wholesale Application Needs Info | You need something before you can decide. |
| Wholesale Application Denied | You've turned them down. |
Each of those carries two things worth putting in the email:
{{ event.reason }}— the reason you typed when you set the status{{ event.reapply_url }}— your application page URL from Settings
So a "needs info" email might read:
Thanks for applying to our wholesale program. Before we can approve your account, we need one more thing:
{{ event.reason }}You can send that through here:
{{ event.reapply_url }}
The Klaviyo page in the app lists every variable available on each metric, so you can copy the exact names out of it.
Both variables can be empty — the reason if you didn't write one, the URL if you haven't set it. Wrap them in a conditional in Klaviyo so an applicant never receives an email with a blank space where the explanation should be.
Personalising the greeting
An applicant's first name isn't guaranteed. Only email and phone are required on an application, so if someone skipped the name field, a greeting built on {{ person.first_name }} comes out blank.
Either give it a fallback in Klaviyo, or turn on auto-create customer from form submission so names reach Klaviyo reliably.
A note on consent
These are transactional emails. Someone asked you for a wholesale account, so telling them the outcome is a service message, not marketing. Mark those flow messages as transactional in Klaviyo and they'll send regardless of subscription status.
Asking twice
If you set an application to Needs info more than once — say the certificate they sent had expired — each request sends its own email. You won't be silently blocked from chasing someone a second time.
Approval and denial emails send once per application, so re-saving an application you already decided won't email them again.
Troubleshooting
- The metric isn't in Klaviyo's dropdown: metrics only appear after they've fired at least once. Set a test application to that status to make it show up.
- Nothing arrived: check the Recent activity table on the Klaviyo page in the app. It shows whether the event reached Klaviyo, which separates an app problem from a flow problem.
- The reason is blank in the email: the reason box is optional, and an application decided before you started writing reasons won't have one.
Need help?
Reach out at hello@conspireagency.com and we'll help you get your flows set up.
Connect Klaviyo
Send wholesale tiers, companies, net terms and application events to Klaviyo so you can segment B2B buyers and automate approval, quote and renewal emails.
Customer email & phone uniqueness
Shopify requires each customer's email and phone number to be unique. Here's how that affects creating customers from applications, and how to resolve conflicts.