# Actions

Klaviyo can drive wallet behavior in two ways.

* By sending **authenticated links** that open a The Wallet Crew experience.
* By calling **webhook endpoints** that trigger wallet actions.

<details>

<summary><strong>Real-world examples</strong></summary>

* A campaign email contains a link that opens the pass page for the right customer.
* A flow updates a pass after a segment entry.

</details>

### Authenticated link patterns

Authenticated links are built on `neostore.authenticationToken`.

Two common patterns exist.

#### Open an enrolment or registration layout

This is used when the pass is not installed or when a registration step is needed.

```
https://app.neostore.cloud/<tenantId>/mail?neo.authToken={{person | lookup:'neostore.authenticationToken' }}
```

#### Open the pass page

This is used when a pass exists and the goal is to show the pass details.

```
https://app.neostore.cloud/<tenantId>/mail/confirm?neo.authToken={{person | lookup:'neostore.authenticationToken' }}
```

### Trigger pass update and wallet notifications

Klaviyo flows can trigger server-side actions via webhooks.

In addition to profile sync, webhook actions can call The Wallet Crew APIs to update passes and send wallet notifications.

This keeps Klaviyo as the orchestration layer.

* Pass update is typically done through the Pass API.
* Wallet notifications are covered in [Push notifications](/engage-and-animate/push-notification.md).

API details and required permissions: [API reference](/develop/api-reference.md).

{% hint style="warning" %}
Start in staging.\nValidate on a test pass.\nRoll out in production once payloads and targeting are stable.
{% endhint %}

### Common mistakes

* Link is missing `neo.authToken`.
* Token exists but is not attached to the expected Klaviyo profile.
* Flow webhook is not enabled in Klaviyo.

### FAQ

<details>

<summary><strong>Do authenticated links replace “Add to Wallet” buttons?</strong></summary>

No. Authenticated links are often used inside email and SMS.

Web and app entry points usually use “Add to Wallet” buttons and dedicated layouts.

</details>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.thewalletcrew.io/connect/marketing-automation/klaviyo/actions.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
