El programa de mercadeo de referidos de Genius Referrals

En Genius Referrals sabíamos desde el comienzo que necesitábamos implementar nuestro propio programa de mercadeo de referidos para incrementar nuestra adquisición de clientes a través de programas de referidos. Los programas de mercadeo de referidos son clave para para adquirir nuevos clientes con alta fidelidad e incrementar las ventas. Es por eso que hemos creado nuestro propio programa de mercadeo de recomendación de amigos usando nuestras SDKs y decidimos armar un caso de uso para que usted pueda aprender cómo implementar su propio programa. Usted puede ver nuestro programa de referidos en tiempo real aquí.

El Problema:

Debido a que la mayoría de las herramientas de mercadeo (publicidad en la TV , publicidad de radio, carteles, publicidad en Internet, etc.) solo apuntan a clientes aleatorios, es alto el costo de adquirir nuevos clientes y la falta de fidelidad de los nuevos clientes. Genius Referrals tenía la necesidad de encontrar nuevas vías de adquirir:

  • Nuevos clientes con alto margen de contribución.
  • Nuevos clientes con alto ratio de retención.
  • Clientes más valiosos en ambos corto o largo tiempo.
La Solución:

Luego de investigar varias vías para incrementar nuestra adquisición de clientes. El equipo de Genius Referrals decidió, que un programa de referidos es el camino a seguir cuando se quiere adquirir nuevos clientes con alto valor y alta fidelidad a un precio razonable. Las investigaciones muestran que nuevos clientes adquiridos a través de un programa de referidos son más rentables y más leales que otros clientes. El valor promedio de un cliente referido es al menos 16% más alto que el de un cliente que no ha sido referido en similar demografía y tiempo de adquisición.

El programa de Recomendación de Amigos:

Decidimos implementar un Programa de Recomendación de Amigos para estimular nuestra adquisición de clientes y ventas.

La campaña de marketing asociada con el programa establece lo siguiente:

  • Dar 15% del dinero que un cliente gasta en la Plataforma de Genius Referrals a su promotor.
  • Dar las bonificaciones por los primeros 90 días luego que el cliente ha sido registrado.
Desarrollo:

Para desarrollar este programa primeramente definimos los requerimientos que necesitábamos cumplir para tener un programa de recomendación de amigos exitoso. Luego decidimos las principales interfaces de usuario y finalmente implementamos el programa usando nuestras SDKs.

Los Requerimientos:

El programa de recomendación de amigos debe cumplir los siguientes requerimientos:

  • Permitir a los promotores recomendar los servicios de la plataforma a través de los medios sociales (Facebook, Twitter, LinkedIn, WhatsApp and Pinterest), correo electrónico, y cualquier otro medio impreso (carteles, folletos, tarjetas de negocio, etc.).
  • Permitir a los promotores ganar bonificaciones a través de válidas referencias. Una bonificación tiene que ser dada luego que el cliente referido completa un pago en la Plataforma de Genius Referrals.
  • Permitir a los promotores canjear sus bonificaciones como dinero o crédito. La cantidad mínima a canjear por solicitud de canje es $20.
  • Permitir a los promotores revisar la analítica de su programa de referidos.
El diseño (maquetas):

Antes de saltar dentro de la fase de implementación, armamos las siguientes maquetas para ser implementadas por nuestro equipo de desarrollo. Decidimos que con 4 pestañas podíamos cumplir todos los requerimientos.

Pestaña 1:
sumario Esta etiqueta ayuda a que nuestros clientes (promotores) se familiaricen con el programa y los motiva a comenzar a compartir los servicios de Genius Referrals con sus amigos.

Refer a friend program overview
Pestaña 2: herramientas para referir
Los promotores pueden recomendar los servicios compartiendo sus vínculos para compartir en las redes sociales (Facebook, Twitter, WhatsApp, Linkedin and Pinterest), enviando correos electrónicos a sus amigos, compartiendo su URL personal e imprimiendo su código QR en carteles, folletos, tarjetas de negocios, etc.
Refer a friend program referral tools
Pestaña 3: bonificaciones ganadas
Los promotores pueden revisar las estadísticas (con la cantidad de referencias/bonificaciones por red que han generado) y los gráficos (con la participación diaria por referencias y la participación diaria por bonificación).
Refer a friend program bonuses earned
Pestaña 4: canje de bonificaciones
Los promotores también pueden canjear sus bonificaciones en dinero o en crédito usando esta pestaña. Ellos van a necesitar una cuenta de Paypal si desean que el dinero sea canjeado como dinero.
Refer a friend program redeem your bonuses
Implementación:
Implementar y gestionar un programa de mercadeo de referidos

