Liens de paiement
Les Liens de paiement sont des URLs de paiement permanentes et partageables, sans date d’expiration par défaut. Contrairement aux Sessions de paiement qui sont à usage unique et expirent, un Lien de paiement peut être utilisé plusieurs fois, par plusieurs clients différents.
Cas d’usage typiques : lien de paiement dans un email marketing, bouton d’achat sur un site, QR code en point de vente, lien partagé sur WhatsApp.
Lien de paiement → lien permanent, réutilisable, partageable à grande échelle. Idéal pour les produits standards. Session de paiement → session unique, liée à un Customer précis, expire après un délai. Idéale pour les paniers e-commerce personnalisés.
Types de liens
| Type | Usage | Champs requis |
|---|---|---|
product | Vente d'un ou plusieurs Products définis. | products (IDs) |
custom | Montant libre défini par le marchand. | amount |
donation | Don libre — le client saisit le montant. | Aucun montant requis |
Endpoints
| Méthode | Endpoint | Description |
|---|---|---|
| POST | /payment-links/ | Créer un lien de paiement |
| GET | /payment-links/ | Lister les liens |
| GET | /payment-links/{id}/ | Récupérer un lien |
| PATCH | /payment-links/{id}/ | Modifier un lien |
| DELETE | /payment-links/{id}/ | Supprimer définitivement |
| POST | /payment-links/{id}/archive/ | Archiver (désactiver sans supprimer) |
| POST | /payment-links/{id}/restore/ | Restaurer un lien archivé |
Schéma de l’objet
Créer un Lien de paiement
currency Requis Code devise ISO 4217 du lien de paiement.
payment_link_type Optionnel Type du lien : product, custom, ou
donation. Détermine les champs requis et le comportement de la
page de paiement.
products Optionnel Liste d’IDs de Products à vendre
via ce lien. Requis si payment_link_type: product.
En savoir plus
Vous pouvez associer jusqu’à 20 produits par lien. Si un seul produit est associé, la page de paiement affiche directement ses détails. Avec plusieurs produits, l’acheteur voit une liste de sélection.
amount Optionnel Montant fixe en centimes. Requis si payment_link_type: custom.
Ignoré pour les types product et donation.
name Optionnel Nom affiché en titre sur la page de paiement. Si non fourni et
type: product, le nom du premier produit est utilisé.
validity_type Optionnel Politique de validité du lien.
En savoir plus
Valeurs : unlimited (jamais expiré, jamais limité),
limited (limité par max_usage et/ou
expires_at), one_time (utilisable
une seule fois — équivalent à max_usage: 1).
max_usage Optionnel Nombre maximum d’utilisations du lien. Une fois atteint, la page de paiement affiche un message d’indisponibilité.
En savoir plus
Actif uniquement si validity_type: limited. Compte une
utilisation dès qu’un paiement est initié (statut processing),
même si le paiement échoue ensuite. Utile pour les ventes en quantité limitée.
expires_at Optionnel Date et heure d’expiration du lien. Après cette date, la page de paiement est désactivée.
En savoir plus
Actif uniquement si validity_type: limited. Le lien peut
expirer avant max_usage si les deux sont définis.
redirect_url Optionnel URLs de redirection après paiement. Objet avec les clés success
(URL après paiement réussi) et cancel (URL si l’acheteur abandonne).
En savoir plus
Si non fourni, Sangho affiche une page de confirmation générique. Ajoutez
?session_id={CHECKOUT_SESSION_ID} à votre URL de succès
pour récupérer les détails côté serveur.
payment_method_types Optionnel Méthodes de paiement autorisées sur ce lien. Si omis, toutes les méthodes actives de l’App sont proposées.
collect_customer_info Optionnel Si true, la page de paiement collecte les informations de
l’acheteur (nom, email) et crée automatiquement un Customer.
En savoir plus
Désactiver cette option (false) produit des paiements anonymes
— moins de données mais une expérience plus rapide. Non recommandé si vous souhaitez
envoyer des reçus automatiques.
allow_quantity Optionnel Si true, affiche un sélecteur de quantité sur la page de
paiement. L’acheteur peut choisir combien d’exemplaires acheter.
metadata Optionnel Données libres. Retournées dans les webhooks
payment_intent.succeeded liés à ce lien.