Running promotions and discounts
You can offer discounts to customers for different reasons. For example, you can fill empty spaces during a slow month. You can also reward regular customers. Or you can track results from a Google Ads campaign with a promo code.
Petsoft has several types of discount. Each type works in a different way.
One-time promo codes
These are codes, for example WELCOME20, that a customer types at checkout. Go to Facility > Promo Codes and click Add Promo Code.
| Field | What to enter |
|---|---|
| Promo Code | Pet parents or office staff enter this code, made of letters and numbers, at checkout to apply the discount. The letter case does not have to match when a customer types the code. |
| Discount Type | Service Percent Discount, Fixed Amount Off, or Trial Service Percent Discount. |
| Discount Amount/Percentage | Enter the dollar amount of the discount, or enter the percentage. For example, 80 means an 80 percent discount. |
| Promotion Start Date / Promotion End Date | The date range when the code is active. Both dates are required. |
| Disclosure | You can add optional text that Petsoft shows with the discount. |
| Active | Clear this checkbox to turn off a code without deleting it. |
| Google Campaign | Optional. See the section below. |
Active codes with their discounts and date ranges. Use the date and search filters to find old codes.
This image shows one code's setup: the disclosure text, the discount type and amount, the active date range, and the Google Campaign field.
A promo code discounts the primary service, not the whole invoice. Petsoft excludes add-ons from the calculation. A Fixed Amount Off discount cannot be more than the total of the primary service. The invoice shows a single Promo Code: [name] line. This may cause the invoice to look like a discount on the whole invoice, but the discount applies to only the primary service.
Follow these additional rules:
- Promo codes belong to a facility. If you have multiple facilities and want to use the same code at each facility, create the code at each facility.
- Each customer can use a code only once. Petsoft tracks redemptions and shows the message "Code Already Used" if a customer tries to reuse a code. If staff cancel the reservation before the customer pays the invoice, the code becomes available again. If the customer has paid the invoice, the code stays used.
- Trial Service Percent Discount codes apply only to trial reservations. If a customer tries to use one on another type of reservation, Petsoft shows the message "Promo code [name] may only be used on trial reservations."
- If a code has redemptions, Petsoft deactivates the code when you delete it, instead of deleting the redemption history.
- An invoice cannot use a promo code and a daycare coupon together. Each invoice can have only one type of discount.
Auto-applying a promo code from a Google Ads campaign
If you run a Google Ads campaign that offers new pet parents a discount when they sign up, Petsoft can apply the promo code automatically. The customer does not need to type a code.
How it works
- A pet parent clicks your ad and goes to your registration page. If auto-tagging is on, Google adds a
gclidparameter to the link. Your ad's Final URL also adds autm_campaignvalue. - When the pet parent completes registration, Petsoft saves the
gclidandutm_campaignvalues to the customer account. - If the pet parent reaches the Review step of a booking without typing a code, Petsoft looks for a promo code at your facility. Petsoft compares the code's Google Campaign field to the saved
utm_campaignvalue. - If Petsoft finds a valid code, Petsoft applies the discount automatically.
Petsoft ignores letter case when it matches the campaign value. After a customer redeems the code once, the code does not apply again.
What the customer sees when automatic matching fails. If no code matches the campaign, the Review page shows this message: "The promo code associated with this google campaign could not be found." If a code matches but is not valid for the customer — for example, the code has expired, or the customer already used it — Petsoft does not apply the code and shows no message. In both cases, the customer can still type a code manually.
If an ad blocker removes the tracking parameters before the customer opens your page, the result is the same.
Keep only one promo code for each Google Campaign value at a facility. Keep that code active. If several codes share a campaign value, Petsoft selects the most recently created code, even if that code is not active. Petsoft does not search for an active code first.
The pet parent cannot remove an auto-applied campaign code during booking.
Setting up your Google Ad
Set your ad's Final URL to your organization's registration link. Add a utm_campaign value to the link:
https://www.petsoft.com/Parents/Setup/Register/[your-organization-id]?utm_campaign=[your-campaign-value]
The [your-campaign-value] must match the Google Campaign field on the promo code. The [your-organization-id] must match the ID in your branded registration link. Confirm that Auto-tagging is on in your Google Ads account (Admin > Account settings > Auto-tagging). Auto-tagging adds the gclid parameter.
Daycare coupon packs
Some facilities sell prepaid daycare visits at a discount. For example, a facility can sell ten visits at $25 each instead of the regular $30 rate. In Petsoft, these are called coupon packs.
Go to Facility > Daycare Coupons and click Add Daycare Coupon Package. You need the Manage Facility Products permission. You must set up a daycare service before you add a coupon package.
| Field | What to enter |
|---|---|
| Name | The name customers see, for example, "Daycare 10 Pack". |
| Quantity | The number of visits in the package. |
| Unit Price of Coupon | The cost of each visit in the package. Do not set this price above your regular day rate. A package must be a discount, not an increase in price. |
| Service | Each package can pay for only one daycare service. If you need packages for two services, create two packages. |
| Promotion Start Date / Promotion End Date | The dates when customers can buy the package. Leave the end date blank to sell the package with no end date. |
| Expiration Days | An optional number of days after the purchase date when the coupon becomes invalid. If you leave this blank, the coupons do not expire. |
| Minimum Number of Pets | Optional. You can require a household to have this many active pets to qualify. |
Two packages on sale. The image shows the quantity, price, promotion dates, and how long purchased coupons stay valid.
The image shows a 5-visit package priced at $27 per visit, compared with the $30 base rate in Current Service Prices. The package price is the discount.
How customers buy and use coupon packs
- At the front desk — sell the package as you would sell any other product.
- In the portal — turn on daycare coupon packages in your organization settings. Pet parents can then buy packages in the customer portal.
- Using coupons — you do not need to do anything. Petsoft applies coupons automatically when staff check out and invoice the daycare reservation, not when staff book the reservation. One visit uses one coupon.
Two things to know:
- A coupon that a facility sells works only at that facility. To let coupons work at every facility, turn on Coupon Sharing Between Facilities in your organization settings.
- If you delete a package, Petsoft stops new sales of that package. Coupons that customers already bought keep working until the coupons expire.
If staff cancel a daycare reservation after 5:00 PM on the day before the scheduled visit, the reservation loses its coupons. See Deposit Policies for more information.
Store credit
Store credit is not a discount. It is a balance on the customer's account. See Store Credit & Refunds to learn where store credit comes from and how to use it.
Reviewing promotion results
Some promotions do not earn back their cost. Go to Reports and open Promo Code Utilization:
| Column | What it tells you |
|---|---|
| Promo Code | The code. |
| Paid Count | Redemptions on invoices that customers paid. |
| Pending Count | Redemptions on invoices not yet paid. |
| Total Utilization | Both counts together. |
| Total Revenue Discount | The cost of the discount to your facility. |
Compare the paid count with the pending count. A code with many pending redemptions and few paid redemptions is applying the discount, but customers are not completing payment.
For example, assume you ran a code for 20 percent off grooming, and only three customers used it. This can mean the code was not visible enough. It can also mean the price of grooming does not affect your customers' decisions.
Expired and invalid codes
When a customer types a code, Petsoft shows one of these messages:
| Message | What it means |
|---|---|
| "Code Applied" | The code applied successfully. |
| "Invalid Code" | No code with this name exists at this facility. |
| "Code No Longer Valid" | The code is deactivated, or the current date is outside the code's date range. |
| "This code expires on [date]. Reservations must check out on or before that date." | The reservation's checkout date is later than the code's end date. Petsoft checks the checkout date against the code's date range, not the arrival date. |
| "Code Already Used" | This customer redeemed this code before. |
| "Promo code [name] may only be used on trial reservations." | This code works only for trial reservations. |
Front desk staff must know these messages so staff can explain a code message to a customer.
Discount type comparison
| Feature | Promo code | Daycare coupon pack | Store credit |
|---|---|---|---|
| How it's redeemed | Typed at checkout, or auto-applied from a Google campaign | Applied automatically when the visit is invoiced | Chosen as a payment option at checkout |
| Discount type | Percent off the service, fixed amount off, or trial percent off | Prepaid day bundle | A balance |
| Expiration | Start and end dates, both required | Optional Expiration Days from purchase; never expires if blank | None |
| Usage limit | One use per customer | Pack size | Until the balance is zero |
| Scope | One facility | One facility, unless coupon sharing is on | The facility that issued it |
| Best used for | Attracting new customers, seasonal promotions | Rewarding regular daycare customers | Refunds, rewards for loyal customers |
Still stuck?
Our team is happy to help. Reach out and we'll get you back on track.