La Implementación y administración de este programa de recomendación de amigos parece que es un montón de trabajo, y realmente lo es si haces todo el trabajo tu solo. Gracias a la Plataforma de Genius Referrals puedes implementar y mantener un programa de recomendación de amigos con una intervención mínima y sin arruinarse. Cuando usas nuestra sofisticada plataforma obtienes todos estos beneficios.
Para implementar este programa de recomendación de amigos usando Genius Referrals, necesitamos seguir las siguientes orientaciones descritas en la sección integración. Estamos usando AIM como método de integración debido a que es el método más flexible que se puede utilizar cuando está integrando su programa de mercadeo de referidos. Esto significa que puede hacer prácticamente cualquier cosa con AIM, nosotros recomendamos fuertemente el uso de este método de integración.

Configurando la nueva cuenta en la Plataforma Genius Referral:

Luego de completar el proceso de registro (primer paso en AIM) creamos una cuenta y campaña para nuestro sitio Web (paso 2 en AIM).
Cuando creamos una nueva campaña configuramos el tipo de campaña como porcentaje porque estamos dando 15% del pago del promotor al referente del promotor. Hemos creado un nivel "1 = referrals 15%" que puedes leer de esta forma:
A partir de que un promotor ha generado al menos una referencia, dar el 15% del pago que sus promotores referidos han hecho en el sistema.
En la pestaña Elegibilidad es donde específicas las restricciones para la campaña de mercadeo de referidos. En este caso en particular la única restricción que tenemos es la cantidad de días en que la campaña estará activa. Por lo que, establecemos 90 días en el campo Cantidad de días porque la campaña estará activa por solo 3 meses luego que el promotor referido se ha registrado.
Configurando un paquete de widgets para la campaña:

Luego de configurar la nueva cuenta y campaña, es tiempo de configurar el paquete de widgets que a será usado en la campaña.
La importancia de los paquetes de widgets
Los Paquetes de Widgets
nos permiten configurar los contenidos por defecto que queremos que nuestros promotores compartan en los medios sociales cuando recomienden nuestros servicios. Es útil crear más de un paquete de widgets si su aplicación tiene más de un lenguaje o si necesita publicar nuevas campañas promocionales en un período corto de tiempo, revise los detalles aquí.
La información general del paquete: Como nuestro sitio Web está internacionalizado, necesitábamos paquetes de widgets para cada lenguaje, para que nuestros promotores fueran capaces de compartir los contenidos por defecto del programa de referidos en su lenguaje local. El siguiente paquete de widgets es un ejemplo de los que hemos creado para nuestra plataforma (paso 4 en AIM).

