Turn a loyalty signup into a store customer account
Each loyalty signup creates a WooCommerce customer with billing name, email, phone and mailing address already filled in.
New Submission on your account signup form
Create a customer in WooCommerce with name, email and billing address
One-directional. A submission triggers the action — nothing is written back into your form.
A branded signup page keeps shoppers on your own design instead of the default WordPress register screen. This flow takes what they typed and builds the WooCommerce customer behind it, billing address included, so their first checkout is mostly filled in already.
Shops running a rewards or loyalty scheme reach for it first. The people who join are the ones you will email later, and having them in the store's customer list rather than a signup spreadsheet is what makes a segment like joined-this-quarter possible.
Setting it up
- 1
Publish the loyalty signup form and make Email Address and Mailing Address required. WooCommerce cannot build a usable billing address out of a half-filled record.
- 2
Decide what a signup means in your store before you build the Zap: a full customer role, or a subscriber you promote after a first purchase. The WooCommerce action asks for the role by name.
- 3
In Zapier, choose formformform as the trigger app, select the New Submission trigger, connect your account and pick the signup form.
- 4
Add WooCommerce as the action app, connect the store with its REST API consumer key and secret, and choose Create Customer.
- 5
Map Full Name across the First Name and Last Name inputs — WooCommerce stores the two separately — and send Email Address to both the account email and the billing email.
- 6
Split Mailing Address into billing address line 1, city, state and postcode. If your form collects it as one block, add a Zapier Formatter step to split it before the WooCommerce action runs.
- 7
Leave the password input empty so WooCommerce generates one and sends its own new-account email, rather than the form pretending to set a password it never collected.
- 8
Submit a real test signup, check the record under WooCommerce, Customers with the billing address filled in, then switch the Zap on.
What maps where
Using the Customer Loyalty Program Sign-Up Form as the starting point. These are its real fields — swap in your own and the mapping works the same way.
| Form field | WooCommerce |
|---|---|
| Full Name | First and last name on the WooCommerce customer record |
| Email Address | Account email and billing email |
| Phone Number | Billing phone |
| Mailing Address | Billing address line 1, city and postcode |
| Categories You're Interested In | Customer meta field used to build marketing segments |
| Preferred Communication Method | Customer meta field your email tool reads before sending |
Variations worth knowing
Add a Zapier path on "Were You Referred by a Friend or Family Member?". When the answer is yes, write Referrer's Name into a customer meta field on the new record so the referral can be checked against a real account later. Referrals that arrive without a name still create the customer; they simply skip the meta field.
Put a Zapier filter on Preferred Communication Method and let only the email answers through to Create Customer. Shoppers who chose post or text still submit and still appear in your responses, but the store's customer list stays limited to the people you can actually reach in a campaign.
If something isn't arriving
The form asks for one Full Name and WooCommerce wants two fields. Add a Zapier Formatter, Text, Split Text step on the space character, then map segment one to First Name and segment two to Last Name. Double-barrelled surnames need the last segment rather than the second.
WooCommerce refuses a second account on the same address. Put a Find Customer step before the action, matching on Email Address, then use a Zapier path that only calls Create Customer when nothing was found and calls Update Customer otherwise.
Frequently asked questions
Can the shopper set their own password on the form?
The form does not collect passwords, and it should not. Leave the password blank in the Zap so WooCommerce generates one and sends the shopper its standard set-a-password email, which is the same route the default register page takes.
Can we take the membership fee on the signup form?
Offer fixed products and priced options in the form, or ask the customer for a budget as an ordinary number field. For commissions that need a custom quote, set the final price in WooCommerce after reviewing the specification.
If we edit the customer in WooCommerce, does the submission change too?
It does not. The connection runs one way: a submission triggers the WooCommerce action and nothing is written back. The original submission stays in formformform exactly as it was sent, which is useful when you need to see what the shopper actually typed.
Related automations
- Add a made-to-order build to the catalogue as a draft
Every build request creates a draft WooCommerce product carrying the item name, its part number as SKU and the full specification.
- Draft a wholesale order from a bulk buying enquiry
Each wholesale request lands as a pending WooCommerce order with the requested line items and the buyer's billing details attached.
- Hold pre-orders as on-hold orders before a launch
Every reservation becomes an on-hold WooCommerce order with the chosen variation and quantity, so launch day starts with a real queue.
- Issue a single-use discount code to survey entrants
A completed feedback survey generates a unique WooCommerce coupon with a fixed discount and a one-use limit, tied to the shopper's email.
- Log a return request against the customer's record
Each return request finds or creates the customer in WooCommerce and records the reason and order number as a note staff can act on.
- Add a wholesale lead to your Shopify customers
Each wholesale application creates a Shopify customer with the business name, buyer contact and address already filled in.
Build the form first
The automation needs somewhere to fire from. Publish a form, connect it once, and every submission from then on runs this flow.
Start free