Je suis en train d'essayer de cr�er une application qui int�gre Sumup et notamment la connexion avec un terminal de paiement.
J'utilise le plugin flutter sumup (https://pub.dev/packages/sumup) que j'ai modifi� notamment au niveau du login, pour essayer d'int�grer une connexion transparente pour l'utilisateur.
En utilisant cette documentation -> https://developer.sumup.com/docs/authorization/ , j'ai compris que l'utilisateur (qui est le vendeur) devrait se loguer une fois au d�but, puis je pourrais utiliser le refresh_token pour qu'il se logue ensuite sans rentrer � nouveau ses identifiants.
Je n'ai jamais mis en place de syst�me d'authentification dans mes applis flutter (qui sont tr�s basiques), et donc je n'arrive pas � comprendre le m�canisme, voici ce que je fais :

Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
http.Response response = await http.get(Uri.parse(
    "https://api.sumup.com/authorize?response_type=code&client_id=" +
        client_id +
        "&redirect_uri=myredirecturi"));
if (response.statusCode == 200) {
  String data = response.body;
  print(data);
}
Je m'attends � avoir un �cran de connexion normalement, pour que le vendeur se connecte et que je re�oive dans data mes code d'authentification. Cela me print �a :

Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
I/flutter ( 3950): <!doctype html>
I/flutter ( 3950): <html>
I/flutter ( 3950): <head>
I/flutter ( 3950):   <title>SumUp OAuth</title>
I/flutter ( 3950):   <meta name="viewport" content="width=device-width, maximum-scale=1">
I/flutter ( 3950):   <link rel="icon" href="/favicon.png">
I/flutter ( 3950): </head>
I/flutter ( 3950): <body>
I/flutter ( 3950): 
I/flutter ( 3950):     <oauth></oauth>
I/flutter ( 3950): 
I/flutter ( 3950): 
I/flutter ( 3950): <script src="/gateway/oauth.js"></script>
I/flutter ( 3950): </body>
I/flutter ( 3950): </html>
Je comprends que je dois afficher cette page d'authentification, j'ai donc essayer de passer par un plugin, mais cela m'am�ne sur la page api.sumup.com/authorize qui reste blanche.

Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
final callbackUrlScheme = 'myredirecturl';
 
    final url = Uri.https('api.sumup.com', '/authorize', {
      'response_type': 'code',
      'client_id': client_id,
      'redirect_uri': '$callbackUrlScheme:/',
    });
    final result = await FlutterWebAuth.authenticate(
        url: url.toString(), callbackUrlScheme: callbackUrlScheme);
    final code = Uri.parse(result).queryParameters['code'];
    final response =
        await http.post(Uri.parse('https://api.sumup.com/token'), body: {
      'client_id': client_id,
      'redirect_uri': '$callbackUrlScheme:/',
      'grant_type': 'authorization_code',
      'code': code,
    });
    final accessToken = jsonDecode(response.body)['access_token'] as String;
    print(accessToken);
Quelque chose m'�chappe, j'ai fais des recherches et suivi des tutos (notamment celui de Auth0) mais je n'arrive pas � comprendre comment l'appliquer pour mon cas.

Merci par avance de votre aide.