Skip to content

Instantly share code, notes, and snippets.

@arsewizz
Last active March 14, 2018 03:52
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save arsewizz/c59ca68267df4b103e56082f06f9a288 to your computer and use it in GitHub Desktop.
Save arsewizz/c59ca68267df4b103e56082f06f9a288 to your computer and use it in GitHub Desktop.
Ionic payment with Stripe .
  1. create a ionic project
  • ionic start ionicStripe blank
  1. install the stripe plugin
  • ionic cordova plugin add cordova-plugin-stripe
  • npm install --save @ionic-native/stripe
  1. add stripe to module.ts import { Stripe } from '@ionic-native/stripe';

  2. in payment page :

  • import stripe again import { Stripe } from "@ionic-native/stripe"; and add it to constructor
  1. get credit card information

cardinfo: any = { number: 4242424242424242, expMonth: 8, expYear: 2020, cvc: 213 } 6. I need togenerate token with stripe ans to make payment, in my case, I record all the orders in my database before starting the payment process with stripe

  • this.stripe.setPublishableKey('pk_test**************');
  • this.stripe.createCardToken(this.cardinfo).then((response)=>{ // I get my token here response.id });
  1. i need to save the orders in my database this.stripe.createCardToken(this.cardinfo).then((response)=>{ // I get my token here response.id const Payment = skygear.Record.extend('payment'); skygear.publicDB.save(new Payer({ 'token': response, 'description':"decri[tion payment", 'prix':100, })).then((record) => { console.log(record); }, (error) => { console.error(error); }); });
  2. i create a cloud function

const skygear =require ('skygear'); const skygearCloud = require('skygear/cloud'); var stripe = require("stripe")("sk_test********************"); skygearCloud.afterSave('payment', function(record, original, pool, options) { // write your code stripe.charges.create({ amount: record.prix, currency: "usd", source: record.token.id, description: record.description }, function(err, charge) { if (err) { console.log("Erreur" + JSON.stringify(err)) } // asynchronously called }); }, { async: false });

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment