ORCRAFT

Intégration native

Flutter et mobile

Ouvrez la connexion dans le navigateur système via AppAuth. N’utilisez pas de WebView embarquée. AppAuth applique le flux système et gère le verifier PKCE pour les clients natifs.

Exemple avec flutter_appauth

import 'package:flutter_appauth/flutter_appauth.dart';

final appAuth = FlutterAppAuth();
final result = await appAuth.authorizeAndExchangeCode(
  AuthorizationTokenRequest(
    clientId,
    redirectUrl,
    issuer: 'https://www.orcraft.net',
    scopes: ['openid', 'profile', 'email'],
    nonce: secureRandomNonce,
  ),
);

final idToken = result.idToken; // Valider le JWT, puis lire son claim sub

En pratique, validez l’ID token puis lisez son claim sub pour obtenir l’identifiant Orcraft. Ne faites pas confiance à un JWT simplement décodé.

Déclarer le retour mobile

Paiement mobile

Appelez l’API Orcraft depuis votre backend lorsqu’un backend existe. Le flux ouvre ensuite l’URL de Stripe Checkout dans le navigateur système. Au retour par App Link, ne débloquez aucun droit depuis le paramètre d’URL : relisez l’état par billing:read ou attendez le webhook serveur.

Référence SDK : flutter_appauth sur pub.dev.