Note como hemos configurado la Campaña para que sea 'Get 15% for 90 days' y el Lenguaje para que sea Inglés.
The package general information
La configuración de los widgets:
Después de configurar la información útil del paquete, establecemos los widgets para todas las redes. Aquí especificamos la información que nuestros promotores compartirán en las redes sociales.
Definiendo los contenidos por defecto de los widgets
Su equipo de marketing es responsable de definir los contenidos a ser publicados por defecto en las redes sociales. Asegúreque que han hecho su investigación y han armado una buena redacción con alto valor y calidad que esté orientada a la audiencia adecuada. El éxito de su programa de mercadeo de referidos depende en gran medida de cuán interesantes estos contenidos son.
Configuración del widget de Facebook:
En la parte derecha de la imagen de abajo, puede ver un ejemplo de los contenidos por defecto que serán publicados en Facebook una vez que el promotor ha hecho clic en el vínculo para compartir de Facebook. Revisa abajo como hemos configurado el widget. Para el paquete de Facebook también puede especificar múltiples imágenes, la URL del autor y la URL de la editorial.
The Facebook widget set up
Configuración del widget de Twitter:
Configurar el widget de Twitter es muy simple, solo necesitas entrar el tweet que quieres que sea publicado en Twitter y eso es prácticamente todo lo que hay que hacer. Una cosa que tienes que tener en cuenta es la localización de la etiqueta [url].
Componiendo el tweet
El tweet es compuesto por tweet+url. La URL (URL para compartir) consumirá 22 caracteres de su tweet. Usted solo tiene 118 caracteres, así que haga que cada palabra cuente. La etiqueta [url] será reemplazada automáticamente por la URL para compartir que será publicado en Twitter. Si desea cambiar la localización de la etiqueta [url], muévela a la localización adecuada dentro del tweet. Si por alguna razón, decides eliminar la etiqueta [url] del tweet, la URL para compartir será adicionada automáticamente al final del tweet.
Mira cómo hemos configurado el widget de Twitter.
The Twitter widget set up
The WhatsApp widget setup:
La configuración del WhatsApp es muy similar a las anteriores, solo tenemos que configurar el sumario. Revise nuestra configuración para este widget
The WhatsApp widget set up

Configuración del widget de LinkedIn:
La configuración del LinkedIn es muy similar a las anteriores y se explica por sí sola, solo tenemos que configurar el título personalizado, el sumario y la fuente. Revise debajo como hemos configurado el nuestro.
The Linkedin widget set up
Configuración del widget de Pinterest:
Para Pinterest hemos configurado la descripción y la URL de la imagen que queremos que los promotores compartan en esta red social en particular. Como sólo puedes publicar una sola imagen en este widget, recomendamos que publique una con contenidos de alto valor y calidad de resolución.
Usando Pinterest
Este servicio es muy bueno para compartir Carteles, folletos u otro tipo de medio para promover sus servicios.
The Pinterest widget set up
Sus vínculos y URL para compartir: El objetivo principal de configurar un paquete de widgets es obtener la lista de vínculos y URL para compartir que puedes publicar más adelante en sus páginas de referencias, y que sus promotores puedan hacer clics para compartir los contenidos por defecto (que has configurado previamente) en:

  • Los medios sociale
  • Correos electrónico
  • Mensajes personale
  • Tarjetas de negocio
  • Cartele
  • Folleto
Después de completar la configuración de los widgets, finalmente tenemos la lista de vínculos y URLs para compartir. Note como el sistema ha generado una URL para compartir en cada red.

El dominio gr3f.co es el que utilizamos para proveer redirecciones de alto rendimiento entre nuestros clientes, las redes sociales y viceversa.

Los parámetros de las URLs para compartir:
Parámetro
Descripción
advocate_token
El token del promotor del cliente que esta compartiendo el vínculo o URL.
widget_id
El identificador del widget
Trabajando con los parámetros
El advocate_token que parece en la cadena de la consulta necesita ser reemplazado en su aplicación por el token del promotor adecuado.
The widgets package share links
Instalando la SDK de Genius Referrals:

El próximo paso (paso 4 en AIM) luego de terminar la configuración del paquete de widgets es descargar e instalar una de nuestras SDKs en su proyecto.

En este caso usamos la SDK para PHP de Genius Referrals que puede descargar aquí. Puede encontrar más detalles del proceso de instalación aquí.

Registrando nuevos promotores en la Plataforma de Genius Referrals:

Una vez que hemos exitosamente instalado y probado la SDK para PHP usando estos ejemplos. Estamos en condición de comenzar a enviar pedidos para registrar nuevos promotores en la Plataforma de Genius Referrals (paso 5 en AIM).
Recuerde que cada cliente en su aplicación representa un promotor en la Plataforma de Genius Referrals. Por lo tanto, tiene que registrar todos sus clientes en la Plataforma de Genius Referrals.
Cuando registra nuevos promotores, necesita enviar la siguiente información para cada promotor:

  • Account Slug: El identificador de la cuenta
  • Name: El nombre del promotor
  • Last name: El apellido del promotor
  • Email: El correo electrónico del promotor
  • Payout Threshold (Umbral de pago): Esto representa la cantidad de bonificaciones que el promotor tiene que generar antes de poder canjear sus bonificaciones.
