tipsi / tipsi-stripe

React Native Stripe binding for iOS/Android platforms
MIT License
1.14k stars 527 forks source link

Push stripe-android to 16.10.0 #790

Closed wijskinner closed 3 years ago

wijskinner commented 3 years ago

Proposed changes

Here's my effort at a PR for the changes suggested in issue https://github.com/tipsi/tipsi-stripe/issues/785. This works for my needs in that I can continue to make payments and setup payment methods in our react-native app. Full disclosure - this is simply taking the code suggested in the issue comment https://github.com/tipsi/tipsi-stripe/issues/785#issuecomment-861289460 and making it work for my uses - I have not tested it in any other scenarios.

Types of changes

What types of changes does your code introduce to tipsi-stripe?
Put an x in the boxes that apply

Checklist

Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! Next steps are a reminder of what we are going to look at before merging your code.

Further comments

If this is a relatively large or complex change, kick off the discussion by explaining why you choose the solution you did and what alternatives you considered.

cybergrind commented 3 years ago

@wijskinner great work, thank you.

cybergrind commented 3 years ago

I've published 9.1.0 as beta.

Folks, it would be great if you could check if it is working before public release.

@saadnaveed94 @ImPDP @designerofthing @wijskinner @ecarrera @karanmehta4797

saadnaveed94 commented 3 years ago

Testing it now

hbole commented 3 years ago

Is this working fine @wijskinner @saadnaveed94 @cybergrind for all kind of payments??

hbole commented 3 years ago
tipsiStripe.setOptions({
  publishableKey: STRIPE_PUBLIC_KEY,
});

try {
        const token = await tipsiStripe.createTokenWithCard(params);
        console.log('Token', token);
        const paymentMethod = await tipsiStripe.createPaymentMethod({
          card: {
            token: token.tokenId,
          },
        });
        console.log('Payment method', paymentMethod);

        stripePaymentRequest(currency, paymentMethod.id, saveCard, null);
      } catch (e) {
        Sentry.captureException(e);
        console.log('Error here', e);
        Toast.show(
          'Error processing your payment, please try again',
          Toast.SHORT,
        );
      }

This is my code, I am trying to pay using this beta version and I get this error - Error here [Error: Keys for idempotent requests can only be used with the same parameters they were first used with. Try using a key other than 'pk_live_<complete_key>' if you meant to execute a different request.]

Please help

DanGDroid commented 3 years ago

i still could not build - i have gms version conflicts