Wie kann man mit Stripe in einer Aktion sowohl einen Kunden als auch eine Karte erstellen?

Ich versuche zum ersten Mal, einen Kunden zu initialisieren. Ich habe ein Formular, in dem sie sich anmelden und alles, und sie reichen es ein. Auf dem Client geschieht Folgendes:

var cardValues = AutoForm.getFormValues('credit-card-form').insertDoc;
Stripe.createToken(cardValues, function (err, token) {
  if (!err && token) {
    Meteor.call('Stripe.initializeCustomer', token);
  }
});

uf der Serverseite versuche ich so etwas zu machen:

Meteor.methods({
  'Stripe.initializeCustomer': function (token) {
    var Stripe = StripeAPI(process.env.STRIPE_KEY);
    // some validation here that nobody cares about
    Stripe.customers.create({
      source: token
    }).then(function (customer) {
      return Stripe.customers.createCard(customer.id, {
        source: token
      })
    }).catch(function (error) {
      // need to do something here
    })
  }
});

Es scheint, dass die Stripe-API dies nicht gefällt

Unbehandelter Ablehnungsfehler: Sie können ein Stripe-Token nur einmal verwenden

Gibt es eine kanonische Möglichkeit, mehrere Stripe-Anforderungen für ein einzelnes Token auf dem Server auszuführen?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage