Button

Send conversion and commerce event data to Button for mobile commerce attribution, partnership optimisation, and revenue tracking.

Prerequisites

Complete these steps in the Button dashboard before configuring Signal.

Create a Button account

Sign up at usebutton.com and log in to the Button Dashboard.

Create an application

Navigate to Settings > Applications and click Create Application. Enter your app name and platform details. Each application represents a distinct property (website or app) that sends events to Button.

Find your Application ID

After creating the application, your Application ID is displayed on the application detail page. It typically follows the format app-xxxxxxxxxxxxxxxx.

Find your API key

Go to Settings > API Keys in the Button Dashboard. Copy your API Key. This key authenticates all server-to-server event delivery from Signal.

Configure your commerce events

In the Button Dashboard, define which commerce events (e.g. purchases, add-to-cart) you want to track. This ensures Button correctly processes the events Signal delivers.

Configuration

FieldTypeRequiredDescription
application_idstringYesYour Button application ID from Settings > Applications.
api_keysecretYesYour Button API key from Settings > API Keys.

Signal Setup

Quick Setup

  1. Navigate to Integrations in the sidebar.
  2. Open the Integration Library tab.
  3. Find Button or filter by Attribution.
  4. Click Install, select a variant if available, and fill in the required fields.
  5. Click Install Integration to create the integration with a ready-to-use default blueprint.

API Setup

curl -X POST http://localhost:8084/v1/admin/integration-catalog/button/install \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Button",
    "variant": "default",
    "config": {
      "application_id": "app-abc123def456",
      "api_key": "your_api_key"
    },
    "delivery_mode": "server_side"
  }'

Event Mapping

Signal events are mapped to Button commerce events via your blueprint. Common mappings include:

Signal EventButton MappingNotes
purchaseOrder eventRequires order_id, total, currency, and line items
add_to_cartAdd-to-cart eventMap product ID, quantity, and price
product_viewProduct view eventMap product details for attribution

Button uses a btn_ref attribution token to link conversions to the originating partner. Ensure your site captures the Button referral token from inbound URLs and includes it in Signal events.

Testing

  1. Generate a test referral through a Button partner link to obtain a valid btn_ref token.
  2. Trigger a test conversion on your site that fires a Signal event.
  3. Send a test event through Signal using the Test Event button on the integration detail page.
  4. In the Button Dashboard, navigate to Reports > Orders and verify your test conversion appears.
  5. Check Live Logs in Signal to confirm delivery returned 200 OK.

Troubleshooting

SymptomCauseResolution
401 UnauthorizedInvalid API keyVerify api_key in Button Settings > API Keys and update Signal.
400 Bad RequestMissing required fieldsEnsure order_id and total are mapped in the blueprint.
Conversions not attributedMissing btn_ref tokenCapture the Button referral token from the landing page URL and include it in events.
Wrong applicationIncorrect application_idVerify the application ID matches the property you are tracking.

Visit Button documentation for full API reference and credential setup instructions.