Existen principalmente dos vías para obtener el parámetro Account Slug. Puedes obtenerlo de la página de la cuenta en el Portal o usando el método de la SDK getAccounts.
Find the location of your account slug
Evitando enviar información personal a la Plataforma Genius Referrals
Si por razones de seguridad usted no puede enviar información personal de sus clientes a nuestra plataforma, en su lugar puedes enviar referencias para el nombre, apellido y correo electrónico. Tenga en cuenta que debe almacenar estas referencias localmente en sus aplicación.
Una de las restricciones del programa de recomendación de amigos de Genius Referrals es que un promotor puede canjear sus bonificaciones como crédito o dinero una vez que ha generado al menos $20 (Umbral de pago).
Permitir a los promotores canjear sus bonificaciones como crédito o dinero. El mínimo permitido por pedido de canje es $20.
El primer punto a tocar en la aplicación de Genius Referrals es el proceso de registro. Cada vez que un cliente completa el proceso de registro exitosamente teníamos que crear un nuevo promotor en la Plataforma de Genius Referrals usando una de nuestras SDKs. El ejemplo de abajo muestra cómo hacerlo usando la SDK de PHP.

Como ejemplo, vamos a crear el siguiente promotor para la cuenta 'Genius Referrals' que hemos creado previamente.

  • Account Slug: genius-referral
  • Name: John
  • Last name: Smith
  • Email: john@email.com
  • Payout Threshold: 20
Ejemplo usando la SDK de PHP:
Usando la SDK de Javascript
Tenemos varios ejemplos que muestran cómo implementar esta integración con Javascript aquí. Así que revísalos si Javascript es la vía que quieres utilizar.
También tenemos dos aplicaciones de ejemplos donde puede ver la integración en acción, descargue las aplicaciones de ejemplo aquí.
Estableciendo la moneda del promotor
Luego de registrar el promotor necesita actualizar su moneda, de lo contrario el promotor no será capaz de recibir bonificaciones.
 /*
     * En su método acción haga algo similar a esto
     */
    
    // Cree un nuevo objeto GRPHPAPIClient 
    $objGeniusReferralsAPIClient = new GRPHPAPIClient('YOUR_USERNAME', 'YOUR_API_TOKEN');

    //preparando los datos a ser enviados en su pedido
    $arrAdvocate = array(
        'advocate' => array(
            "name" => "Jonh", 
            "lastname" => "Smith", 
            "email" => "jonh@email.com", 
            "payout_threshold" => 20
            )
        );
    $objResponse = $objGeniusReferralsAPIClient->postAdvocate('genius-referrals', $arrAdvocate);
    $intResponseCode = $objGeniusReferralsAPIClient->getResponseCode();
    // promotor creado exitosamente
    if($intResponseCode == 201){
        //obteniendo el token del promotor del encabezado Location
        $arrLocation = $objResponse->getHeader('Location')->raw(); 
        $strLocation = $arrLocation[0];
        $arrParts = explode('/', $strLocation); 
        $strAdvocateToken = end($arrParts); 
        
        //Actualizando el promotor con su moneda
        $arrParams = array('currency_code' =>  'USD'); 
        $objResponse = $objGeniusReferralsAPIClient->patchAdvocate('genius-referrals', $strAdvocateToken, $arrParams); 
        $intResponseCode1 = $objGeniusReferralsAPIClient->getResponseCode();
        if($intResponseCode1 == 204){
            // moneda exitosamente actualizada
            // TODO: Guardar la referencia entre el nuevo promotor y el cliente en su base de datos local.
            // Utilice el $strAdvocateToken como referencia para que luego pueda usar el metodo getAdvocate(...)
            // para recuperar los datos del promotor.
        }
        else{
            // gestion de errores
        } 
        
    }
    else{
        // gestion de errores
    }
Recuerde reemplazar los valores YOUR_USERNAME y YOUR_API_TOKEN por los que fueron generados para ti.
Permitiendo que nuestros promotores compartan sus vínculos para compartir:

Una vez que ya habíamos registrado un cliente como un promotor en la Plataforma de Genius Referrals, necesitábamos ser capaces de permitirle compartir (paso 6 en AIM) los contenidos que definimos previamente en la sección paquetes de widgets.

