Skip to main content

QR Scan Board

What it is​

The QR Scan Board turns QR scans into a follow-up list. Every mailed piece whose QR code gets scanned becomes a card, and you move each card across four columns as you work the lead:

ColumnMeaning
NewScanned, not contacted yet
ContactedYou have reached out
Follow UpNeeds another touch
DoneClosed out

Open it from Reports → Scan Board in the sidebar. The board is available on every plan. Stage webhooks, which send leads to your CRM or automations as they move, need the Business plan or higher.

How cards get on the board​

  • The first scan of a piece adds its card to New.
  • There is one card per mailed piece, not per person or address. Two pieces mailed to the same address are two cards.
  • When the same piece is scanned again, its card stays in whatever column you put it in. Only its last scan time and scan count update.
  • Scans from the 30 days before the board was set up on your account were loaded onto it. Older scans aren't on the board, but they still appear in Analytics and the All QR Scans list.

Each card shows the recipient's name and address, a Street View photo of the address, when it was last scanned, how many times it has been scanned, and its latest note. Cards don't show the recipient's email, phone, or custom fields. To see those, look the person up in the All QR Scans list or open the order under Reports → Orders.

If nobody has scanned yet, the board reads No QR scans yet. You can still set up each stage's webhooks before the first scan arrives.

Moving a card​

  • Drag and drop the card into another column.
  • Or click the menu button in the card's top-right corner and pick a column under Move to.
  • With a keyboard, focus the card, press Space to pick it up, use the arrow keys to move it, and press Space again to drop it.

Cards within a column are always ordered newest scan first, so there is no manual reordering inside a column.

Column counts and limits​

The badge in each column's header shows how many cards the column holds. To keep the board fast, each column shows its most recent cards: up to 200 in New, Contacted and Follow Up, and up to 50 in Done. When a column holds more, it says how many older cards aren't shown. The count in the header always includes them.

Notes​

Keep a running record of your follow-up on each card.

  1. Click Add a note at the bottom of a card (or its latest note, if it has one). A side panel opens with the card's photo, Column, Scans, Last scan, On the board since, and its Notes.
  2. Type your note and click Add note (or press Ctrl or ⌘ + Enter). A note can be up to 2,000 characters.

The card shows its most recent note, with a count of any earlier ones; the side panel lists all of them, newest first. Notes can't be edited. To remove one, click the trash icon next to it and confirm Delete - a deleted note can't be brought back.

Subaccounts​

The board follows the sub-account switcher at the bottom of the sidebar. While a subaccount is active, the board shows only cards from that subaccount's mail. From the main account, it shows every card, including those from your subaccounts. See What is Scoped to a Subaccount.

Stage webhooks​

A stage webhook sends a lead to your CRM, spreadsheet, or automation tool when its card moves into a particular column. Stage webhooks are available on the Business plan and up.

How they fire​

  • Each stage webhook is tied to one column and fires when a card moves into that column, whether you drag it or use Move to. A New webhook fires when a piece is scanned for the first time.
  • Each webhook fires once per card. Moving a card out of a column and back in doesn't resend it. A webhook you add later fires the next time a card enters its column.
  • Cards that were loaded onto the board from past scans didn't fire New webhooks.
  • A webhook with a Mailing List or Subaccount chosen only fires for cards from mail sent to that list or from that subaccount.

Set one up from the board​

  1. Click the webhook button in a column's header. It shows how many webhooks the column has.
  2. In the column's webhooks dialog, click Add webhook.
  3. Enter the endpoint URL, an optional Description, and the Method (POST or GET). The type and stage are already set to the column.
  4. Optionally choose a Mailing List or Subaccount to narrow it.
  5. Click Save.

The same dialog lists the column's webhooks with Send test, Edit, and Delete buttons, and links to Manage all webhooks. While a subaccount is active, it lists the webhooks that can fire for that subaccount's cards: those set to that subaccount or to none.

Set one up from Settings​

  1. Go to Settings → Webhooks and click Add Webhook.
  2. Choose Scan Board Stage Change as the Type.
  3. Choose the Stage it fires on: New, Contacted, Follow Up, or Done.
  4. Fill in the URL and the other fields as above, and click Save.

Stage webhooks are listed alongside your other webhooks, each with its stage shown under its type.

Personalize the URL​

A stage webhook's URL can include replacement variables in the tilde format, such as ~FIRST_NAME~, ~LAST_NAME~, ~ADDRESS~, ~CITY~, ~STATE~, ~ZIP~, ~EMAIL~, ~PHONE~, and ~CUSTOM1~. They are filled in for each lead when the webhook fires - for example:

https://example.com/hooks/lead?name=~FIRST_NAME~&zip=~ZIP~

Send Test fills them in from a sample recipient, so you can check the URL your endpoint receives.

Payload​

The payload carries the event type scan_board.status_update, the recipient's details, the order, and the piece's scan count, the same fields as thanks.io's other order item webhooks. It adds:

  • scan_board.card_id - the card's ID
  • scan_board.previous_status - the column the card left (empty for a card that just arrived in New)
  • scan_board.current_status - the column it entered: new, contacted, follow_up, or done
  • scan_board.last_scanned_at - when the piece was last scanned

Like every thanks.io webhook, deliveries are signed and at-least-once, so build your consumer to skip an event ID it has already handled. See the webhook documentation.

Plans​

Stage webhooks need the Business plan or higher. Unlike other webhook types, they can't be added, edited, or tested on the Free plan, even if the account already has other webhooks. If your account moves to the Free plan, its stage webhooks are kept but stop firing until you upgrade again. See Plan Comparison.

Tips & best practices​

  • Turn on scan notifications too, so you know the moment a new card lands in New.
  • Move a card to Contacted as soon as you reach out, and add a note saying how, so anyone on your team can see where each lead stands.
  • Add a Contacted or Done stage webhook to log the lead in your CRM at the point you actually worked it, rather than on every scan.
  • For automated mail follow-up, pair the board with a campaign on the All QR Scans list or Move Recipient on Scan.

Limits & gotchas​

  • The four columns are fixed. They can't be renamed, and you can't add more.
  • A repeat scan never moves a card. If a lead in Done scans again, the card stays in Done with an updated last scan time.
  • The board counts mailed pieces, while the All QR Scans list holds one entry per address. Their totals won't always match.