Accéder directement au contenu
Créez un compte
ou
connecter-vous
Logo de la documentation Stripe
/
Demander à l'assistant IA
Créez un compte
Connectez-vous
Démarrer
Paiements
Revenus
Plateformes et places de marché
Gestion de fonds
Ressources pour les développeurs
API et SDKAide
Aperçu
Billing
PrésentationÀ propos des API Billing
Abonnements
    Présentation
    Fonctionnement des abonnements
    Démarrer
    Démarrage rapide
    Planifier une intégration
    Créer une intégration
    Cas d'usage
    À propos des abonnements
    Activer le mode de facturation
    Configurer les événements liés aux abonnements
    Droits d'accès
    Factures d'abonnements
    Planifications d'abonnements
    Modèles tarifaires récurrents
    Authentification forte du client (SCA)
    Configurer des abonnements
    Configurer les méthodes de recouvrement
    Intégrez une grille tarifaire
    Définir des cycles de facturation
    Gérer les abonnements
    Migrer des abonnements vers Stripe
    Définir des quantités de produits ou d'abonnements
    Abonnements présentant des postes à la périodicité différente
    Antidater des abonnements
    Définir des périodes d'essai
    Gérer les abonnements avec paiement différé
    Appliquer des bons de réduction
    Modifier des abonnements
    Gérer les modes de paiement des abonnements
    Analyses
    Gérer des abonnement sur iOS
Invoicing
Facturation à la consommation
Devis
Gestion des clients
Facturation avec d'autres produits
Recouvrement de revenus
Automatisations
Tester votre intégration
Tax
Présentation
Utiliser Stripe Tax
Gérer la conformité
Rapports
Présentation
Sélectionner un rapport
Configurer des rapports
Rapports sur plusieurs comptes
API de rapport
Comptabilisation des revenus
Données
Présentation
Requête sur les données de l'entreprise
Sigma
Data Pipeline
Importer des données externes
États-Unis
Français (France)
AccueilRevenusSubscriptions

Gérer des Abonnements sur iOSVersion bêta privée

Acceptez les paiements récurrents et gérez les droits d'accès avec BillingSDK pour iOS.

Acceptez les paiements d’abonnement, laissez vos clients gérer leurs Abonnements et gérez les droits d’accès directement dans votre application iOS avec le BillingSDK pour iOS. Le SDK fournit des composants d’interface utilisateur préconfigurés pour afficher les boutons d’achat, présenter le portail client et vérifier les droits d’accès aux fonctionnalités premium.

Avant de commencer

Pour utiliser BillingSDK pour iOS, vous aurez besoin de :

  • Un serveur back-end pour créer des sessions client
  • Un compte Stripe ayant accès à la version bêta privée
  • iOS 15.0 ou version ultérieure et macOS 12.0 ou version ultérieure
  • Xcode 15.0 ou version ultérieure

Ce que vous allez créer

Ce guide vous explique comment :

  • Configurer un endpoint de serveur pour créer des sessions client
  • Installer et configurer le BillingSDK pour iOS
  • Afficher les boutons d’achat pour les achats d’abonnement
  • Vérifier les droits d’accès aux fonctionnalités premium
  • Présenter le portail client pour la gestion des abonnements
  • Gérer les erreurs et gérer l’état de la session

Vous trouverez un exemple complet d’application dans le référentiel BillingSDK pour iOS.

Configurer votre back-end
Serveur

Créez un endpoint de serveur qui génère des sessions client pour les utilisateurs authentifiés. Ces sessions authentifient votre application iOS en toute sécurité avec les API de facturation de Stripe.

Créer un endpoint de session client

L’endpoint doit :

  1. Vérifier que l’utilisateur est authentifié
  2. Créer ou récupérer l’ID client Stripe de l’utilisateur
  3. Créer une session client avec les composants requis activés
  4. Renvoyez les détails de la session à votre application

Voici un exemple d’implémentation :

Format de réponse

L’endpoint doit renvoyer ces champs pour une authentification réussie :

ChampTypeDescription
clientSecretchaîneLa clé secrète de la session client utilisée pour authentifier le SDK
expiresAtnombreHorodatage d’expiration en secondes depuis l’heure
customerchaîneL’ID client Stripe

Lorsque l’authentification échoue, renvoyez HTTP 401 pour déclencher l’état non authentifié du SDK.