Existen dos vías que puedes utilizar para obtener los vínculos para compartir de un promotor, y publicarlos en tu página personalizada de recomendación de amigos. El primer método es construir usted mismo, los vínculos para compartir para tus promotores, tomando la información de la página de paquetes de widgets, y la segunda es obtener los vínculos para compartir usando una SDK o nuestra API RESTful directamente. Usar la SDK para obtener los vínculos para compartir es muy fácil, hemos implementado un método que puedes utilizar para este propósito. Solo necesitas saber el advocate_token, la campaña y el paquete de widgets que quiere que sus promotores compartan. Revise la documentación de referencia para más detalles.

Ejemplo usando la SDK de PHP:

 /*
     * En su método acción haga algo similar a esto 
     */

    //El token del promotor
    $strGRAdvocateToken  = 'cc6bdb82850654d89bebada2b52e8028922b098c1d3'; 
    
    // Creando un nuevo objeto GRPHPAPIClient 
    $objGeniusReferralsAPIClient = new GRPHPAPIClient('YOUR_USERNAME', 'YOUR_API_TOKEN');

    $strResponse = $objGeniusReferralsAPIClient->getAdvocatesShareLinks('genius-referrals', $strGRAdovocateToken);
    $intResponseCode = $objGeniusReferralsAPIClient->getResponseCode();
    if($intResponseCode == 200){
        $objResponse = json_decode($strResponse);
    }
    else{
        // gestion de errores
    }
Una vez que ha obtenido los vínculos para compartir usando la SDK puede analizar la información y obtener las URLs para compartir para cada red. Luego construya los vínculos para compartir de acuerdo a sus necesidades.

El panel de control de los promotores:

Para implementar la pestaña panel de control (paso 7 en AIM) hemos usando nuevamente la SDK para consumir las estadísticas de los promotores. Puedes obtener información importante que puede ser mostrada en gráficas que motivaron a sus promotores a compartir más sus servicios e incrementar la probabilidad de adquirir nuevos clientes. Los métodos que puede usar para obtener estas perspectivas con los siguientes:

  • getBonusesSummaryPerOriginReport: Obtiene la cantidad de bonificaciones que sus promotores han recibido por red. Vea un ejemplo aquí.
  • getReferralsSummaryPerOriginReport: Obtiene la cantidad de referencias que un promotor ha recibido por red. Vea un ejemplo aquí.
Capturando nuevas Referencias:

Una vez que un promotor ha compartido un vínculo para compartir en una de las redes, eventualmente el vínculo para compartir será clickeado por uno de los amigos de su promotor. Cuando el vínculo es clickeado, el amigo será redireccionado a su aplicación y aterrizará en la URL de aterrizaje que especificamos en la configuración del paquete de widgets. En este momento, usted necesita ser capaz de obtener el token del promotor, el slug de la campaña y el slug del origen de la referencia que forman parte de la URL de aterrizaje y crear una nueva referencia para el promotor que ha compartido el vínculo (paso 8 en AIM). Los parámetros que son incluidos en la cadena URL son:

  • gr_at: Almacena el token del promotor referente
  • gr_cs: Almacena el slug de la campaña
  • gr_ro: Almacena el slug del origen de la referencia.
Aquí tiene un simple ejemplo que puede utilizar para obtener los parámetros.

Ejemplo usando la SDK para PHP:
/*
 * En su metodo accion haga algo similar a esto
 */

$strGRAdvocateReferrerToken      = $_GET['gr_at']; 
$strGRCampaignSlug               = $_GET['gr_cs'];
$strGRReferralOriginSlug         = $_GET['gr_ro'];

$_SESSION['strGRAdvocateReferrerToken'] = $strGRAdvocateReferrerToken;
$_SESSION['strGRCampaignSlug']          = $strGRCampaignSlug;    
$_SESSION['strGRReferralOriginSlug']    = $strGRReferralOriginSlug; 
El paso final es crear una conexión entre el nuevo cliente (un cliente potencial) y su referente (el promotor que ha compartido el vínculo). Esto debería ser hecho luego que el cliente potencial ha terminado el proceso de registro porque existe la probabilidad de que el cliente potencial nunca termine el proceso de registro. Por lo que, tenemos que guardar las variables $strGRAdvocateReferrerToken, $strGRCampaignSlug y $strGRReferralOriginSlug en algún lugar (una sesión de PHP por ejemplo) y una vez que el cliente potencial ha terminado el proceso de registro ( y hemos registrado el promotor en la Plataforma de Genius Referrals) creamos la nueva referencia para el promotor referente que ha compartido el vínculo. Aquí tiene un ejemplo.

