KuikCodeDocs

Smart rules, Geolocation and geofencing

One printed code, many destinations. Route a scan by time, date, day, country, language, operating system, distance from a place or how often the code has been scanned.

Smart Rules is a destination type. Instead of one link, the code carries a list of rules that are checked top to bottom on every scan; the first rule whose conditions match decides where the visitor lands, and a fallback URL catches everything else. The printed code never changes while you edit the rules.

Smart Rules are included from the PRO plan. You can choose the card and build your rules on any plan; saving the KuikCode is the step that asks for PRO. Choose Get PRO there and your work is kept in this browser, so after checkout the editor opens just as you left it. Discard Smart Rules removes them instead, so you can choose another destination.

On a plan without Smart Rules, the editor starts with two examples, iPhone and iPad (Example) and Android (Example), each sending one kind of phone to its app store. Give one a link and it becomes your rule, without the label; the bin removes the ones you don't need.

Set it up

A Smart Rules destination: fallback URL and a first rule for the United States
A Smart Rules destination: fallback URL and a first rule for the United States
  1. In the KuikCode editor, choose Smart Rules as the destination.
  2. Fill in Fallback, Default URL. Visitors are sent here when no rule matches. A code cannot be saved without it.
  3. Click Add new rule. Give it a name (the pencil icon), add one or more conditions, and set Redirect to to the URL for that audience.
  4. Repeat for every audience. Drag order matters: the first matching rule wins. The bin on a rule removes it at once, with Undo in the message that appears.

Conditions

ConditionOperatorsValues
Timebefore, after, betweenA time of day, in the scanner's own time zone
Datebefore, after, onA calendar date
DayisAny set of weekdays
CountryisOne country
Device languageisThe language the phone is set to
Device OSisiOS, Android, Windows, macOS, Linux, Other
LocationisA point on the map plus a range in metres
Total user scansgreater than, less than, equal toHow many times this code has been scanned so far
Unique user scansgreater than, less than, equal toHow many different devices have scanned it

Conditions inside a rule are chained with And / Or, read left to right in the order you add them. A and B or C therefore means (A and B) or C.

Local time, not server time

Time, date and day conditions use the time zone of the place the scan happens, so "after 17:00" means the scanner's evening wherever they are.

How a scan is resolved

The scan handler receives the country, region, coordinates and time zone of the connection, the phone's language from the browser's language header, and the operating system from the user agent. Location conditions measure the straight-line distance from those coordinates to your point; if the network gives no coordinates, the condition is false. Scan counters count the scans recorded before the current one, so "Total user scans less than 100" matches exactly the first 100 scans. Scans that arrive in the same instant can see the same count, so a busy moment can let one or two extra through.

Rules whose URL is empty are skipped. Whatever decided the scan is stored with it: analytics show the rule name next to the destination that was served, and fallback when nothing matched.

Examples

  • Opening hours: rule "Open" with Time between 09:00 and 18:00 and Day is Mon to Sat pointing at the ordering page; fallback pointing at the opening hours page.
  • App download: rule "iPhone" with Device OS is iOS pointing at the App Store, rule "Android" pointing at Google Play, fallback to the website.
  • Launch day: rule "Before launch" with Date before 2026-10-01 pointing at the teaser, fallback to the product page.
  • Local page: rule "Our town" with Location is your address within 5,000 m pointing at the local offers, fallback to the store finder.
  • First 500: rule "Early birds" with Total user scans less than 500 pointing at the promotion, fallback to the regular offer.

Geolocation

Geolocation is the simpler sibling, for when the only question is where the scanner is. It is its own destination card with two parts:

  • Default URL: where everyone lands unless a rule matches.
  • Region rules: each rule names a Country, optionally a State for the United States, and the URL for visitors from there. Add one per market.

Use it for one code on packaging sold in several countries, each opening the right language or the right store. When the routing needs anything beyond country and state, switch the card to Smart Rules, which includes the same country condition.

Geolocation is included with Smart Rules from the PRO plan, and works the same way: set it up on any plan, and saving asks for PRO.

Geofencing

Geofencing confines a code to a place. In Smart Rules, add a Location condition: Add location opens a map, search an address or type coordinates, and set the Range (in meters) around the pin. Scans inside the circle match the rule; scans outside fall through to the next rule or to the fallback.

  • City offer: rule "In town" with Location is your address within 5,000 m pointing at the coupon; fallback pointing at a page that says the offer is for local customers.
  • Event city: Location is the venue within 10,000 m opens the live schedule; outside it, the ticket page.
  • Many locations: one rule per site, each with its own URL, ordered by priority.

The position comes from the network connection, not GPS: reliable for the country, usually right for the city, and it can be a few kilometers off on mobile data. Keep the radius generous, a few kilometers, and expect misses near the edge. To limit an offer to one shop, print the code only there or protect it with an access code instead. If the network gives no coordinates the condition is false. Analytics record which rule decided each scan, so you can see how many landed inside.

  • Geolocation, above, for country and state only.
  • A plain Website destination is all you need when everyone should land in the same place.

On this page