/
BK Spain Engagement - NPS Documentation

BK Spain Engagement - NPS Documentation

Campaign Flow

Step 1 (Push + TT Transaction ID)

  • Objective:

    1. Update the user attribute to include the Transaction RBI Cloud Order ID as a custom attribute

    2. Send notification to the user after 30m to prompt them to rate the order

  • Entry criteria:

    • Action based canvas based on user performing Delivery_status_change where Name = ORDER_PICKED_UP-ORDER_DROPPED_OFF

    • User are re-eligble every 2 hours for the campaign

image-20250224-145620.png
  • In the first step we update the attribute TT Transaction ID with the Transaction RBI Cloud Order ID. The code is: {{canvas_entry_properties.${Transaction RBI Cloud Order ID}}}

image-20250224-145901.png
  • In the second step, we have a delay of 25 minutes (to ensure the user has had time to enjoy the order) and

  • Check points:

Is TT Transaction ID updated?
Is the push notification received (provided that push are enabled)?

Improvement: include email for people who ordered via web

Step 2 (IAM)

  • In the second step, we are sending the IAM to all eligible users.

  • The in-app message HTML has the following logic to log the custom event and the customer attributes

appboyBridge.logCustomEvent('NPS_Survey_Completed', { Puntos_surv5: (selectedScore + 1).toString(), Feedback_surv5: feedback, url: window.location.href, Motivos_surv5: whatHappend, rbiOrderId: "{{custom_attribute.${TTransactionID}}}", transactionID: transactionIDVal, user_id: "{{${user_id}}}", purchase_id: "{{event_properties.${Transaction Id}}}"
  • People can re-enter every 120 minutes

  • We limit to people who got the push less then 2 hours ago

image-20250224-150550.png

Checkpoints:

Is the IAM received?
It only appears once
IAM has the order ID as an attribute

Canvas Link: https://dashboard-02.braze.eu/engagement/campaigns/67b8792c9884980073a658b2/64ca93d0f8b72b0050415f55?locale=en&page=-2

Step 3 (Webhook)

  • Configure a webhook to hit mParticle server & log the custom event

POST [Api Endpoint] Authorization: Basic [Server to Server Key+":"+Server to server Secret]= Content-Type: application/json { "schema_version": 2, "environment": "production", "user_identities": { "customer_id": "{{${user_id}}}", }, "events": [ { "data": { "event_name": "NPS_Survey_Completed", "custom_event_type": "Other", "custom_attributes": { "rbiOrderId": "{{canvas_entry_properties.${rbiOrderId}}}", "Feedback_surv5": "{{canvas_entry_properties.${Feedback_surv5}}}", "Puntos_surv5": "{{canvas_entry_properties.${Puntos_surv5}}}", "Motivos_surv5": "{{canvas_entry_properties.${Motivos_surv5}}}" }, }, "event_type": "custom_event" } ] }

Api Endpoint, Server Key and server secret correspond to mParticle Custom Feed Input, described in the requirement section of this documentation. [Server to Server Key+":"+Server to server Secret] must be encoded in base64

Done

  • NPS Flow BK

  • Order push BK

After

  • Unify the NPS

  • Prompt user to activate PN after order

  • Ticket IOS push tokens

  • UTMs review

  • Push prompt IOS

  • Email for user that do not have push enabled

  • Update IAM to remove reference of Google Play Store & Apple Store

  • Documentation NPS

  • Documentation order push notifications

 

 

 

 

Related content