Ejemplo usando la SDK para PHP:
/*
     * En su metodo accion haga algo similar a esto
     */

    //cargando los parametros guardados en la sesion
    $strGRAdvocateReferrerToken  = $_SESSION['strGRAdvocateReferrerToken']; 
    $strGRCampaignSlug           = $_SESSION['strGRCampaignSlug'];
    $strGRReferralOriginSlug     = $_SESSION['strGRReferralOriginSlug'];

    // Creando un nuevo objeto GRPHPAPIClient
    $objGeniusReferralsAPIClient = new GRPHPAPIClient('YOUR_USERNAME', 'YOUR_API_TOKEN');
    $arrParams = array(
        'referral' => array(
            'referred_advocate_token' => $strGRNewAdovocateToken, //the one create when the advocate was registered. 
            'referral_origin_slug'    => $strGRReferralOriginSlug,
            'campaign_slug'           => $strGRCampaignSlug, 
            'http_referer'            => $_SERVER['HTTP_REFERER']  
        )
    ); 
    $objGeniusReferralsAPIClient->postReferral('genius-referrals', $strGRAdvocateReferrerToken, $arrParams); 
    $intResponseCode = $objGeniusReferralsAPIClient->getResponseCode();
    if($intResponseCode == 201){ 
        //si se ha creado exitosamente, continue
    }
    else{
        //gestion de errores
    }
Dando bonificaciones a los promotores:

Ahora que estamos exitosamente registrando nuevos promotores, permitiendo que compartan los servicios en las redes y capturando y creando nuevas referencias (conexiones entre los promotores). Estamos en una posición donde podemos comenzar a dar bonificaciones a los promotores luego que se dispare una acción en nuestra aplicación (paso 9 en AIM).

En el programa de recomendación de amigos de Genius Referrals estamos dando a los promotores 15% del pago que un promotor referido ha hecho en el sistema. Esto significa que nuestra acción disparadora es un pago completado. Por lo que, inmediatamente después que un pago es completado en nuestra plataforma, intentamos dar una bonificación al referente del promotor. Aquí tiene un ejemplo de cómo puedes dar bonificaciones a tus promotores.

Ejemplo usando la SDK de PHP:
/*
     * En su metodo acción haga algo similar a esto
     */

    //El token del promotor que ha hecho el pago
    $strGRAdvocateToken  = 'cc6bdb82850654d89bebada2b52e80289b098c1d3'; 
    
    // Crea un objeto GRPHPAPIClient 
    $objGeniusReferralsAPIClient = new GRPHPAPIClient('YOUR_USERNAME', 'YOUR_API_TOKEN');

    //preparando la información a enviar en el pedido
    $arrParams = array(
        'bonus' => array(
            'advocate_token'       => $strGRAdvocateToken, //el promotor que hizo el pago
            'reference'            => rand(1000000, 9999999), //Un número de referencia, podría ser el id del pago, time, etc.
            'amount_of_payments'   => 1, 
            'payment_amount'       => 100 //la cantidad del pago hecha por el promotor referido.
        )
    );
    //intentando dar una bonificacion el promotor referente.
    $strResponse = $objGeniusReferralsAPIClient->postBonuses('genius-referrals', $arrParams); 
    $intResponseCode = $objGeniusReferralsAPIClient->getResponseCode();
    if($intResponseCode == 201){
        // bonificación dada al referente del promotor. 
    }
    else{
        // No hay necesidad de dar una bonificación al referente del promotor.
    }
Enviando los parámetros correctos
Usted solo necesita enviar el advocate_token y la reference como parámetros obligatorios. La amount_of_payment y payment_amount son parámetros opcionales y dependen del tipo de restricción que ha configurado en sus campaña
Permitiendo que sus promotores canjeen sus bonificaciones:

