diff --git a/lib/globals.dart b/lib/globals.dart
index dbd9ce453d8cde7e5d34ed77f25cacf6c6f9c3fc..5110f282c5d9c82e8f58f908254545866d7af224 100644
--- a/lib/globals.dart
+++ b/lib/globals.dart
@@ -15,7 +15,8 @@ SharedPreferences prefs;
 String endPointGVA;
 int ramSys;
 
-String cesiumPod = "https://g1.data.le-sou.org";
+// String cesiumPod = "https://g1.data.le-sou.org";
+String cesiumPod = "https://g1.data.e-is.pro";
 
 // Responsive ratios
 bool isTall;
diff --git a/lib/models/history.dart b/lib/models/history.dart
index b987415d85f465343d702f3ed1cc044eda26a7ec..0200822cc52ebc3e60ef1f3cd1fe80f7149fa07b 100644
--- a/lib/models/history.dart
+++ b/lib/models/history.dart
@@ -29,6 +29,8 @@ class HistoryProvider with ChangeNotifier {
   bool isHistoryScreen = false;
   String historySwitchButtun = "Voir l'historique";
   String rawSvg;
+  TextEditingController payAmount = TextEditingController();
+  TextEditingController payComment = TextEditingController();
 
   Future scan(context) async {
     await Permission.camera.request();
@@ -48,16 +50,31 @@ class HistoryProvider with ChangeNotifier {
     return barcode;
   }
 
-  void pay(context, amount, comment) {
+  void pay(BuildContext context, String pinCode) {
+    // MyWalletsProvider _myWalletProvider = MyWalletsProvider();
     String dewif =
-        File(walletsDirectory.path + '${defaultWallet.chest}/wallet.dewif')
+        File(walletsDirectory.path + '/${defaultWallet.chest}/wallet.dewif')
             .readAsLinesSync()[0];
-    DubpRust.simplePaymentFromTransparentAccount(
-        accountIndex: 0,
-        amount: 1,
-        dewif: dewif,
-        gvaEndpoint: endPointGVA,
-        recipient: pubkey);
+    try {
+      print(defaultWallet.derivation);
+      print(payAmount.text);
+      print(payComment.text);
+      print(dewif);
+      print(endPointGVA);
+      print(pinCode);
+      print(pubkey);
+      DubpRust.simplePaymentFromTransparentAccount(
+          accountIndex: defaultWallet.derivation,
+          amount: double.parse(payAmount.text),
+          txComment: payComment.text,
+          dewif: dewif,
+          gvaEndpoint: endPointGVA,
+          secretCode: pinCode,
+          recipient: pubkey);
+    } catch (e) {
+      log.e("ERROR DUBP PAYMENTS");
+      log.e(e);
+    }
   }
 
   String isPubkey(context, pubkey, {bool goHistory}) {
diff --git a/lib/models/myWallets.dart b/lib/models/myWallets.dart
index c7c796ae57afbcfe3ac694fadadf22930b1c3137..ed26c7efd5f47afaf12ca8e2e634d4588e8a8ea9 100644
--- a/lib/models/myWallets.dart
+++ b/lib/models/myWallets.dart
@@ -7,6 +7,9 @@ import 'package:provider/provider.dart';
 
 class MyWalletsProvider with ChangeNotifier {
   List<WalletData> listWallets = [];
+  String pinCode;
+  int pinLenght;
+
   Future initWalletFolder() async {
     getDefaultWallet();
 
diff --git a/lib/screens/history.dart b/lib/screens/history.dart
index a002fad3fd6d9bbcc1b0bec454d2a5d4c67e79e1..4fbe61bf84419c7a2af3242c181fe95c5d0177dc 100644
--- a/lib/screens/history.dart
+++ b/lib/screens/history.dart
@@ -328,9 +328,6 @@ class HistoryScreen extends StatelessWidget with ChangeNotifier {
   }
 
   Widget payView(context, HistoryProvider _historyProvider) {
-    TextEditingController payAmount = new TextEditingController();
-    TextEditingController payComment = new TextEditingController();
-
     return Stack(
       clipBehavior: Clip.hardEdge,
       children: <Widget>[
@@ -344,7 +341,7 @@ class HistoryScreen extends StatelessWidget with ChangeNotifier {
               Padding(
                   padding: EdgeInsets.all(8.0),
                   child: TextField(
-                      controller: payComment,
+                      controller: _historyProvider.payComment,
                       maxLines: 2,
                       textAlign: TextAlign.center,
                       decoration: InputDecoration(),
@@ -357,7 +354,7 @@ class HistoryScreen extends StatelessWidget with ChangeNotifier {
               Padding(
                 padding: EdgeInsets.all(8.0),
                 child: TextFormField(
-                  controller: payAmount,
+                  controller: _historyProvider.payAmount,
                   textAlign: TextAlign.center,
                   maxLines: 1,
                   keyboardType: TextInputType.number,
@@ -378,7 +375,8 @@ class HistoryScreen extends StatelessWidget with ChangeNotifier {
                       // _historyProvider.pay(payAmount.text, payComment.text);
                       Navigator.push(context,
                           MaterialPageRoute(builder: (context) {
-                        return UnlockingWallet(wallet: defaultWallet);
+                        return UnlockingWallet(
+                            wallet: defaultWallet, action: "pay");
                       }));
                     },
                     child: Padding(
diff --git a/lib/screens/home.dart b/lib/screens/home.dart
index f5b523c26904f81fa650130cd4ba9b77a7608260..08e83d57e7e0239cd0ea386f75de939ddd0e86ff 100644
--- a/lib/screens/home.dart
+++ b/lib/screens/home.dart
@@ -4,6 +4,7 @@ import 'package:gecko/models/history.dart';
 import 'package:gecko/models/home.dart';
 import 'package:flutter/material.dart';
 import 'package:gecko/models/myWallets.dart';
+import 'package:gecko/screens/myWallets/unlockingWallet.dart';
 import 'package:gecko/screens/onBoarding/0_noKeychainFound.dart';
 import 'dart:ui';
 import 'package:gecko/screens/settings.dart';
@@ -270,8 +271,17 @@ class HomeScreen extends StatelessWidget {
                                                   height: 57)),
                                           onTap: () {
                                             isWalletsExists
-                                                ? Navigator.pushNamed(
-                                                    context, '/mywallets')
+                                                ? Navigator.push(context,
+                                                    MaterialPageRoute(
+                                                        builder: (context) {
+                                                    return UnlockingWallet(
+                                                      wallet: defaultWallet,
+                                                      action: "mywallets",
+                                                    );
+                                                  }))
+
+                                                // Navigator.pushNamed(
+                                                //     context, '/mywallets')
                                                 : Navigator.push(context,
                                                     MaterialPageRoute(
                                                         builder: (context) {
diff --git a/lib/screens/myWallets/unlockingWallet.dart b/lib/screens/myWallets/unlockingWallet.dart
index ead410e0e8018f96c3b773c248c3eca472b06ac1..d84f98304e5537d1b33e85b70dcdd39cd3d1780f 100644
--- a/lib/screens/myWallets/unlockingWallet.dart
+++ b/lib/screens/myWallets/unlockingWallet.dart
@@ -2,22 +2,21 @@ import 'dart:async';
 
 import 'package:dubp/dubp.dart';
 import 'package:flutter/services.dart';
+import 'package:gecko/models/history.dart';
 import 'package:gecko/models/myWallets.dart';
 import 'package:gecko/models/walletOptions.dart';
-import 'package:gecko/screens/commonElements.dart';
 import 'package:flutter/material.dart';
-import 'package:gecko/screens/myWallets/walletOptions.dart';
 import 'package:pin_code_fields/pin_code_fields.dart';
 import 'package:provider/provider.dart';
 import 'package:gecko/globals.dart';
 
 // ignore: must_be_immutable
 class UnlockingWallet extends StatelessWidget {
-  UnlockingWallet({
-    Key keyUnlockWallet,
-    @required this.wallet,
-  }) : super(key: keyUnlockWallet);
+  UnlockingWallet(
+      {Key keyUnlockWallet, @required this.wallet, @required this.action})
+      : super(key: keyUnlockWallet);
   WalletData wallet;
+  String action;
 
   // ignore: close_sinks
   StreamController<ErrorAnimationType> errorController;
@@ -76,6 +75,9 @@ class UnlockingWallet extends StatelessWidget {
     TextEditingController _enterPin = TextEditingController();
     WalletOptionsProvider _walletOptions =
         Provider.of<WalletOptionsProvider>(context);
+    MyWalletsProvider _myWalletProvider =
+        Provider.of<MyWalletsProvider>(context);
+    HistoryProvider _historyProvider = Provider.of<HistoryProvider>(context);
 
     return Form(
       key: formKey,
@@ -127,6 +129,9 @@ class UnlockingWallet extends StatelessWidget {
               log.d("Completed");
               final resultWallet = await _walletOptions.readLocalWallet(
                   context, this.wallet, _pin.toUpperCase(), _pinLenght);
+              // _myWalletProvider.pinCode = _pin.toUpperCase();
+              _myWalletProvider.pinLenght = _pinLenght;
+
               if (resultWallet == 'bad') {
                 errorController.add(ErrorAnimationType
                     .shake); // Triggering error shake animation
@@ -136,12 +141,12 @@ class UnlockingWallet extends StatelessWidget {
               } else {
                 pinColor = Colors.green[400];
                 // await Future.delayed(Duration(milliseconds: 50));
-                Navigator.push(
-                    formKey.currentContext,
-                    SmoothTransition(
-                        page: WalletOptions(
-                      wallet: wallet,
-                    )));
+                if (action == "mywallets") {
+                  Navigator.pushNamed(formKey.currentContext, '/mywallets');
+                } else if (action == "pay") {
+                  print("Go payments");
+                  _historyProvider.pay(context, _pin.toUpperCase());
+                }
               }
             },
             onChanged: (value) {
diff --git a/lib/screens/myWallets/walletOptions.dart b/lib/screens/myWallets/walletOptions.dart
index e02ff7317717fd12081c629981bc78dd668833d6..24a63e6eb5530fa133478bc12e4f9f5954592bcd 100644
--- a/lib/screens/myWallets/walletOptions.dart
+++ b/lib/screens/myWallets/walletOptions.dart
@@ -7,7 +7,6 @@ import 'package:gecko/models/myWallets.dart';
 import 'package:gecko/models/queries.dart';
 import 'package:gecko/models/walletOptions.dart';
 import 'package:graphql_flutter/graphql_flutter.dart';
-import 'dart:async';
 import 'package:provider/provider.dart';
 import 'package:flutter/services.dart';
 
@@ -57,17 +56,16 @@ class WalletOptions extends StatelessWidget {
     log.d("Wallet options: $currentChest:${wallet.number}");
 
     return WillPopScope(
-      onWillPop: () {
-        _walletOptions.isEditing = false;
-        _walletOptions.isBalanceBlur = true;
-        Navigator.popUntil(
-          context,
-          ModalRoute.withName('/'),
-        );
-        Navigator.pushNamed(context, '/mywallets');
-        return Future<bool>.value(true);
-      },
-      child: Scaffold(
+        onWillPop: () {
+          _walletOptions.isEditing = false;
+          _walletOptions.isBalanceBlur = true;
+          Navigator.popUntil(
+            context,
+            ModalRoute.withName('/mywallets'),
+          );
+          return Future<bool>.value(true);
+        },
+        child: Scaffold(
           resizeToAvoidBottomInset: false,
           appBar: AppBar(
               leading: IconButton(
@@ -77,9 +75,8 @@ class WalletOptions extends StatelessWidget {
                     _walletOptions.isBalanceBlur = true;
                     Navigator.popUntil(
                       context,
-                      ModalRoute.withName('/'),
+                      ModalRoute.withName('/mywallets'),
                     );
-                    Navigator.pushNamed(context, '/mywallets');
                   }),
               title: SizedBox(
                 height: 22,
@@ -405,7 +402,7 @@ class WalletOptions extends StatelessWidget {
                     ])),
               ]),
             ),
-          )),
-    );
+          ),
+        ));
   }
 }
diff --git a/lib/screens/myWallets/walletsHome.dart b/lib/screens/myWallets/walletsHome.dart
index 55c850366e86587f83c7359f68e921e81f4c7c6a..ef02103a729b42c86e7e335c4785a146e7567e4e 100644
--- a/lib/screens/myWallets/walletsHome.dart
+++ b/lib/screens/myWallets/walletsHome.dart
@@ -3,7 +3,8 @@ import 'package:gecko/globals.dart';
 import 'package:gecko/models/myWallets.dart';
 import 'package:gecko/models/walletOptions.dart';
 import 'package:flutter/material.dart';
-import 'package:gecko/screens/myWallets/unlockingWallet.dart';
+import 'package:gecko/screens/commonElements.dart';
+import 'package:gecko/screens/myWallets/walletOptions.dart';
 import 'package:gecko/screens/onBoarding/0_noKeychainFound.dart';
 import 'package:provider/provider.dart';
 
@@ -33,42 +34,60 @@ class WalletsHome extends StatelessWidget {
       myWalletProvider.getDefaultWallet();
     }
 
-    return Scaffold(
-        appBar: AppBar(
-          title: Text('Mes portefeuilles',
-              style: TextStyle(color: Colors.grey[850])),
-          backgroundColor: Color(0xffFFD58D),
-        ),
-        floatingActionButton: Visibility(
-            visible: (isWalletsExists && firstWalletDerivation != -1),
-            child: Container(
-                height: 80.0,
-                width: 80.0,
-                child: FittedBox(
-                    child: FloatingActionButton(
-                        heroTag: "buttonGenerateWallet",
-                        onPressed: () {
-                          showDialog(
-                              context: context,
-                              builder: (BuildContext context) {
-                                return addNewDerivation(context, 1);
-                              });
-                        },
-                        child: Container(
-                            height: 40,
-                            width: 40,
-                            child: Icon(Icons.person_add_alt_1_rounded,
-                                color: Colors.grey[850])),
-                        backgroundColor: Color(0xffEFEFBF))))),
-        body: SafeArea(
-            child: !isWalletsExists
-                ? NoKeyChainScreen()
-                : myWalletsTiles(context)));
+    return WillPopScope(
+        onWillPop: () {
+          Navigator.popUntil(
+            context,
+            ModalRoute.withName('/'),
+          );
+          return Future<bool>.value(true);
+        },
+        child: Scaffold(
+            appBar: AppBar(
+              leading: IconButton(
+                  icon: Icon(Icons.arrow_back, color: Colors.black),
+                  onPressed: () {
+                    Navigator.popUntil(
+                      context,
+                      ModalRoute.withName('/'),
+                    );
+                  }),
+              title: Text('Mes portefeuilles',
+                  style: TextStyle(color: Colors.grey[850])),
+              backgroundColor: Color(0xffFFD58D),
+            ),
+            floatingActionButton: Visibility(
+                visible: (isWalletsExists && firstWalletDerivation != -1),
+                child: Container(
+                    height: 80.0,
+                    width: 80.0,
+                    child: FittedBox(
+                        child: FloatingActionButton(
+                            heroTag: "buttonGenerateWallet",
+                            onPressed: () {
+                              showDialog(
+                                  context: context,
+                                  builder: (BuildContext context) {
+                                    return addNewDerivation(context, 1);
+                                  });
+                            },
+                            child: Container(
+                                height: 40,
+                                width: 40,
+                                child: Icon(Icons.person_add_alt_1_rounded,
+                                    color: Colors.grey[850])),
+                            backgroundColor: Color(0xffEFEFBF))))),
+            body: SafeArea(
+                child: !isWalletsExists
+                    ? NoKeyChainScreen()
+                    : myWalletsTiles(context))));
   }
 
   Widget myWalletsTiles(BuildContext context) {
     MyWalletsProvider _myWalletProvider =
         Provider.of<MyWalletsProvider>(context);
+    WalletOptionsProvider _walletOptions =
+        Provider.of<WalletOptionsProvider>(context);
 
     final bool isWalletsExists = _myWalletProvider.checkIfWalletExist();
 
@@ -99,11 +118,23 @@ class WalletsHome extends StatelessWidget {
             Padding(
                 padding: EdgeInsets.all(16),
                 child: GestureDetector(
-                    onTap: () {
-                      Navigator.push(context,
-                          MaterialPageRoute(builder: (context) {
-                        return UnlockingWallet(wallet: _repository);
-                      }));
+                    onTap: () async {
+                      await _walletOptions.readLocalWallet(
+                          context,
+                          _repository,
+                          _myWalletProvider.pinCode,
+                          _myWalletProvider.pinLenght);
+                      Navigator.push(
+                          context,
+                          SmoothTransition(
+                              page: WalletOptions(
+                            wallet: _repository,
+                          )));
+
+                      // Navigator.push(context,
+                      //     MaterialPageRoute(builder: (context) {
+                      //   return UnlockingWallet(wallet: _repository);
+                      // }));
                     },
                     child: ClipRRect(
                         borderRadius: BorderRadius.all(Radius.circular(12)),
@@ -150,10 +181,12 @@ class WalletsHome extends StatelessWidget {
                                                 : Colors.black)))),
                             // dense: true,
                             onTap: () {
-                              Navigator.push(context,
-                                  MaterialPageRoute(builder: (context) {
-                                return UnlockingWallet(wallet: _repository);
-                              }));
+                              Navigator.push(
+                                  context,
+                                  SmoothTransition(
+                                      page: WalletOptions(
+                                    wallet: _repository,
+                                  )));
                             },
                           )
                         ]))))