Paiements mobile avec Stripe

Est ce que ma feature nécessite des modifs front?

Est ce que je peux rendre ma feature rétrocompatible ou séparer les routes?

Je versionne mon API

L'ancien front fonctionne avec le nouveau back?

Le paiement mobile entré dans les moeurs

  • En Europe, 77% utilisent leur smartphone pour paiement et ebanking...
  • ... contre 18% en 2015
  • 48% font leurs courses sur mobile vs. ordinateur

Source: Visa Europe, septembre 2017

Le standard PCI DSS

  • Payment Card Industry Data Security Standard

  • Instauré par Visa MasterCard et cie.
  • Il vise à "assurer constamment la protection des données sensibles que comportent les cartes de paiement, que ce soit durant leur traitement, leur stockage ou leur transmission"

12 standards à respecter

  1. Systèmes et réseaux sécurisés
  2. Protection des titulaires de carte
  3. Programme de gestion de la vulnérabilité
  4. Contrôle d'accès rigoureux
  5. Contrôle et test réguliers des réseaux
  6. Application de directives en matière de sécurité de l'information

Mais attention à ne pas se brûler...

  • Bullet One
  • Bullet Two
  • Bullet Three

Je veux installer ma propre solution de paiement!

 

Qu'est ce qui m'attend?

Points épineux techniques...

  • Réaliser un paiement à partir d'une carte: Convention avec banques
  • Stocker infos bancaires: audit régulier de sécurité

... et business

  • Paiements déclinés
  • Remboursements
  • Paiements frauduleux: détecter et récupérer le montant

 

Exemple: 5 minutes en moyenne pour vérifier un paiement suspect (enquête Merchant Risk Council, 2015)

Une solution: Stripe

  • SaaS de paiement
  • SDK pour manipuler les cartes bancaires + API de paiement + dashboard pour gestion de paiements

Combien ça coûte?

  • 0,25 € + 1,4% (cartes européennes)
  • 0,25 € + 2,9% (autres cartes)

Pour comparer:

Braintree: 2,9% minimum

Adyen: ~1%

Qu'est ce que ça me rapporte?

  • Gestion déléguée du paiement avec les banques
  • Conformité PCI + recommandations
  • De nombreux outils disponibles: pré-autorisation, abonnements, détection de paiements frauduleux...

Application

SDK

Backend

Stripe

requestPayment

Token

API

createCharge

charge(customer.source)

1

2

3

4

5

6

Stripe

Request

3rd party backend

Authorization

Application backend

tok_*****
ch_*****

Success

Failure

Mobile application

1

2

Installation React Native

SDKs iOS et Android     : 1 jh

 

yarn add tipsi-stripe

: 1h

Librairie JS

  • Facile à installer
  • Méthodes toutes prêtes
  • Librairie non auditée

SDK

  • Support officiel de Stripe
  • Personnalisation poussée
  • 100% compliant

Mise en place

  • Créer un compte sur stripe.com
  • Récupérer clés publique (SDK) et privée (API serveur)
  • Activer compte Stripe pour recevoir paiements sur compte bancaire
  • ⚠️ Support géographique partiel (DOM TOM, Afrique...)

Exemple 1

Paiement avec saisie de CB

~ 30 minutes

Points d'attention

  • Le SDK ne peut que générer des jetons à partir de CBs valides
  • Ne pas mélanger les couples clés publique/privée
  • Un jeton n'est utilisable qu'une seule fois

Exemple 2

Remboursement

~ 30 minutes

Points d'attention

  • Possibilité de rembourser en plusieurs fois
  • Tous les frais sont à la charge du e-commerce
  • Attention à la double commission prélevée par Stripe

Exemple 3

Paiement avec des cartes enregistrées

~ 1h30

Points d'attention

  • Ne pas stocker les IDs de carte sur serveur
  • Filtrer les cartes périmées

Pour la route

  • Paiement en 2 étapes: autorisation et débit
  • Logs API sur dashboard

Questions ?

Made with Slides.com