Los promotores estarán constantemente refiriendo sus servicios en las redes y estarán generando nuevas referencias y bonificaciones rápidamente. Te sorprenderás de lo rápido que, este servicio de voz a voz puede incrementar tu adquisición de clientes. Después que hayan generado algunas bonificaciones, sus promotores van a querer su dinero. Por lo que tienen que ser capaz de canjear sus bonificaciones como dinero, bienes o créditos.

En el programa de recomendación de amigos de Genius Referrals, dejamos que nuestros promotores canjeen sus bonificaciones como dinero usando una cuenta de Paypal o como crédito que es acreditado en su cuenta de Genius Referrals. La única restricción que los promotores tienen en esta campaña es que pueden canjear sus bonificaciones una vez que han alcanzado el umbral de $20.

Para permitir que los promotores canjeen sus bonificaciones (de acuerdo con el diseño implementado previamente) básicamente tenemos que garantizar lo siguiente:

  1. Mostrar la cantidad de bonificaciones disponibles que nuestro promotor puede canjear.
  2. Validar que el promotor ha alcanzado el umbral de $20.
  3. Permitir que el promotor adicione una cuenta de Paypal para que pueda canjear sus bonificaciones como dinero.
  4. Permitir al promotor hacer un pedido de canje.
  5. Mostrar el historial de los pedidos de canje.
Mostrar la información de las bonificaciones es muy fácil y puedes acceder a ella rápidamente obteniendo el promotor con el método getAdvocate(...) desde una de nuestras SDKs, revisa aquí un ejemplo de las respuestas que obtendrás. En la respuesta, el parámetro claimed_balance representa la cantidad de bonificaciones que el promotor ya ha canjeado, el parámetro unclaimed_balance representa la cantidad pendiente a canjear.

Para permitir que el promotor adicione una cuenta de Paypal usamos el método postAdvocatePaymentMethod(...) para crear el nuevo método de pago y el método getAdvocatePaymentMethods(...) para mostrar la lista de métodos de pago.

Ejemplo usando la SDK de PHP:
  /*
     * En su metodo acción haga algo similar a esto
     */

    //El token del promotor del cliente que quiere adicionar una cuenta de paypal
    $strGRAdvocateToken  = '44ae47f4eda382a8f5830b78fedb7cf1de88981b0'; 

    // Crear un objeto GRPHPAPIClient
    $objGeniusReferralsAPIClient = new GRPHPAPIClient('YOUR_USERNAME', 'YOUR_API_TOKEN');

    //preparando los datos a enviar en el pedido
    $arrParams = array(
        'advocate_payment_method' => array(
            'username'       => 'john@mail.com',
            'description'    => 'Personal Paypal account', 
            'is_active'      => true
        )
    );
    //intentando crear una nueva cuenta de paypal para el promotor
    $strResponse = $objGeniusReferralsAPIClient->postAdvocatePaymentMethod('genius-referrals', $strGRAdovocateToken, $arrParams); 
    $intResponseCode = $objGeniusReferralsAPIClient->getResponseCode();
    if($intResponseCode == 201){
        // Cuenta de Paypal creada exitosamente
    }
    else{
        // gestion de errores
    } 