Installer et configurer le SDK
iOS

Le BillingSDK pour iOS fournit une expérience iOS native pour la gestion des abonnements et le contrôle d’accès aux fonctionnalités.

Ajouter le SDK à votre projet

Lors de la prévisualisation privée, installez le paquet BillingSDK :

  1. Ouvrir votre projet dans Xcode
  2. Sélectionnez Fichier → Ajouter des dépendances de package
  3. Saisissez https://github.com/stripe-samples/billing-ios-sdk dans le champ Rechercher ou saisir l’URL du package
  4. Sélectionnez BillingSDK et cliquez sur Ajouter un package

Configurer le SDK

Initialisez le SDK dans une classe partagée pour gérer la configuration et l’authentification du SDK Billing :

Remarque

Le SDK gère la sécurité des threads en interne : vous pouvez appeler ses méthodes en toute sécurité depuis n’importe quel thread.

Configurer le fournisseur de sessions client

Ajoutez la méthode d’authentification à votre gestionnaire de facturation :

Remarque

Le SDK Billing appelle automatiquement votre fournisseur de session lorsqu’il doit s’authentifier auprès de Stripe. Lorsque le fournisseur renvoie zéro, le SDK passe à l’état non authentifié.

Afficher les boutons d'achat des abonnements
iOS

Les boutons d’achat fournissent un élément d’interface utilisateur préconfiguré pour permettre aux clients d’acheter des Abonnements. Chaque bouton est lié à un produit et à un tarif spécifiques dans votre compte Stripe.

Créer des boutons d’achat dans le Dashboard

Suivez ce guide pour créer des boutons d’achat dans le Dashboard. Si vous prévoyez d’utiliser la fonctionnalité de vérification des droits, assurez-vous que les produits que vous avez créés sont associés à des droits d’accès.

Afficher un bouton d’achat

Remarque

Les boutons d’achat fonctionnent même lorsque les utilisateurs ne sont pas authentifiés. Si nécessaire, le SDK crée un nouveau client Stripe lors de l’achat.

Vérifier et valider les droits
iOS

Les droits vous permettent de contrôler l’accès aux fonctionnalités premium en fonction des Abonnements actifs d’un client.

Vérifier un droit spécifique

Vérifiez si un utilisateur a accès à une fonctionnalité spécifique :

Obtenir tous les droits d’accès actifs

Récupérez tous les droits auxquels le client a accès :

Écouter les changements de droits

Configurez un écouteur pour recevoir une notification en cas de modification des droits :

Remarque

En l’absence de session, getActiveEntitlements() renvoie un tableau vide.

Présenter le portail client
iOS

Le portail client permet aux abonnés de gérer leurs Abonnements, leurs moyens de paiement et leurs informations de facturation.

Afficher le portail client

Présentez le portail lorsque les utilisateurs doivent gérer leur abonnement :

Avertissement

Le portail client nécessite une session authentifiée active. Si l’utilisateur n’est pas connecté, le SDK renvoie une erreur .unauthenticated.

Redirection externe (facultatif)

Vous pouvez également ouvrir le portail dans un navigateur :

Gestion des sessions
iOS

Gestion des sessions

Réinitialisez le SDK lorsque les utilisateurs se déconnectent pour vider les données et les caches de session :

Tester votre intégration

Pendant le développement, utilisez vos clés API d’environnement de test et vos ID de client d’environnement de test pour éviter de créer des paiements réels.

Scénarios de test

Testez ces scénarios courants :

ScénarioÉtapes
Achat d’un nouvel abonnementPrésenter un bouton d’achat à un nouvel utilisateur
Gestion des abonnementsUtiliser le portail client pour modifier les offres
Vérification des droitsVérifier une fonctionnalité premium avec hasEntitlement
Gestion des erreursTester avec des clés non valides ou des sessions expirées
Flux de déconnexionVérifier que billing.reset() vide les données en cache

Voir aussi

  • Droits
  • Configurer le portail client
  • Fonctionnement des abonnements
Cette page vous a-t-elle été utile ?
OuiNon
  • Besoin d'aide ? Contactez le service Support.
  • Consultez notre log des modifications.
  • Des questions ? Contactez l'équipe commerciale.
  • LLM ? Lire llms.txt.
  • Propulsé par Markdoc