Gift Purchases
Gift Purchases
One of the unique features of Raffle for WooCommerce is the ability for customers to purchase raffle tickets as gifts for others. Each ticket can be assigned to a different recipient in a single order.
Enabling gift purchases
Gift purchasing can be enabled globally or per-raffle.
Global setting
- Go to WooCommerce → Settings → Raffle.
- In the General section, check Enable Gift Purchase.
- Save changes.
Per-product override
- Edit your raffle product.
- Go to Raffle Settings tab.
- Set Allow Gift Purchases to "Yes" (or "Use global setting" to follow global).
- Save the product.
How it works
Product page
When gift purchasing is enabled, the raffle product page shows:
- A "This is a gift for someone else" checkbox.
- An optional gift note explaining the feature.
Checkout experience
At checkout, customers see a Gift Purchase section for any raffle items that have gift enabled:
Pre-flagged items (gift checked on product page):
- Recipient fields appear immediately, expanded.
- One set of fields per ticket (matching the cart quantity).
- A checkbox appears: "This is a gift for someone else".
- When checked, recipient fields expand.
Per-ticket recipients
Each ticket gets its own recipient with these fields:
| Field | Required | Description |
|---|---|---|
| First Name | Yes | Recipient's first name |
| Last Name | Yes | Recipient's last name |
| Recipient Email | Yes | For gift notification |
| Gift Message | No | Personal message |
Adding multiple recipients
Customers can buy tickets for multiple people in a single order:
- Fill in the first recipient's details.
- Click "+ Add another recipient" to add more.
- Each new recipient adds a ticket to the order automatically.
- Use the "Remove" button to remove a recipient if needed.
Changing mind at checkout
Customers can switch between regular and gift purchase at checkout:
- Regular → Gift: Check the gift box at checkout, add recipients. Quantity updates to match.
- Gift → Regular: Uncheck the gift box. Quantity remains; per-customer limits re-apply.
Checkout compatibility
Gift purchasing works with both checkout types:
Classic checkout
- Fields appear below the order notes section.
- AJAX-powered: adding/removing recipients updates cart quantity in real time.
- Standard WooCommerce form styling.
Block Checkout
- Fields appear in a dedicated section within the checkout flow.
- Integrates with WooCommerce Store API for real-time quantity sync.
- Native block editor styling.
- No build process required.
What happens after checkout
- Order is placed with per-ticket gift recipient data attached.
- Tickets are generated; each ticket is assigned to its specific recipient.
- Purchaser receives standard order confirmation email.
- Each recipient receives a "Gift Received" notification email (if email was provided).
- Winner selection uses the recipient's name, not the purchaser's.
Email notifications
To purchaser
Standard WooCommerce order confirmation, plus:
- Confirmation that tickets were gifted.
- Recipient name(s).
- Ticket numbers.
To recipient
Special "Gift Received" email including:
- Who sent the gift
- Gift message (if provided)
- Raffle details
- Ticket number(s)
- Link to view raffle
My account integration
Purchaser's view
In My Account → My Tickets, purchasers see:
- Gifted badge on tickets they bought for others.
- Recipient name displayed.
Recipient's view
If the recipient has an account with the same email:
- Received badge on tickets gifted to them.
- Purchaser name displayed (as "Gift from...").
Admin view
Order details
Gift orders show:
- Order-level gift flag.
- Per-ticket recipient details (name, email, message) for each line item.
- All recipients listed in the order meta section.
Orders list
- Gift orders show a heart icon in the "Gift" column.
- Easy to identify gift purchases at a glance.
Tickets admin
In WooCommerce → Raffle Tickets:
- "Is Gift" column shows Yes/No.
- Filter tickets by gift status.
Cart behavior
Non-gift raffle items
When a per-customer ticket limit is set, non-gift raffle items have:
- Read-only quantity in the cart, which prevents exceeding the per-customer limit.
- Server-side enforcement on any quantity change attempt.
Gift items
Gift items remain fully editable in the cart because each ticket goes to a different person. The per-customer limit does not apply to gift purchases.
Winner selection
Important: When a gift ticket wins, the recipient is the winner, not the purchaser.
- Winner notification goes to the recipient's email.
- Prize fulfillment is for the recipient.
- Audit trail shows both purchaser and recipient.
Use cases
Charity fundraisers
- Supporters buy tickets for elderly relatives who can't purchase online.
- Corporate sponsors purchase tickets for multiple employees in one order.
Family events
- Parents buy tickets for children.
- Family members gift entries to each other.
Club raffles
- Members purchase tickets for spouses/partners.
- Gift tickets as birthday presents.
Best practices
- Enable gift early: Set it when creating the raffle, not after sales start.
- Set reasonable limits: Per-customer limits apply to the purchaser's own tickets, not gift tickets.
- Clear terms: Explain that the winner is the recipient, not the purchaser.
- Encourage email collection: Recipient emails are required for notifications and are important for winner contact.
FAQ
Q: Can one person buy gifts for multiple people? A: Yes. Each ticket can be assigned to a different recipient. Click "+ Add another recipient" at checkout to add more. The cart quantity updates automatically.
Q: Can a customer switch from regular to gift at checkout? A: Yes. Even if the customer didn't check the gift box on the product page, they can check it at checkout and add recipients.
Q: What if the recipient doesn't have an account? A: They'll still win if selected. They can create an account with the same email to see their tickets in My Account.
Q: Can the purchaser see if the recipient won? A: Yes, they receive notification as the order owner.
Q: Does the per-customer limit apply to gift tickets? A: No. Per-customer limits only apply to tickets the customer buys for themselves. Gift tickets are exempt because each goes to a different person.