Para permitir que los promotores canjeen sus bonificaciones usamos el método postRedemptionRequest(...) el cual crea un pedido de canje que es procesado más tarde por uno de nuestros administradores de cuentas en el Portal. Una vez que el pedido ha sido completado, el promotor recibirá la bonificación en la forma que ha solicitado (crédito, dinero o un bien). El ejemplo de abajo muestra los detalles.
Gestionando los pedidos de canje completamente en su aplicación
Usted puede procesar los pedidos de canje en su aplicación usando una de nuestras SDKs. Esto significa que puedes crear y procesar los pedidos directamente en su aplicación sin tener que ir al Centro de Control. Puedes usar el método patchRedemptionRequestRedemption(...) para aprobar y completar un pedido de canje.
Ejemplo usando la SDK de PHP:
/*
     * En sus metodo acción, has algo similar a esto
     */

    //El token del promotor que quiere canjear su bonificacion
    $strGRAdvocateToken  = '44ae47f4eda382a8f5830b78fedb7cf1de88981b0'; 

    // Crear un nuevo objeto GRPHPAPIClient
    $objGeniusReferralsAPIClient = new GRPHPAPIClient('YOUR_USERNAME', 'YOUR_API_TOKEN');
    
    //Preparando los datos a ser enviados en el pedido 
    $arrParams = array(
        'redemption_request' => array(
            'advocate_token'            => $strGRAdovocateToken,
            'request_status_slug'       => 'requested', 
            'request_action_slug'       => 'credit',
            'currency_code'             => 'USD',
            'amount'                    => 50,
            'description'               => 'Redeeming as credit'
        )
    );
    
    //intentando crear un nuevo pedido de canje para el promotor. 
    $strResponse = $objGeniusReferralsAPIClient->postRedemptionRequest('genius-referrals', $arrParams); 
    $intResponseCode = $objGeniusReferralsAPIClient->getResponseCode();
    if($intResponseCode == 201){
        // Pedido de canje creado exitosamente
    }
    else{
        // gestion de errores
    }  
Los parámetros requests_status_slug, request_action_slug y currency_code son utilidades que usamos para crear los pedidos de canje. Puedes obtener la lista completa de ellas usando estos métodos getRedemptionRequestStatuse, getRedemptionRequestsAction y getCurrencie con una de nuestras SDKs.

Para mostrar el historial de pedidos de canje usamos el método getRedemptionRequests(...) y usamos los filtros para obtener solo los pedidos de canje para el promotor específico. Una vez que obtenemos la colección de datos, la mostramos en una tabla.

Ejemplo usando la SDK de PHP:
/*
     * En su método acción haga algo similar a esto
     */

    // Cree un nuevo objeto GRPHPAPIClient
    $objGeniusReferralsAPIClient = new GRPHPAPIClient('YOUR_USERNAME', 'YOUR_API_TOKEN');
    
    $strResponse = $objGeniusReferralsAPIClient->getRedemptionRequests('genius-referrals', 1, 10, 'email::john@mail.com'); 
    $intResponseCode = $objGeniusReferralsAPIClient->getResponseCode();
    if($intResponseCode == 200){
        // pedido exitosamente procesado
        $objResponse = json_decode($strResponse); 
        //TODO: mostrar datos al usuario 
    }
    else{
        // gestion de errores
    }
Arriba estamos obteniendo los primeros 10 pedidos de canje para el promotor con correo electrónico john@mail.com. Más información sobre este método en nuestra documentación de referencia de la API.

Monitoreando y administrando sus cuentas:

Esta es la última sección de esta página y es donde explicamos la importancia de monitorear y administrar sus programas de recomendación de amigos. En nuestro Portal encontrarás varias herramientas que le ayudarán a administrar su programa de recomendaciones de referidos. Usted puede crear nuevos programas y campañas, paquetes de widgets sociales, promotores, bonificaciones, hacer pagos, etc. Prácticamente todo lo que puedes hacer con las SDKs y más puedes hacerlo con las interfaces de usuario de nuestro Centro de Control.

Nosotros además, mostramos perspectivas que pueden ayudarle a analizar y optimizar su programa de mercadeo de referidos. Hemos estudiado de cerca las métricas más importantes cuando se trata de programas de mercadeo de referidos y hemos armado la analítica que le ayudará a obtener lo mejor de su programa de mercadeo de referidos. Obtienes todas las estadísticas descompuestas por red (Facebook, Twitter, LinkedIn, Pinterest, Email, PURL) para que puedas tirar de los hilos necesarios.

A medida que su programa de mercadeo de referidos madura, es muy importante que preste atención a la visión que le presentamos y tome acciones apropiadas si ve un decline en su adquisición de clientes. Para mantener su programa de recomendación de amigos funcionando con alto rendimiento, este debe evolucionar constantemente. Algunas veces, tendrá que ajustar los contenidos por defectos de tus paquetes de widgets y otras veces tendrás que crear mejores campañas para aumentar la atracción de clientes. Aquí tiene algunos ejemplos de la analítica que puede encontrar en nuestro Centro de Control.

Ejemplo de las estadísticas:
Refer a friend marketing program insights