Button Destination

Destination Info
Partner Owned
  • This integration is partner owned. Please reach out to the partner's support for any issues.

Button is the mobile commerce technology company that is powering a commerce-driven internet. The Button platform powers mobile business growth for the world’s largest brands and publishers, while offering consumers more seamless, enjoyable experiences.

This destination is maintained by Button. For any issues with the destination, contact the Button Support team.

Getting Started

Contact your Button representative for your Button API Key.

  1. From the Destinations catalog page in the Segment App, click Add Destination.
  2. Search for “Button” in the Destinations Catalog, and select the Button destination.
  3. Choose which Source should send data to the Button destination.
  4. Enter the “API Key” in the Button destination settings in Segment.

Track

If you aren’t familiar with the Segment Spec, take a look at the Track method documentation to learn about what it does. An example call would look like:

analytics.track('Deep Link Opened')

Segment sends Track calls to Button as a track event.

To track deep links from your app or website, use Segment’s Deep Link Opened and Application Opened events.

Make sure you pass the referring URL. An example would look like:

analytics.track('Application Opened' { someProperty: true }, {
  userId: '1234567890',
  properties: {
    url: 'brand-app://?btn_ref=srctok-XXX'
  }
  ...
})

Tip! Make sure you record any different names for Deep Link Opened Track events across your sources so you know which are sent where.

Installs

To track mobile app installs, use Segment’s Application Installed event.

Capture the referring URL when possible. An example would look like:

analytics.track('Application Installed' { someProperty: true }, {
  userId: '1234567890',
  properties: {
    url: 'https://brand-homepage.com?btn_ref=srctok-XXX'
  },
  context {
    app: { version: '4.15.0' },
    device: {
      adTrackingEnabled: false,
      advertisingId: 'XXXXXXXX-YYYY-ZZZZ-1111-222222222222'
    },
    ip: '127.0.0.1',
    locale: 'en-US',
    os: {
      name: 'iOS',
      version: '14.2'
    }
  }
  ...
})

Tip! Make sure you record any different names for Application Installed Track events across your sources so you know which are sent where.

Orders

To track order events from your app or website, use Segment’s Order Completed event.

An example call would look like:

analytics.track('Order Completed' { someProperty: true }, {
  userId: '1234567890',
  properties: {
    subtotal: 7500,
    products: [
      {
         sku: 'sku-123',
         description: 'T-Shirt',
         size: 'L',
         price: 2500,
         quantity: 1,
         category: 'Clothing',
      },
      {
         sku: 'sku-456',
         description: 'Joggers',
         size: 'M',
         price: 5000,
         quantity: 1,
         category: 'Clothing',
      }
    ]
  }
})

Tip! Make sure you record any different names for Order Completed Track events across your sources so you know which are sent where.

Setting up a Destination Filter

If you are a Business Tier customer, you can set up a Destination Filter to only send your Deep link and Order events to Button.

Read Button’s Destination Filter documentation to learn more.

Engage

You can send computed traits and audiences generated using Engage to this destination as a user property. To learn more about Engage, schedule a demo.

For user-property destinations, an 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.

Real-time to batch destination sync frequency

Real-time audience syncs to Button 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.

Setting Description
API Key
(required)
string. Please contact your Button representative for instructions on finding your Segment-specific API key.

This page was last modified: 27 Oct 2023



Get started with Segment

Segment is the easiest way to integrate your websites & mobile apps data to over 300 analytics and growth tools.
or
Create free account