# Como enviar mensagens transacionais

Mensagens transacionais, como confirmações de pedidos, renovações de assinatura, redefinições de senha, atualizações de envio ou notificações de pagamento, são essenciais para fornecer aos usuários informações oportunas e relevantes com base em ações específicas. O Pushwoosh permite que você automatize essas mensagens usando a ferramenta **Customer Journey Builder**.

## Pré-requisitos
<Aside type="caution" icon="setting" title="Assistência de desenvolvedor necessária">
Você precisará da ajuda de sua equipe de desenvolvimento para concluir esta configuração.
</Aside>

Antes de configurar mensagens transacionais, certifique-se de que:

* O [**SDK do Pushwoosh**](/pt/developer/pushwoosh-sdk/pushwoosh-sdk-overview) está integrado em seu aplicativo móvel ou site.
* Os eventos que você deseja usar em jornadas transacionais são criados, configurados e rastreados no Pushwoosh. [Saiba mais sobre a criação de eventos](/pt/product/audience-data-and-segmentation/events#implementation)


Abaixo estão exemplos de mensagens transacionais comuns e os passos para configurá-las usando o [**Customer Journey Builder**](/pt/product/customer-journey/pushwoosh-journey-overview).

## Enviando uma confirmação de pedido

Para enviar automaticamente mensagens personalizadas de confirmação de pedido quando um evento de compra ocorre, siga estes passos:

1. Na sua conta Pushwoosh, vá para **Campaigns > Customer Journey Builder** e clique em **Create campaign** para começar a construir o fluxo de mensagens transacionais.
2. No **Customer Journey Builder**, adicione o elemento **Trigger-based entry** à tela e selecione o evento [PW_InAppPurchase](/pt/product/audience-data-and-segmentation/events/default-events#pw_inapppurchase) (um evento padrão). Certifique-se de que o evento está configurado corretamente. [Saiba mais](/pt/product/audience-data-and-segmentation/events/default-events#pw_inapppurchase)

<Aside type="tip">
 Se um evento personalizado for necessário para o seu aplicativo, crie-o e configure-o com antecedência. [Saiba mais sobre a criação de eventos](/pt/product/audience-data-and-segmentation/events/custom-events).
</Aside>

<img src="/how-to-create-campaigns-how-to-send-transactional-messages-1.webp" alt="Tela do Customer Journey Builder mostrando o elemento Trigger-based entry com o evento PW_InAppPurchase selecionado para a configuração de confirmação de pedido"/>

3. Adicione um elemento de [**notificação push**](/pt/product/customer-journey/journey-elements#push) à tela. Crie o conteúdo da mensagem e use placeholders como `{order_id}` para personalizar a mensagem.

### Exemplo de conteúdo de push

**Título**: "Confirmação de Pedido"

**Mensagem**: "Obrigado pelo seu pedido `{order_id}`! Seus itens serão enviados em breve."

<img src="/how-to-create-campaigns-how-to-send-transactional-messages-2.webp" alt="Pré-visualização do conteúdo da notificação push mostrando a mensagem de confirmação de pedido com o placeholder de personalização order_id"/>

4. Para garantir que a mensagem seja entregue independentemente de quaisquer limites de mensagens, selecione [**Send messages without global frequency capping**](/pt/product/messaging-channels/global-frequency-capping/#ignore-global-frequency-capping) nas configurações de entrega.

<img src="/shared-53.webp" alt="Configurações de entrega com a opção Send messages without global frequency capping selecionada para mensagem transacional"/>

5. **Finalize e inicie a Journey**. Configure a mensagem e quaisquer etapas opcionais de segmentação ou espera. Termine o ramo com um [**elemento de Saída (Exit element)**](/pt/product/customer-journey/journey-elements/flow-controls/exit/) ou deixando-o sem uma conexão de saída, e então clique em **Launch** para iniciar a jornada.

<img src="/how-to-create-campaigns-how-to-send-transactional-messages-3.webp" alt="Customer Journey finalizada com o elemento de Saída configurado e pronto para ser lançado"/>

A mensagem transacional será agora enviada automaticamente quando as condições do gatilho forem atendidas.

## Enviando um e-mail de renovação de assinatura

Usando serviços de gerenciamento de assinaturas de terceiros, como [**Adapty**](/pt/product/integrations/adapty-integration), [**Apphud**](https://docs.apphud.com/docs/pushwoosh), etc., você pode enviar automaticamente notificações de renovação ou e-mails para os usuários quando a assinatura deles expirar, incentivando-os a renovar. Para isso, faça o seguinte:

1. Primeiro, configure a integração do serviço com o Pushwoosh. [Saiba mais sobre as integrações disponíveis](/pt/product/integrations/#in-app-purchases)
2. Em seguida, configure o evento **Subscription_expired** no serviço de gerenciamento de assinaturas escolhido. Quando a assinatura de um usuário expirar, o serviço enviará um evento de **subscription expired** para o Pushwoosh.
3. Depois de configurar o evento, no **Customer Journey Builder**, clique em **Create campaign** e adicione o elemento **Trigger-based entry** à tela.
4. Selecione o evento **subscription expired** enviado pelo serviço de terceiros.

<img src="/how-to-create-campaigns-how-to-send-transactional-messages-4.webp" alt="Elemento Trigger-based entry configurado com o evento subscription expired de um serviço de terceiros"/>

5. Adicione o [**elemento de e-mail**](/pt/product/customer-journey/journey-elements#email) à tela e selecione o conteúdo de e-mail que você criou com antecedência.

### Exemplo de conteúdo de e-mail

***Assunto**: "Sua Assinatura Expirou – Renove Agora para Continuar Conectado!"*

***Corpo:***

*Olá,*

*Notamos que sua assinatura expirou e não queremos que você perca todos os ótimos benefícios! Renove sua assinatura hoje para continuar desfrutando de acesso ininterrupto aos nossos serviços.*

*[Renovar Minha Assinatura]*

*Obrigado por ser um cliente valioso. Estamos ansiosos para tê-lo de volta!*

6. Para garantir que a mensagem seja entregue independentemente de quaisquer limites de mensagens, selecione [**Send messages without global frequency capping**](/pt/product/messaging-channels/global-frequency-capping/#ignore-global-frequency-capping) nas configurações de entrega.

7. Conclua a configuração da Journey e clique em **Launch campaign.**

<img src="/how-to-create-campaigns-how-to-send-transactional-messages-5.webp" alt="Jornada de e-mail de renovação de assinatura concluída e pronta para ser lançada"/>

Uma vez configurado, as notificações de renovação serão enviadas automaticamente quando o evento de expiração da assinatura for acionado pelo serviço de terceiros.

## Enviando uma mensagem de redefinição de senha

Para enviar um e-mail de redefinição de senha, você precisará configurar o evento de redefinição de senha, configurar o link de redefinição de senha do seu lado e, em seguida, [construir uma Customer Journey](/pt/product/customer-journey/create-a-customer-journey-for-your-project) para enviar o e-mail.

Siga os passos abaixo para concluir a configuração:

### Passo 1. Configure o evento de redefinição de senha no Pushwoosh

Quando um usuário solicita uma alteração de senha, você aciona um evento, como **password change requested**. Você precisa configurar este evento com antecedência.

1. Navegue até **Events** no painel do Pushwoosh e clique em **Create event**.
2. Dê um nome ao evento, por exemplo, **Password reset request**.
3. Adicione os seguintes atributos ao evento:

| Nome do Atributo | Tipo | Descrição | Valor de Exemplo |
| ----- | ----- | ----- | ----- |
| reset_link | String | O link único de redefinição de senha. | https://yourapp.com/reset-password?token=abc |
| user_name | String | O nome do usuário para personalização. | John |
| token_durability | Integer | Validade do token em segundos (ex: 24 horas). | 86400 |
| date | Date | A data e hora da solicitação de redefinição. | 2024-11-18T10:00:00Z |

Esses atributos atuam como placeholders, recebendo dados dinâmicos do seu sistema quando o evento é acionado.

<Aside type="caution" title="Importante">
 Nos atributos do evento, você deve passar um link de redefinição de senha único que você gera do seu lado, ou uma chave única que precisa ser incluída no link para que ele funcione. Este link deve conter um token único que é personalizado para cada usuário e incorporado na URL através de um atributo de evento enviado do seu sistema. O token deve ter um período de expiração (ex: 24 horas) para garantir a segurança, permitindo que os usuários redefinam sua senha apenas dentro do prazo especificado.
</Aside>

<img src="/how-to-create-campaigns-how-to-send-transactional-messages-6.webp" alt="Interface de configuração de evento mostrando o evento de solicitação de redefinição de senha com os atributos necessários"/>

Configure o evento em seu aplicativo. [Saiba mais sobre a configuração de eventos personalizados](/pt/product/audience-data-and-segmentation/events#implementation)

### Passo 2. Gere um link de redefinição de senha

Quando um usuário solicita uma redefinição de senha (ex: clicando em "Esqueceu a senha"), você precisará:

1. **Gerar um token único**. Crie um token seguro e gerado aleatoriamente para o usuário. Por exemplo, 12345-abcde-67890.
2. Combine o token com a URL de redefinição de senha. Por exemplo, https://yourapp.com/reset-password?token=12345-abcde-67890.
3. Salve o token em seu banco de dados, vinculado à conta do usuário, e defina um tempo de expiração (ex: 24 horas).
4. Inclua o link de redefinição no atributo de evento reset_link ao acionar o evento **Password Reset Request**.

### Passo 3. Crie o conteúdo do e-mail

1. Navegue até **Email content** no Pushwoosh e crie um novo conteúdo de e-mail. [Saiba mais](/pt/product/content/email-content/drag-and-drop-email-editor/create-email-content-with-drag-and-drop-editor/#create-new-email-content)
2. Adicione placeholders para conteúdo dinâmico:
   1. `{reset_link}` para o link de redefinição de senha.
   2. `{user_name}` para o nome do usuário.
   3. `{token_durability}` para o tempo de expiração do link.

<img src="/how-to-create-campaigns-how-to-send-transactional-messages-7.webp" alt="Editor de conteúdo de e-mail com placeholders para os campos reset_link, user_name e token_durability"/>

### Passo 4. Crie a Campanha

1. Navegue até a seção **Customer Journey** no Pushwoosh e clique em **Create Campaign**.
2. Arraste e solte um elemento **Trigger-based entry** na tela.
3. Configure o gatilho para ser ativado quando seu sistema enviar o evento **Password Reset Request**.

<img src="/how-to-create-campaigns-how-to-send-transactional-messages-8.webp" alt="Tela do Customer Journey mostrando o elemento Trigger-based entry configurado para o evento Password Reset Request"/>

4. Adicione um elemento de **Email** à tela.

5. Vincule o e-mail ao elemento **Trigger-based entry**.

6. Selecione o conteúdo de e-mail criado anteriormente com placeholders para o link de redefinição e detalhes do usuário.

<img src="/how-to-create-campaigns-how-to-send-transactional-messages-9.webp" alt="Elemento de e-mail vinculado à entrada de gatilho com conteúdo de e-mail de redefinição de senha e placeholders dinâmicos"/>

7. Para garantir que a mensagem seja entregue independentemente de quaisquer limites de mensagens, selecione **Send messages without global frequency capping** nas configurações de entrega.

8. Após adicionar o conteúdo da mensagem, certifique-se de que todas as etapas da jornada estão configuradas corretamente. Termine o ramo com o elemento **Exit** ou deixando-o sem uma conexão de saída, e então clique em **Launch campaign** para iniciar a jornada.

<img src="/how-to-create-campaigns-how-to-send-transactional-messages-10.webp" alt="Jornada de e-mail de redefinição de senha concluída com o elemento Exit configurado e pronto para ser lançado"/>

Uma vez ativada, a **mensagem de redefinição de senha** será enviada automaticamente quando um usuário solicitar a redefinição de sua senha, proporcionando uma experiência contínua e segura.