> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dodopayments.com/llms.txt
> Use this file to discover all available pages before exploring further.

# AutoSend

> Apprenez à utiliser l'API email d'AutoSend pour envoyer des emails transactionnels automatisés pour vos transactions, remboursements et événements de paiement Dodo Payments.

## Introduction

L'intégration d'AutoSend et de Dodo Payments vous permet d'envoyer automatiquement des notifications par email en temps réel pour tous les événements de paiement, des transactions réussies aux tentatives échouées et aux confirmations de remboursement.

Envoyez des emails transactionnels pour les événements de paiement en utilisant la puissante API email d'AutoSend.

<Info>
  Cette intégration nécessite votre clé d’API AutoSend pour l’authentification. Vous pouvez trouver votre clé API dans le tableau de bord AutoSend sous Paramètres > Clés API.
</Info>

## Prise en main

Suivez ces étapes pour intégrer AutoSend avec Dodo Payments :

<Steps>
  <Step title="Open Webhook Section">
    Accédez à la section Webhooks de votre tableau de bord Dodo Payments.

    <Frame>
      <img src="https://mintcdn.com/dodopayments/VOF9xBBvs1EjN4xq/images/integrations/autosend.png?fit=max&auto=format&n=VOF9xBBvs1EjN4xq&q=85&s=8645c6b295d3fecdf62f046e4480b1e4" alt="Ajouter un point de terminaison et menu déroulant des intégrations" style={{ maxHeight: '500px', width: 'auto' }} width="1750" height="1234" data-path="images/integrations/autosend.png" />
    </Frame>
  </Step>

  <Step title="Select AutoSend Integration">
    Choisissez AutoSend dans la liste des intégrations disponibles.
  </Step>

  <Step title="Enter API Key">
    Fournissez votre clé d’API AutoSend pour l’authentification. Vous pouvez trouver votre clé API dans le tableau de bord AutoSend sous Paramètres > Clés API.

    <Card title="Learn how to create and manage API keys" icon="key" href="https://docs.autosend.com/api-keys">
      Consultez la documentation AutoSend pour obtenir des instructions détaillées sur la création et la gestion des clés API.
    </Card>
  </Step>

  <Step title="Configure Transformation">
    Configurez des gestionnaires de transformation JavaScript pour personnaliser le contenu des e-mails en fonction des événements de paiement.
  </Step>

  <Step title="Test & Create">
    Testez votre configuration de webhook pour vous assurer que les e-mails sont envoyés correctement, puis créez l’intégration.
  </Step>

  <Step title="Activation Complete">
    🎉 Votre intégration AutoSend est maintenant active et enverra automatiquement des e-mails pour les événements de paiement configurés.
  </Step>
</Steps>

## Exemples de code

### Email de confirmation de paiement

Envoyez un email de confirmation lorsqu'un paiement est traité avec succès :

```javascript payment_confirmation.js icon="js" expandable theme={null}
function handler(webhook) {
  if (webhook.eventType === "payment.succeeded") {
    const p = webhook.payload.data;
    webhook.url = "https://api.autosend.com/v1/mails/send";
    webhook.payload = {
      to: {
        email: p.customer.email,
        name: p.customer.name,
      },
      from: {
        email: "payments@mail.yourdomain.com",
        name: "Your Company",
      },
      subject: "Payment Successful - Thank you for your purchase!",
      templateId: "A-61522f2xxxxxxxxx",
      dynamicData: {
        customerName: p.customer.name,
        amount: p.amount,
        currency: p.currency,
        paymentId: p.payment_id,
        paymentDate: new Date(p.created_at).toLocaleDateString(),
      },
      replyTo: {
        email: "support@yourdomain.com",
        name: "Support Team",
      },
    };
  }
  return webhook;
}
```

### Email de bienvenue pour l'abonnement

Envoyez un email de bienvenue lorsqu'un nouvel abonnement est créé :

