API développeur
Intégrez et personnalisez
Lancez Payment for Stripe depuis votre propre application ou site web via les schémas d'URL, et contrôlez quels produits apparaissent dans l'application directement depuis votre tableau de bord Stripe.
Intégration par schémas d'URL
Comment ça marche
Votre application ouvre un payment:// URL avec paramètres
Payment for Stripe lance et traite la transaction
Une fois l'opération terminée, l'application redirige vers votre URL de rappel avec le résultat.
Points de terminaison
Créer un paiement
payment://new?Effectuer un paiement unique avec montant, devise et description.
Paramètres
| Nom | Type | Requis | Description |
|---|---|---|---|
amount | integer | Oui | Montant en centimes (ex. : 1000 = 10,00 $) |
currency | string | Non | Code ISO à trois lettres de la devise (par défaut : la devise actuelle de l’application) |
description | string | Non | Description du paiement encodée en URL |
customerAlias: customer_id | string | Non | Identifiant client Stripe existant |
email | string | Non | E-mail du client pour le reçu |
name | string | Non | Nom du client encodé en URL |
metadata | string | Non | Paires clé-valeur personnalisées (JSON encodé en URL) |
callback | string | Non | URL vers laquelle revenir une fois terminé |
autoprocessAlias: auto | boolean | Non | Passez l'écran d'accueil et lancez le paiement immédiatement. |
auto_return | boolean | Non | Déclencher la fonction de rappel dès le chargement du résultat, sans attendre que le commerçant ferme la boîte de dialogue de résultats. Valeur par défaut : false. |
Vendez les articles de votre catalogue
payment://cart?Remplissez le panier avec les prix de votre catalogue Stripe pour un paiement en magasin. La vente est enregistrée comme une facture Stripe acquittée. Aucun document n'est envoyé au client.
Paramètres
| Nom | Type | Requis | Description |
|---|---|---|---|
pricesAlias: line_items | string | Oui | Identifiants de prix séparés par des virgules avec les quantités (par exemple, price_abc:2,price_xyz:1) |
coupon | string | Non | Identifiant du coupon Stripe à appliquer au panier |
customerAlias: customer_id | string | Non | Identifiant client Stripe existant |
email | string | Non | E-mail du client pour le reçu |
name | string | Non | Nom du client encodé en URL |
metadata | string | Non | Paires clé-valeur personnalisées (JSON encodé en URL) |
callback | string | Non | URL vers laquelle revenir une fois terminé |
autoprocessAlias: auto | boolean | Non | Passez l'écran d'accueil et lancez le paiement immédiatement. |
auto_return | boolean | Non | Déclencher la fonction de rappel dès le chargement du résultat, sans attendre que le commerçant ferme la boîte de dialogue de résultats. Valeur par défaut : false. |
Payer une facture existante
payment://invoice?Encaissement d'un paiement en personne correspondant à une facture Stripe existante. Le montant, la devise, le client et la taxe sont extraits de la facture. Toute modification de ces informations est refusée. Le commerçant utilise un lecteur de carte (Tap to Pay ou saisie manuelle). En cas de succès, la facture est marquée comme payée et liée via les métadonnées charge_id et payment_intent_id. Les factures comportant des abonnements, default_payment_method, ou dont le statut est « payé », « annulé » ou « irrécouvrable » sont refusées et un message d'erreur est généré. Factures provisoires : iOS les finalise en premier, Android les refuse avec invoice_state_changed.
Paramètres
| Nom | Type | Requis | Description |
|---|---|---|---|
id | string | Oui | Identifiant de facture Stripe (doit commencer par in_) |
callback | string | Non | URL de retour après traitement. Reçoit invoice_id et payment_intent_id en cas de succès. |
metadata | string | Non | Paires clé-valeur personnalisées (JSON encodé en URL) fusionnées dans les métadonnées PaymentIntent |
autoprocessAlias: auto | boolean | Non | Passez l'écran d'accueil et lancez le paiement immédiatement. |
auto_return | boolean | Non | Déclencher la fonction de rappel dès le chargement du résultat, sans attendre que le commerçant ferme la boîte de dialogue de résultats. Valeur par défaut : false. |
Gestion des rappels
Une fois la transaction terminée, Payment for Stripe redirige vers votre URL de rappel avec des paramètres de requête indiquant le résultat. Par défaut, la redirection s'effectue après que le commerçant a fermé la boîte de dialogue de résultat afin qu'il puisse effectuer des actions post-transaction (envoi d'un reçu par e-mail, remboursement). Passez auto_return=true pour que la redirection s'effectue dès que le résultat est connu. Compatible avec iOS et Android.
Paramètres de rappel
| Paramètre | Valeurs | Description |
|---|---|---|
status | success | error | cancelled | Résultat de la transaction |
charge_id | string | L'identifiant de transaction Stripe (en cas de succès) est envoyé. iOS envoie l'identifiant de transaction (ch_). Android envoie l'identifiant d'intention de paiement (pi_) et place l'identifiant de transaction dans stripe_charge_id. |
stripe_charge_id | string | Identifiant de la transaction Stripe (ch_) en cas de succès. Android uniquement. |
invoice_id | string | ID de facture Stripe (en cas de succès, flux payment://invoice uniquement) |
payment_intent_id | string | Identifiant Stripe PaymentIntent (en cas de succès). iOS : flux payment://invoice uniquement. Android : à chaque vente par carte. |
error | string | Message d'erreur (en cas d'erreur) |
La transaction a été enregistrée, mais la facture n'a pas pu être marquée comme payée : iOS renvoie status=error avec charge_id, invoice_id et payment_intent_id. Android renvoie status=success avec invoice_reconciliation_failed=true.
Champs hérités, conservés pour les anciennes intégrations : success, amount, currency, chargeId, cancelled, error[message]. Les nouvelles intégrations doivent lire les champs ci-dessus.
Exemples
Paiement simple
Encaissez 10,00 $ avec un simple montant
payment://new?amount=1000Paiement avec description
Encaissez 25,00 € avec une description
payment://new?amount=2500¤cy=eur&description=Coffee%20and%20pastryPaiement avec nouveau client
Encaissez 50,00 $ et créez une fiche client
payment://new?amount=5000&name=John%20Smith&[email protected]Paiement d'un client existant
Encaissez 75,00 $ auprès d'un client Stripe existant
payment://new?amount=7500&customer=cus_ABC123xyzPaiement avec métadonnées
Encaissez 100,00 $ avec des métadonnées personnalisées pour votre suivi
payment://new?amount=10000&description=Invoice%20%231234&metadata=%7B%22order_id%22%3A%221234%22%2C%22location%22%3A%22Store%20A%22%7DTraitement automatique avec rappel
Ignorez l'écran d'accueil et retournez à votre application une fois terminé.
payment://new?amount=3500&autoprocess=true&callback=myapp://payment-completeRetour automatique sur résultat
Déclenchez la fonction de rappel dès que le résultat est connu, au lieu d'attendre que le commerçant ferme la boîte de dialogue de résultat.
payment://new?amount=3500&autoprocess=true&auto_return=true&callback=myapp://payment-completePanier contenant des articles
Facturez les produits de votre catalogue Stripe
payment://cart?prices=price_coffee:2,price_muffin:1&[email protected]Régler une facture existante
Encaisser un paiement en personne pour une facture Stripe existante. Renvoie invoice_id et payment_intent_id en cas de succès.
payment://invoice?id=in_1ABC123xyz&autoprocess=true&callback=myapp://invoice-paidExemple complet
Tous les paramètres combinés pour un flux entièrement intégré
payment://new?amount=15000¤cy=usd&description=Service%20Fee&customer=cus_ABC123xyz&metadata=%7B%22invoice%22%3A%22INV-2024-001%22%7D&autoprocess=true&callback=myapp://payment-resultEncodage URL
N'oubliez pas d'encoder les caractères spéciaux des valeurs de paramètres en URL. Les espaces deviennent %20, les accolades deviennent %7B et %7D.
Prêt à intégrer ?
Téléchargez l'application et commencez dès aujourd'hui à tester votre intégration.