title: Flutter Stripe throws StripeException when Presenting Payment Sheet
body: <p>I am trying to implement a Stripe payment system in my flutter app using the stripe_payment package. In my code, I call Stripe.instance.initPaymentSheet(...), however when I try to call Stripe.instance.presentPaymentSheet(...) just a few lines later, I get this error:</p>
  <pre><code>flutter: StripeException(error: LocalizedErrorMessage(code: FailureCode.Failed, localizedMessage: No payment sheet has been initialized yet, message: No payment sheet has been initialized yet, stripeErrorCode: null, declineCode: null, type: null))
  </code></pre>
  <p>Here is my code:</p>
  <pre><code>Future&lt;void&gt; makePayment() async {
      final url = Uri.parse(
          '${firebaseFunction}');
  
      final response =
          await http.get(url, headers: {'Content-Type': 'application/json'});
  
      this.paymentIntentData = json.decode(response.body);
  
      await Stripe.instance.initPaymentSheet(
          paymentSheetParameters: SetupPaymentSheetParameters(
              paymentIntentClientSecret: paymentIntentData!['paymentIntent'],
              applePay: true,
              googlePay: true,
              style: ThemeMode.dark,
              merchantCountryCode: 'UK',
              merchantDisplayName: 'Test Payment Service'));
      setState(() {});
  
      print('initialised');
      try {
        await Stripe.instance.presentPaymentSheet();
        setState(() {
          paymentIntentData = null;
        });
        ScaffoldMessenger.of(context).showSnackBar(SnackBar(
          content: Text('Payment Successful!'),
        ));
      } catch (e) {
        print(e);
      }
      // await displayPaymentSheet();
    }
  </code></pre>
  <p>And here is my node.js code (accessed through url):</p>
  <pre><code>const functions = require(&quot;firebase-functions&quot;);
  
  const stripe = require('stripe')(functions.config().stripe.testkey);
  
  exports.stripePayment = functions.https.onRequest(async (req, res) =&gt; {
      const paymentIntent = await stripe.paymentIntents.create({
          amount: 170,
          currency: 'usd'
      },
      function(err, paymentIntent) {
          if (err != null) {
              console.log(err);
          } else {
              res.json({
                  paymentIntent: paymentIntent.client_secret
              })
          }
      })
  })
  </code></pre>
  <p>Why doesn't the Payment Sheet initialize (or stay initialized) when I try to use the presentPaymentSheet method?</p>