Product Pricing Case Studies Live Demo
Reward Purchases with Entries

How do I run separate giveaways for each of my retail shops?

  • 6 minutes
  • Shopify stores with Shopify POS · All plans

Quick answer

Open the Make a Purchase action of each giveaway, set Order Source to POS Only or Online Store + POS, and use the POS Orders Locations block. Click Choose locations and tick the shop (or shops) that giveaway is for. Decide whether orders without a Location ID count. From then on every POS order goes to the giveaway that selects its location, and the order log shows the decision.

A merchant with two or more physical shops on one Shopify store can run one giveaway per shop. Order Routing by Location, on the Make a Purchase entry action, decides which giveaway receives each order from the Shopify POS location where the sale was made, before any purchase rule runs.

When to use it

  • One giveaway per shop: "Giveaway Downtown" counts the Downtown POS location, "Giveaway Mall" counts the Mall one. Each shop sees its own leaderboard and draws its own winner.
  • A group of shops: tick several locations in one giveaway to pool a region, and leave the others to a second giveaway.
  • In-store only: a single giveaway for one location while your online orders go to another giveaway, or to none.

Setup

  1. Edit the giveaway, open Entry Actions and select the Make a Purchase action.
  2. Set Order Source to Point of Sale (POS) Only or Online Store + POS. The routing block only appears when POS orders can earn entries.
  3. Scroll to POS Orders Locations, right under Order Source. The first time, click Grant Permission and approve the "view locations" permission in Shopify; you come back to the editor and the location list appears.
  4. Click Choose locations. A popup lists your Shopify locations: tick one for a single shop, or several to group shops, then click Apply. Inactive locations are marked, and a location another active giveaway already counts shows that giveaway's name.
  5. Check Orders without a Location ID. It defaults to Do not count them, so a shop's giveaway does not collect your online orders. Choose Count them in this giveaway if this giveaway should collect them (see below).
  6. Save, then repeat for the other giveaway with its own location.

New Make a Purchase actions start with All locations (nothing ticked) and Do not count them. Giveaways set up before this feature keep counting orders without a Location ID, exactly as before, until the first time you pick locations, which switches the setting to Do not count them; you can change it right below. Untick everything and apply to go back to all locations, including ones you add later.

Online Store + POS: online store orders never have a Location ID. With Order Source set to Online Store + POS and Do not count them, online orders earn no entries in that giveaway. The editor warns you when this is the case.

Where the location comes from: it is the Shopify POS location where the order was created or completed, as defined in your Shopify admin under Settings > Locations. The first time you open the block, Giveaway Ninja asks for permission to read your location names; routing itself never needs it.

Orders without a Location ID

Shopify records no Location ID on these orders, so they cannot be attributed to a shop:

  • Online store orders
  • Orders created by apps or the API
  • Draft orders completed in POS with "Mark as paid" instead of the POS checkout

They can only be counted or excluded as a group, with the "Orders without a Location ID" setting of each giveaway. If no active giveaway counts them, they are logged as filtered-out and earn nothing.

POS drafts: complete draft orders through the POS checkout, not with "Mark as paid", or those in-store sales land in the "no location" group instead of the shop's giveaway.

How the giveaway is chosen

  1. Giveaway Ninja lists the active giveaways with a Make a Purchase action.
  2. If at least one of them uses location routing, it keeps the giveaways whose settings accept the order's location. Giveaways with a location filter take precedence; giveaways without one are the catch-all for everything else.
  3. Among those, the giveaway where the customer is already entered wins (by email, then by discount code), otherwise the newest giveaway with Auto Sign-up.
  4. The usual checks and rules run inside that giveaway: Order Source, date range, minimum value, bundle, product and booster rules. See how sales are attributed.

Order edits, refunds and cancellations always follow the giveaway that credited the order. An edit cannot move a sale to another shop, and changing the locations later never moves past orders.

Checking the result

Your order logs show a Location column and a Routing line in the entry details for every order processed since this feature shipped, for example "Downtown (123): Giveaway Downtown (location 123 is in the selected locations)". Orders no giveaway accepted have the status filtered-out, with the verdict of every giveaway that was considered.

The Import Shopify Orders tool respects the routing of the giveaway you pick: the preview shows the decision for each order, and an order from another location is recorded as filtered-out instead of being credited.

People also ask

Can I split online orders by the shop that ships them?

No. An online order has no Location ID when Shopify creates it, and the fulfilment location is assigned later. Online orders can only be counted or excluded as a group, with the "Orders without a Location ID" setting.

What if two giveaways select the same location?

Both accept the order. The giveaway where the customer is already entered wins, then the newest giveaway with Auto Sign-up. The editor warns you when another active giveaway already counts a location you tick.

I changed the locations after the giveaway started. What happens to past orders?

Nothing. Orders already credited stay where they are, and edits, refunds and cancellations follow that giveaway. Use Import Shopify Orders to re-assign past orders; the import respects the new filter.

Why does the editor ask for a new permission?

Location names come from Shopify and need the "view locations" permission. The app asks for it once, in the editor, and the routing settings stay hidden until it is granted. Orders are routed from the location id on the order itself, so a giveaway configured earlier keeps working even if the permission is later revoked.

Still stuck?

Our support team is available 24/7 and always replies. Send us a message and we'll help you sort it out.

Contact support
🍪