Launch campaigns from the admin dashboard in 4 steps. Configure partners, commissions, budgets, and send notification emails — all without touching the database. Lanza campanas desde el dashboard de admin en 4 pasos. Configura partners, comisiones, presupuestos y envia emails de notificacion — todo sin tocar la base de datos.
The Campaign Launch Wizard is a 4-step workflow available in the admin dashboard at /c/:clientSlug/campaigns. Click the "Launch" button on any existing campaign or "New Campaign" to start.
El Asistente de Lanzamiento de Campanas es un flujo de 4 pasos disponible en el dashboard de admin en /c/:clientSlug/campaigns. Haz clic en el boton "Launch" de cualquier campana existente o "New Campaign" para comenzar.
Previously, launching a campaign required manual database changes: inserting campaign patterns, linking partners, creating commission records, and setting budget caps individually. The wizard replaces all of that with a guided interface that saves everything in a single API call. Anteriormente, lanzar una campana requeria cambios manuales en la base de datos: insertar patrones de campana, vincular partners, crear registros de comisiones y configurar limites de presupuesto individualmente. El asistente reemplaza todo eso con una interfaz guiada que guarda todo en una sola llamada API.
In one workflow: creates campaign patterns, links partners, enables target segments, sets commission rates, creates budget caps, generates CIDs, previews emails, and sends notifications. 4 clicks instead of 20 database operations. En un solo flujo: crea patrones de campana, vincula partners, habilita segmentos objetivo, configura tasas de comision, crea limites de presupuesto, genera CIDs, previsualiza emails y envia notificaciones. 4 clics en lugar de 20 operaciones de base de datos.
Configure the core campaign parameters. The campaign slug is auto-sanitized from the name and becomes part of every CID generated for this campaign. Configura los parametros principales de la campana. El slug de campana se auto-sanitiza del nombre y se convierte en parte de cada CID generado para esta campana.
The slug is automatically sanitized: lowercased, spaces replaced with hyphens, special characters removed. Example: "ATB Tablets" becomes atb-tabs.
El slug se sanitiza automaticamente: minusculas, espacios reemplazados por guiones, caracteres especiales eliminados. Ejemplo: "ATB Tablets" se convierte en atb-tabs.
All active partners for the client are displayed with their sub identifiers (e.g., sub1, sub2). Partners without a sub identifier are shown but disabled — they cannot be selected until attribution values are configured.
Se muestran todos los partners activos del cliente con sus identificadores sub (ej: sub1, sub2). Los partners sin identificador sub se muestran pero deshabilitados — no pueden seleccionarse hasta que se configuren los valores de atribucion.
$/unit (fixed per unit) or % of revenue
Tipo de comision: $/unidad (fijo por unidad) o % de revenue
Each selected partner row allows inline editing of: commission rate, commission type (fixed/percentage), and individual budget cap. A footer row shows total budget assigned vs. Samsung budget with over/under indicators. Cada fila de partner seleccionado permite la edicion en linea de: tasa de comision, tipo de comision (fijo/porcentaje) y limite de presupuesto individual. Una fila al pie muestra presupuesto total asignado vs. presupuesto Samsung con indicadores de exceso/faltante.
This step displays a read-only summary of the full campaign configuration: Este paso muestra un resumen de solo lectura de toda la configuracion de campana:
The final step has three actions executed in sequence: El paso final tiene tres acciones que se ejecutan en secuencia:
A single API call saves everything to the database: Una sola llamada API guarda todo en la base de datos:
| OperationOperacion | DescriptionDescripcion |
|---|---|
campaign_updated |
Campaign patterns, slug, dates, and segment savedPatrones de campana, slug, fechas y segmento guardados |
partners_linked |
Selected partners linked to the campaignPartners seleccionados vinculados a la campana |
segments_enabled |
Target segment enabled for each partner in partner_clients.enabled_segmentsSegmento objetivo habilitado para cada partner en partner_clients.enabled_segments |
commissions_set |
Commission rates created in partner_segment_commissionsTasas de comision creadas en partner_segment_commissions |
budgets_created |
Budget caps created in partner_segment_budgetsLimites de presupuesto creados en partner_segment_budgets |
Sends personalized campaign notification emails to each partner's contact email. Supports an optional CC field (e.g., claudia@relo.mx).
Envia emails de notificacion de campana personalizados al email de contacto de cada partner. Soporta un campo CC opcional (ej: claudia@relo.mx).
Pre-formatted WhatsApp messages are generated for each partner. Click the copy button next to each partner to copy the message and share it directly. Se generan mensajes de WhatsApp pre-formateados para cada partner. Haz clic en el boton de copiar junto a cada partner para copiar el mensaje y compartirlo directamente.
The "Configure Campaign" button must be clicked before "Send Emails". Emails reference the CIDs and configuration that are saved to the database during the configure step. El boton "Configurar Campana" debe pulsarse antes de "Enviar Emails". Los emails hacen referencia a los CIDs y la configuracion que se guardan en la base de datos durante el paso de configuracion.
Saves the full campaign configuration in a single transaction. Requires admin authentication. Guarda toda la configuracion de la campana en una sola transaccion. Requiere autenticacion de admin.
Request body: Cuerpo de la solicitud:
{
"campaign_slug": "atb-tabs",
"start_date": "2026-03-18",
"end_date": "2026-03-30",
"budget_total": 304353.88,
"target_segment": "TAB",
"partners": [
{
"partner_id": 9,
"commission_value": 200,
"commission_is_percentage": false,
"budget_amount": 20000
},
{
"partner_id": 13,
"commission_value": 200,
"commission_is_percentage": false,
"budget_amount": 20000
}
]
}
Response: Respuesta:
{
"success": true,
"campaign_id": 4,
"results": [
{ "step": "campaign_updated", "status": "ok" },
{ "step": "partners_linked", "status": "ok" },
{ "step": "segments_enabled", "status": "ok" },
{ "step": "commissions_set", "status": "ok" },
{ "step": "budgets_created", "status": "ok" }
]
}
Sends personalized email notifications to selected partners with campaign details, CIDs, and instructions. Envia notificaciones por email personalizadas a los partners seleccionados con detalles de la campana, CIDs e instrucciones.
Request body: Cuerpo de la solicitud:
{
"partners": [
{
"name": "Mobupps",
"contact": "John",
"email": "john@mobupps.com",
"full_cid": "mx_pd_affiliate_relo_none_atb-tabs_sub1_banner_none_conversion",
"budget": 20000,
"commission_rate": "$200 MXN per unit"
}
],
"campaign": {
"name": "ATB Tablets",
"dates": "Mar 18 - Mar 30, 2026",
"product": "Galaxy Tab S11 Ultra",
"product_url": "https://samsung.com/mx/tablets/...",
"onelink": "https://samsungshop.onelink.me/...",
"description": "Samsung Tablets campaign for Q1 2026",
"goal": "Drive Galaxy Tab S11 Ultra purchases"
},
"cc": "claudia@relo.mx"
}
Every partner in a campaign receives a unique Campaign ID (CID) that is used for attribution tracking. CIDs are auto-generated by the wizard — no manual entry needed. Cada partner en una campana recibe un Campaign ID (CID) unico que se usa para el seguimiento de atribucion. Los CIDs se auto-generan en el asistente — no se necesita entrada manual.
| VariableVariable | SourceFuente | ExampleEjemplo |
|---|---|---|
{campaign} |
Campaign slug from Step 1Slug de campana del Paso 1 | atb-tabs |
{sub} |
Partner's sub identifier from attribution_valuesIdentificador sub del partner de attribution_values |
sub1 |
| PartnerPartner | Sub | Generated CIDCID Generado |
|---|---|---|
| Mobupps | sub1 |
mx_pd_affiliate_relo_none_atb-tabs_sub1_banner_none_conversion |
| BEdigitech | sub4 |
mx_pd_affiliate_relo_none_atb-tabs_sub4_banner_none_conversion |
| Mobavenue | sub2 |
mx_pd_affiliate_relo_none_atb-tabs_sub2_banner_none_conversion |
| AnyMind | sub11 |
mx_pd_affiliate_relo_none_atb-tabs_sub11_banner_none_conversion |
The CID is placed in the AppsFlyer campaign field. The importer uses the client's attribution_field (typically campaign) and each partner's attribution_values to match sales to the correct partner using contains match type on the sub identifier.
El CID se coloca en el campo campaign de AppsFlyer. El importador usa el attribution_field del cliente (tipicamente campaign) y los attribution_values de cada partner para vincular ventas al partner correcto usando el tipo de match contains en el identificador sub.
A real-world walkthrough of launching the ATB Tablets campaign for Samsung. Un ejemplo real de lanzamiento de la campana ATB Tablets para Samsung.
atb-tabs| PartnerPartner | Sub | Budget CapLimite de Presupuesto | CommissionComision | Max UnitsMax Unidades |
|---|---|---|---|---|
| Mobupps | sub1 |
$20,000 | $200/unit | 100 |
| BEdigitech | sub4 |
$20,000 | $200/unit | 100 |
| Mobavenue | sub2 |
$15,000 | $200/unit | 75 |
| AnyMind | sub11 |
$10,000 | $200/unit | 50 |
When "Configure Campaign" is clicked, the wizard performs 5 operations in one API call: (1) updates campaign patterns with the atb-tabs slug, (2) links all 4 partners to the campaign, (3) adds TAB to each partner's enabled_segments, (4) creates partner_segment_commissions records at $200/unit for TAB, and (5) creates partner_segment_budgets with each partner's cap for the current month.
Cuando se hace clic en "Configurar Campana", el asistente realiza 5 operaciones en una sola llamada API: (1) actualiza los patrones de campana con el slug atb-tabs, (2) vincula los 4 partners a la campana, (3) agrega TAB a los enabled_segments de cada partner, (4) crea registros en partner_segment_commissions a $200/unidad para TAB, y (5) crea registros en partner_segment_budgets con el limite de cada partner para el mes actual.