Connect Holded POS | Passtastic Help
Passtastic
Explore
Product
Pricing
Use Cases
Help
Developers
No account yet? Sign up free

Connect Holded POS

What this does

Connect your Holded account and your loyalty program earns right from your Holded till. When your staff ring up a paid sale with a customer attached, Passtastic picks it up automatically — no separate device for earning. To give a reward, your staff still confirm it with a quick scan in the Passtastic Scanner app, the same as with any other checkout.

Which cards can earn from Holded sales

  • Points and level cards earn according to your points rules — the accrual rule attached to the card decides how much a sale is worth. If a card has no accrual rule attached yet, it won't earn until you set one up.
  • Stamp cards earn 1 stamp per paid sale — no rule needed.
  • Coupons, bundles (prepaid stamp / prepaid points) and memberships can't earn from Holded sales. These types don't have a way to accrue from a POS transaction, so they won't show up in the list of cards you can turn on.

Before you start

  • Access to your Holded account with permission to create API credentials.
  • At least one published loyalty card in Passtastic that can earn (a points, level, or stamp card). If you don't have one yet, create it first from Programs → Create New Program.
  • The free Passtastic Scanner app on a phone or tablet — you'll still need it to redeem rewards.

Step 1 — Get your Holded API key

1. In Holded, open Settings.

2. Go to Developers.

3. Open Credentials.

4. Click New API Token.

5. Select exactly these scopes:

  • Sales: Read
  • Contacts: Read
  • Developers: Full

Holded shows this key only once — copy it before you leave that screen. If you lose it, you'll need to create a new one.

Step 2 — Connect Holded to Passtastic

1. In your Passtastic dashboard, open Settings, then Integrations (under Business).

2. Find Holded POS.

3. Paste the API key you copied and click Connect Holded.

Step 3 — Choose which cards earn

Once connected, you'll see Your loyalty cards — every points, level, and stamp card in your account. Turn a card on to start earning from Holded sales.

  • For points and level cards, make sure an accrual rule is attached — cards only earn once a points rule is set up for them. If none is attached yet, use Set up your points rules on the same page.
  • Stamp cards don't need a rule — turning one on is enough; it earns 1 stamp per paid sale.

The connection page shows N of M cards earning so you can see at a glance how many of your earn-capable cards are turned on.

The one habit that matters: attach the customer to the sale

Points and stamps only land when your staff assign the customer to the ticket in Holded — the same way as adding a customer to any sale. If a sale is rung up with no customer attached, nothing is credited automatically.

That's not necessarily lost, though: a sale made without a customer can still be attributed to them later the same day, if the ticket is updated with the customer before the day closes. Past that window, the sale can no longer be matched.

How your staff redeem a reward

Holded doesn't show a customer's reward status at the till, so redeeming still uses a quick scan, the same as any Passtastic loyalty program:

1. When a customer says their reward is ready, your staff open the Passtastic Scanner app and scan the customer's wallet pass. This confirms the reward is real and ready.

2. Your staff apply the reward at checkout as they normally would (discount, free item, etc.).

That's the one place you still use the scanner — earning is automatic from Holded sales.

Troubleshooting

My API key wasn't accepted. Make sure you created a genuine Holded API Token (not a login password or a different kind of key), and that you copied the whole string. Create a fresh token in Holded → Settings → Developers → Credentials and paste it again.

"Add the Sales: Read / Developers: Full scope" error. The token is missing one of the three required scopes. Go back to Holded, create a new API Token, and select all three: Sales: Read, Contacts: Read, Developers: Full — then paste that one in.

"Couldn't register the sales webhook in Holded." Holded allows only one sales webhook per account. If another tool is already registered to receive your Holded sales notifications, Holded will reject a second one. Disconnect or reconfigure the other tool's webhook in Holded, then try connecting Passtastic again.

My connection needs a new key after I regenerated one in Holded. Regenerating or revoking a key in Holded invalidates the one Passtastic is using, so the connection stops working until you reconnect. Create a fresh API Token in Holded (same scopes as above) and paste it in on the Holded integration page to reconnect — your card settings are kept.

A sale isn't matching to the right customer. Check that the Contacts: Read scope is still enabled on your API key — without it, Passtastic can't match sales to your customers. If it's missing, add it to your existing token or create a new one with all three scopes.

For running loyalty without a POS, or connecting other tools, see POS Systems & Integrations.