```javascript subscription_welcome.js icon="js" expandable theme={null}
function handler(webhook) {
  if (webhook.eventType === "subscription.active") {
    const s = webhook.payload.data;
    webhook.url = "https://api.autosend.com/v1/mails/send";
    webhook.payload = {
      to: {
        email: s.customer.email,
        name: s.customer.name,
      },
      from: {
        email: "subscriptions@mail.yourdomain.com",
        name: "Your Company",
      },
      subject: "Welcome to your subscription!",
      templateId: "A-61522f2xxxxxxxxx",
      dynamicData: {
        customerName: s.customer.name,
        planName: s.plan.name,
        billingInterval: s.billing_interval,
        nextBillingDate: new Date(s.next_billing_at).toLocaleDateString(),
        subscriptionId: s.subscription_id,
      },
      replyTo: {
        email: "support@yourdomain.com",
        name: "Support Team",
      },
    };
  }
  return webhook;
}
```

### Notification d'échec de paiement

Envoyez un email de notification lorsqu'un paiement échoue :

```javascript payment_failure.js icon="js" expandable theme={null}
function handler(webhook) {
  if (webhook.eventType === "payment.failed") {
    const p = webhook.payload.data;
    webhook.url = "https://api.autosend.com/v1/mails/send";
    webhook.payload = {
      to: {
        email: p.customer.email,
        name: p.customer.name,
      },
      from: {
        email: "billing@mail.yourdomain.com",
        name: "Your Company Billing",
      },
      subject: "Payment Failed - Action Required",
      templateId: "A-61522f2xxxxxxxxx",
      dynamicData: {
        customerName: p.customer.name,
        amount: p.amount,
        currency: p.currency,
        failureReason: p.failure_reason,
        paymentId: p.payment_id,
        retryUrl: `https://yourdomain.com/billing/retry/${p.payment_id}`,
      },
      replyTo: {
        email: "billing@yourdomain.com",
        name: "Billing Support",
      },
    };
  }
  return webhook;
}
```

## Meilleures pratiques

* **Vérifiez votre domaine d'expéditeur** : Assurez-vous que votre domaine d'email d'expéditeur est vérifié dans AutoSend pour améliorer la délivrabilité et éviter les problèmes d'authentification. Les domaines vérifiés aident à empêcher les emails de se retrouver dans les dossiers de spam.

* **Utilisez des données dynamiques pour la personnalisation** : utilisez le champ `dynamicData` pour personnaliser les e-mails avec des informations spécifiques au client comme les noms, montants des paiements et détails d’abonnement. Les e-mails personnalisés obtiennent de meilleurs taux d’engagement.

* **Rédigez des lignes d'objet claires** : Rédigez des lignes d'objet descriptives qui indiquent clairement le but de l'email. Évitez les mots déclencheurs de spam et gardez les sujets concis (moins de 50 caractères).

* **Testez avant la production** : Testez toujours vos emails avant de les envoyer en production. Cela garantit que le contenu de votre email s'affiche correctement et que toutes les données dynamiques sont correctement mappées.

## Référence API

Pour des détails complets sur l'API AutoSend, y compris tous les paramètres disponibles et les codes d'erreur, visitez la [Documentation de l'API AutoSend](https://docs.autosend.com/api-reference/mails/send).

## Dépannage

<AccordionGroup>
  <Accordion title="Emails not being sent">
    * Vérifiez que la clé API est correcte et active
    * Assurez-vous que le domaine de l’expéditeur est vérifié dans AutoSend
    * Assurez-vous que les adresses e-mail des destinataires sont valides
    * Passez en revue les limites et quotas d’envoi AutoSend
    * Vérifiez que l’URL de point de terminaison API est correcte : `https://api.autosend.com/v1/mails/send`
    * Vérifiez que les paramètres requis sont présents dans la charge utile
  </Accordion>

  <Accordion title="Transformation errors">
    * Validez que la structure JSON correspond au format de l’API AutoSend
    * Vérifiez que tous les champs requis sont présents (`to`, `from`, `templateId` ou `html`/`text`)
    * Assurez-vous que les adresses e-mail sont correctement formatées
    * Vérifiez que `templateId` est valide si vous utilisez des modèles
    * Vérifiez que les clés `dynamicData` correspondent aux variables de votre modèle
  </Accordion>

  <Accordion title="Template issues">
    * Vérifiez que votre ID de modèle est correct et actif dans AutoSend
    * Assurez-vous que les clés `dynamicData` correspondent aux variables utilisées dans votre modèle
    * Vérifiez que toutes les variables de modèle requises sont fournies
    * Testez votre modèle indépendamment dans le tableau de bord AutoSend
  </Accordion>
</AccordionGroup>
