# Wishpond Destination

## Destination Info

* Accepts [Identify](/docs/segment/connections/spec/identify), [Track](/docs/segment/connections/spec/track) calls.
* Refer to it as **Wishpond** in the [Integrations object.](/docs/segment/guides/filtering-data/#filtering-with-the-integrations-object)

### Components

* [Browser](https://github.com/segment-integrations/analytics.js-integration-wishpond)

## Connection Modes

[Learn more about connection modes.](/docs/segment/connections/destinations/#connection-modes)

### Device-Mode

* web: yes
* mobile: no
* server: no

### Cloud-Mode

* web: no
* mobile: no
* server: no

This destination is maintained by Wishpond.

The [Wishpond JavaScript (browser) Integration](https://github.com/wishpond-dev/analytics.js-integration-wishpond) destination code is open source and on GitHub. Feel free to check it out.

## Getting Started

Wishpond works with Segment's client-side JavaScript library: Analytics.js.

1. From your Segment UI's Destinations page click on "Add Destination".
2. Search for "Wishpond" in the Catalog, select it, and choose which of your sources to connect the destination to.
3. In the destination settings, enter your Merchant ID and Trackey Key from Wishpond's ["API Keys" dialog](https://www.wishpond.com/central/welcome?api_keys=true). These are also found in your Wishpond Account in the "API Keys" dropdown under your account name in the top right corner.
4. Segment automatically initializes Wishpond's Tracking Code with your Tracking Key and Merchant ID when it next loads Analytics.js.

When you enable Wishpond in Segment, your Wishpond account starts to receive data when you use `identify` or `track` methods.

## Identify

When you `identify` a user, we'll pass that user's information to Wishpond. Wishpond Tracking Code, method identify, will be triggered with the params used to identify.

For instance, when Segment `identify` is called:

```js
analytics.identify('1e810c197e', {
  name: 'Jane Kim',
  email: 'jane.kim@example.com'
});
```

Wishpond Tracker will be called with the following parameters:

```js
Wishpond.Tracker.identify('1e810c197e', {
  name: 'Jane Kim',
  email: 'jane.kim@example.com'
});
```

A new lead will be created be in your 'Wishpond Leads Database'. The lead will have the attributes: name 'Jane Kim', email '[jane.kim@example.com](mailto:jane.kim@example.com)'.
To more details how Wishpond's identify works visit [Wishpond API Docs: #identify](http://developers.wishpond.com/#identify).

## Track

When you `track` an event, we will send that event to Wishpond. Wishpond Tracking Code, method track, will be triggered with the params used to track the event.

For instance, when Segment `track` is called:

```js
analytics.track('Signed Up', {
  plan: 'Startup',
  source: 'Analytics Academy'
});});
```

Wishpond Tracker will be called with the following parameters:

```js
Wishpond.Tracker.track('Signed Up', {
  plan: 'Startup',
  source: 'Analytics Academy'
});
```

A new event will be added to the lead that the current session is tracking. The event title will be 'Signed Up', and it will have the properties: plan: 'Startup',source: 'Analytics Academy'.

To more details how Wishpond's identify works visit [Wishpond API Docs: #track](http://developers.wishpond.com/#tracking-events).

## Troubleshooting/ FAQ

### Destination is not working properly

Make sure you have copied the right keys from Wishpond's ["API Keys" dialog](https://www.wishpond.com/central/welcome?api_keys=true), this destination will need `Merchant ID` and `Tracking Key`.

## Engage

You can send computed traits and audiences generated using [Engage](/docs/segment/engage) to this destination as a **user property**. To learn more about Engage, schedule a [demo](https://segment.com/contact/demo).

For user-property destinations, an [identify](/docs/segment/connections/spec/identify/) call is sent to the destination for each user being added and removed. The property name is the snake\_cased version of the audience name, with a true/false value to indicate membership. For example, when a user first completes an order in the last 30 days, Engage sends an Identify call with the property `order_completed_last_30days: true`. When the user no longer satisfies this condition (for example, it's been more than 30 days since their last order), Engage sets that value to `false`.

When you first create an audience, Engage sends an Identify call for every user in that audience. Later audience syncs only send updates for users whose membership has changed since the last sync.

> \[!NOTE]
>
> Real-time audience syncs to Wishpond  may take six or more hours for the initial sync to complete. Upon completion, a sync frequency of two to three hours is expected.

## Settings

Segment lets you change these destination settings from the Segment app without having to touch any code.

| Field        | Description                                                                                                                                    | Required | Type   |
| ------------ | ---------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ------ |
| Tracking Key | To find your Tracking Key, log into Wishpond, click on your account name in the top right corner, and then on 'API Keys' in the dropdown menu. | No       | string |
| Merchant ID  | To find your Merchant ID, log into Wishpond, click on your account name in the top right corner, and then on 'API Keys' in the dropdown menu.  | No       | string |
