Skip to content

Geração de código dinâmico com o Punchh

Um código de cupom é um código exclusivo que pode ser usado por um único usuário (uso único ou múltiplo). A estrutura Punchh gera códigos de cupom, que podem ser processados em um app móvel ou no sistema de ponto de venda (POS).

Usando a estrutura de cupom Punchh e o Braze, você pode realizar os seguintes cenários:

  • Gere um código de cupom quando o hóspede clicar em um link de geração de cupom em um e-mail: O código do cupom será gerado dinamicamente e exibido em uma página da Web.
  • Gere um código de cupom quando o hóspede abrir um e-mail: O código do cupom será gerado dinamicamente e mostrado como uma imagem no e-mail.

Integração da geração de código de cupom dinâmico

Etapa 1: Criar uma campanha de cupons

  1. Usando uma campanha de cupom Punchh, crie uma campanha de cupom de geração dinâmica, conforme mostrado na imagem a seguir.
  2. A estrutura de cupons do Punchh gerará os seguintes parâmetros para ativar a geração dinâmica de cupons:
    • Token de geração de cupom dinâmico: Esse é um token de segurança gerado pelo sistema para criptografia.
    • URL de geração de cupom dinâmico: Esse URL será incorporado ao e-mail como um link ou imagem, conforme exigido pela empresa.

O formulário para criar uma campanha de cupons no Punchh.

Etapa 2: gerar a assinatura e construir o URL

A biblioteca JWT.IO decodifica, verifica e gera tokens da Web JSON, um método RFC 7519 aberto e padrão do setor para representar reivindicações de forma segura entre duas partes.

Os seguintes nomes ClaimType podem ser usados para garantir a exclusividade de convidados e cupons:

  • campaign_idrepresenta a ID da campanha Punchh gerada pelo sistema.
  • email: representa o endereço de e-mail do usuário.
  • first_name: captura o nome do usuário.
  • last_nameNome do usuário: captura o sobrenome do usuário.

Para usar a API de código de cupom dinâmico da Punchh, um token JWT deve ser construído. Adicione o seguinte modelo Liquid ao seu dashboard do Braze no corpo da mensagem do canal que deseja usar:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
{% assign header = '{"alg":"HS256","typ":"JWT"}' | base64_encode | replace: '=', '' | replace: '+', '-' | replace: '/', '_' %}

{% capture payload_raw %}

{
  "campaign_id": "CAMPAIGN_ID",
  "email": "{{${email_address}}}",
  "first_name": "{{${first_name}}}",
  "last_name": "{{${last_name}}}"
}

{% endcapture %}

{% assign payload = payload_raw | replace: ' ', '' | replace: '\n', '' | base64_encode | replace: '=', '' | replace: '+', '-' | replace: '/', '_' %}

{% assign unsigned_token = header | append: "." | append: payload %}

{% assign secret = "DYNAMIC_COUPON_GENERATION_TOKEN" %}

{% assign signature_raw = unsigned_token | hmac_sha256_base64: secret %}

{% assign signature = signature_raw | replace: '=', '' | replace: '+', '-' | replace: '/', '_' %}

{% assign jwt = unsigned_token | append: "." | append: signature %}

Substitua o seguinte:

Espaço reservado Descrição
DYNAMIC_COUPON_GENERATION_TOKEN Seu token de geração de cupom dinâmico.
CAMPAIGN_ID Sua ID de campanha.

Etapa 3: Anexar o código do cupom ao corpo da mensagem

Para criar um link para uma página da Web hospedada pelo Puncch, adicione {{jwt}} ao URL de geração dinâmica que você criou anteriormente. Seu link deve ser semelhante ao seguinte:

1
https://fakebrandz.punchh.com/request_coupons/7xY3bL9jRfZ1pA6mc8qD2eS4vT5wX?sign={{jwt}}

Quando um usuário clicar no URL do cupom, ele será redirecionado para uma página da Web hospedada pela Punchh, onde o cupom gerado será exibido.

Exemplo de mensagem de confirmação depois que um usuário gera com sucesso um código de cupom.

Extração de código via JSON como texto simples

Para retornar uma resposta JSON, acrescente {{jwt}} ao URL de geração dinâmica que você criou anteriormente e, em seguida, adicione .json após o token na string do URL. Seu link deve ser semelhante ao seguinte:

1
https://fakebrandz.punchh.com/request_coupons/7xY3bL9jRfZ1pA6mc8qD2eS4vT5wX.json?sign={{jwt}}

Você poderia então aproveitar o Connected Content para inserir o código como texto simples em qualquer corpo de mensagem. Por exemplo:

1
2
{% connected_content https://fakebrandz.punchh.com/request_coupons/7xY3bL9jRfZ1pA6mc8qD2eS4vT5wX.json?sign={{jwt}} :save punchh_coupon %}
{{punchh_coupon.coupon}}

Para vincular o código do cupom em uma imagem:

  1. Acrescente {{jwt}} ao URL de geração dinâmica que você criou anteriormente.
  2. Adicione .png após o token na string do URL.
  3. Incorpore seu link em uma tag HTML <img>.
1
<img src="https://fakebrandz.punchh.com/request_coupons/7xY3bL9jRfZ1pA6mc8qD2eS4vT5wX.png?sign={{jwt}}">

Saída renderizada da tag de imagem do código do cupom.

Envio de mensagens de erro

QUÃO ÚTIL FOI ESTA PÁGINA?
New Stuff!