Impossibile trovare alcuna informazione su questo particolare errore in qualsiasi punto, quindi si prega di portare con me.Errore righe: "Token non è supportato" quando si tenta di iscriversi all'abbonamento
L'app My Angular/NodeJS ha una pagina di pagamento (per gli abbonamenti mensili e annuali) gestita tramite Stripe.
Ho creato i tipi di abbonamento a mia banda cruscotto (due abbonamenti: StarterAnnual
e StarterMonthly
), e ho impostato il gestore in questo modo:
var handler = StripeCheckout.configure({
key: 'pk_test_qs8Ot1USopAZAyLN3gNXma0T',
image: '/img/stripe-logo.png',
locale: 'auto',
email: $scope.user.email,
token: function(token) {
console.log(token)
var tempObj = {
stripeToken : token,
email : $scope.user.email,
cost : $scope.plan.price * 100
plan : $scope.plan.name
}
$http.post('/api/makePayment', tempObj).then(function(data){
console.log('stripe data', data);
},function(err){
console.log('stripe error', err);
})
}
});
handler.open({
name: '<bizname>',
description: $scope.plan.name,
amount: $scope.plan.price * 100
});
Nel mio percorso Nodo, io sono fare questo:
exports.makePayment = function(req,res){
var stripeToken = req.body.stripeToken,
email = req.body.email,
cost = req.body.cost,
plan = req.body.plan;
var tempObj = {
source: stripeToken,
plan: plan,
email: email
}
console.log(tempObj); // Everything looks fine in this log
stripe.customers.create(tempObj, function(err, customer) {
if(err){
console.log("Stripe Error");
console.log(err);
}else{
console.log(customer);
res.status(200).send(customer);
}
});
}
Quando provo a fare un pagamento ottengo:
Stripe Error
{ [Error: token is not supported.]
type: 'StripeInvalidRequestError',
stack: 'Error: token is not supported.\n at Error._Error (/node_modules/stripe/lib/Error.js:12:17)\n at Error.Constructor (/node_modules/stripe/lib/utils.js:105:13)\n at Error.Constructor (/node_modules/stripe/lib/utils.js:105:13)\n at Function.StripeError.generate (/node_modules/stripe/lib/Error.js:56:14)\n at IncomingMessage.<anonymous> (/node_modules/stripe/lib/StripeResource.js:138:39)\n at emitNone (events.js:72:20)\n at IncomingMessage.emit (events.js:166:7)\n at endReadableNT (_stream_readable.js:905:12)\n at doNTCallback2 (node.js:452:9)\n at process._tickCallback (node.js:366:17)',
rawType: 'invalid_request_error',
code: undefined,
param: 'source',
message: 'token is not supported.',
detail: undefined,
raw:
{ type: 'invalid_request_error',
message: 'token is not supported.',
param: 'source',
statusCode: 400,
requestId: 'req_7hzY3mEgeM3nNJ' },
requestId: 'req_7hzY3mEgeM3nNJ',
statusCode: 400 }
Ho praticamente usato il codice direttamente dai documenti, cosa sto facendo di sbagliato qui? Devo impostare le cose in modo diverso per creare un cliente quando si fa un abbonamento?
GRAZIE! Non solo non è menzionato, non è corretto nei campioni. – ScottCate
4 ore perse. PERCHÉ non è questo nei documenti ?? Grazie a caro signore. –
Stripe, correggi i tuoi documenti. – Jelling