Stipre v3

Par gogo94, il y a 8 ans


Bonjour,

J'ai suivi le tutoriel de stripe mais j'ai vu sur l'api de stripe qu'il y a une version 3
Est ce que quelqu'un a reussi a l'utiliser

Et si vous avez un exemples qui utilise les plan et les webhook

merci a vous

14 réponses

SimonDevelop, il y a 8 ans

Je suis aussi perdu sur la nouvelle interface :(

gogo94, il y a 8 ans

il est vachement bien fais mais je comprend rien a comment utiliser le tok custumers pour faire des charge ou submition

SimonDevelop, il y a 8 ans

Il est beaucoup trop complet pour des utilisateurs qui cherche juste à faire des choses simples je trouve.

Muxabble, il y a 8 ans

J'ai galerer mais j'ai finalement réussi, disons que le tutoriel est obsolète dans le sens ou on n'utilise plus subscription mais charge

gogo94, il y a 8 ans

tu pourrai m'envoyer le code que tu as fais stp
en enlevant tes cle

Guique, il y a 8 ans

Hello,

Il n'y a rien de bien sorcier.
Commence par poster ton code, même si il ne marche pas, afin que l'on t'aide ;)

gogo94, il y a 8 ans

En gros j'ai utiliser l'exemple de stripe
HTML:

<script src="https://js.stripe.com/v3/"></script> <form> <label> <input name="cardholder-name" class="field is-empty" placeholder="Jane Doe" /> <span><span>Name</span></span> </label> <label> <input class="field is-empty" type="tel" placeholder="(123) 456-7890" /> <span><span>Phone</span></span> </label> <label> <div id="card-element" class="field is-empty"></div> <span><span>Card</span></span> </label> <button type="submit">Pay $25</button> <div class="outcome"> <div class="error" role="alert"></div> <div class="success"> Success! Your Stripe token is <span class="token"></span> </div> </div> </form>

JS:

var stripe = Stripe('pk_test_...'); var elements = stripe.elements(); var card = elements.create('card', { iconStyle: 'solid', style: { base: { iconColor: '#8898AA', color: 'white', lineHeight: '36px', fontWeight: 300, fontFamily: '"Helvetica Neue", Helvetica, sans-serif', fontSize: '19px', '::placeholder': { color: '#8898AA', }, }, invalid: { iconColor: '#e85746', color: '#e85746', } }, classes: { focus: 'is-focused', empty: 'is-empty', }, }); card.mount('#card-element'); var inputs = document.querySelectorAll('input.field'); Array.prototype.forEach.call(inputs, function(input) { input.addEventListener('focus', function() { input.classList.add('is-focused'); }); input.addEventListener('blur', function() { input.classList.remove('is-focused'); }); input.addEventListener('keyup', function() { if (input.value.length === 0) { input.classList.add('is-empty'); } else { input.classList.remove('is-empty'); } }); }); function setOutcome(result) { var successElement = document.querySelector('.success'); var errorElement = document.querySelector('.error'); successElement.classList.remove('visible'); errorElement.classList.remove('visible'); if (result.token) { // Use the token to create a charge or a customer // https://stripe.com/docs/charges successElement.querySelector('.token').textContent = result.token.id; successElement.classList.add('visible'); } else if (result.error) { errorElement.textContent = result.error.message; errorElement.classList.add('visible'); } } card.on('change', function(event) { setOutcome(event); }); document.querySelector('form').addEventListener('submit', function(e) { e.preventDefault(); var form = document.querySelector('form'); var extraDetails = { name: form.querySelector('input[name=cardholder-name]').value, }; stripe.createToken(card, extraDetails).then(setOutcome); });

Avec du CSS
Je revois comme eux le tok custumers
je sais qu'il faut utiliser ca mais quand je met un form avec un action le js bloque l'action donc a la fin je n'arrive pas a utiliser une fonction pour prelever ou faire un subscription

Je ne sais pas trop ou mettre le code charge par exemple

merci de ton aide

Guique, il y a 8 ans

Hello,

Je viens de tester ton code et il fonctionne bien chez moi. Je me retrouve bien avec un token.
Est-ce que tu récupères bien ton token ?
Quel message d'erreur as-tu ?

gogo94, il y a 8 ans

non je recupere le token ce que je n'arrive pas c'est comment utiliser pour creer l'utilisateur et lui appliquer une charge par exemple

Guique, il y a 8 ans

D'accord.
Du coup c'est ton code PHP qu'il me faudrait pour que je puisse t'aider ;)

gogo94, il y a 8 ans

j'ai fais ca avec l'api v2

require('Stripe.php'); $stripe = new stripe('sk_test_....'); $customer = $stripe->api('customers', [ 'source' => $token, 'description' => $name, 'email' => $email ]); if($plan==1){ $charge = $stripe->api('charges', [ 'amount' => 1500, 'currency' => 'eur', 'customer' => $customer->id ]); } if($plan==2){ $sub = $stripe->api("customers/{$customer->id}", [ 'plan' => "1month", ]); }

mais je ne sais pas ou le placer dans la v3 pour que ca marche

Guique, il y a 8 ans

Ok. As-tu essayé de migrer de ton code ? Si oui, peux-tu me montrer ton code ?
As-tu essayé l'exemple "Getting Started" de la documentation pour commencer ?

Je vois que ton code PHP ne correspond pas à ton code HTML/JS. Que souhaites-tu faire exactement ?

gogo94, il y a 8 ans

j'ai essaye mais j'ai un probleme avec require_once('vendor/autoload.php');
j'ai inslatter composer sur mon serveur mais je n'arrive pas a l'utiliser

Guique, il y a 8 ans

Ah et bien c'est autre chose. On avance.
Quel est le message d'erreur que tu obtiens ?