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
| Field | Type | Required | Description |
|---|---|---|---|
application_id | string | Yes | Your Button application ID from Settings > Applications. |
api_key | secret | Yes | Your Button API key from Settings > API Keys. |
Signal Setup
Quick Setup
- Navigate to Integrations in the sidebar.
- Open the Integration Library tab.
- Find Button or filter by Attribution.
- Click Install, select a variant if available, and fill in the required fields.
- 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 Event | Button Mapping | Notes |
|---|---|---|
purchase | Order event | Requires order_id, total, currency, and line items |
add_to_cart | Add-to-cart event | Map product ID, quantity, and price |
product_view | Product view event | Map 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
- Generate a test referral through a Button partner link to obtain a valid
btn_reftoken. - Trigger a test conversion on your site that fires a Signal event.
- Send a test event through Signal using the Test Event button on the integration detail page.
- In the Button Dashboard, navigate to Reports > Orders and verify your test conversion appears.
- Check Live Logs in Signal to confirm delivery returned
200 OK.
Troubleshooting
| Symptom | Cause | Resolution |
|---|---|---|
401 Unauthorized | Invalid API key | Verify api_key in Button Settings > API Keys and update Signal. |
400 Bad Request | Missing required fields | Ensure order_id and total are mapped in the blueprint. |
| Conversions not attributed | Missing btn_ref token | Capture the Button referral token from the landing page URL and include it in events. |
| Wrong application | Incorrect application_id | Verify the application ID matches the property you are tracking. |
Visit Button documentation for full API reference and credential setup instructions.