pismile

Demandes de paiement aux utilisateurs connectés

Vos utilisateurs se connectent avec pismile ? Envoyez-leur une demande de paiement depuis votre serveur, sans redirection.

3 min de lecture · Mis à jour le · API v1

Connectez-vous pour voir vos propres identifiants sandbox dans les exemples.

Si vos utilisateurs se connectent avec « Se connecter avec pismile », vous pouvez leur envoyer une demande de paiement à tout moment : une facture, un abonnement, une recharge. Ils la reçoivent dans leur application bancaire et la valident. Vous ne connaissez jamais leur alias : vous utilisez leur identifiant pismile (sub).

Comment ça marche#

  1. L'utilisateur accepte, une fois

    À la connexion, votre application demande le scope pismile:payment. pismile affiche « Vous envoyer des demandes de paiement — rien n'est débité sans votre validation dans votre banque », et l'utilisateur choisit le compte qui recevra les demandes.

  2. Votre serveur envoie une demande

    POST /api/v1/paiements avec le sub, le montant et votre référence.

  3. L'utilisateur valide dans sa banque

    Il a 24 heures. La demande apparaît aussi dans son historique de l'application pismile.

  4. Vous êtes prévenu

    Webhook paiement.paye (ou paiement.refuse, paiement.expire). L'argent est sur votre compte.

L'utilisateur peut à tout moment changer de compte ou retirer l'accès depuis son espace pismile (« Demandes de paiement »).

Prérequis#

  • Tout ce qui est dans Préparer votre compte.

  • Un plan Développeurs qui inclut le scope pismile:payment, et ce scope coché sur votre application.

1. Demander l'accord à la connexion#

Ajoutez pismile:payment aux scopes demandés :

auth.ts
import Pismile from "@pismile/authjs"

Pismile({ scope: "openid profile pismile:payment" })

Gardez le sub de l'utilisateur (avec Auth.js : session.user.id).

2. Envoyer une demande#

const paiement = await pismile.paiements.creer({
  sub: utilisateur.pismileSub,
  montant: 5000,
  reference: "facture-2026-10-1042",
  motif: "Abonnement octobre",
})
paiement.statut   // "EN_ATTENTE"

Le payeur voit dans sa banque : « Nom de votre application - Abonnement octobre ».

Statuts#

Statut

Signification

EN_ATTENTE

Dans la banque de l'utilisateur, à valider (24 h au plus)

PAYE

Payé, définitif

REFUSE · ANNULE · EXPIRE

Rien n'a été débité

ECHEC

Votre participant a refusé la demande avant envoi ; la même référence peut être réutilisée

Limites#

Pour protéger vos utilisateurs contre les demandes abusives : 3 demandes en attente et 20 demandes par 24 heures, par utilisateur et par application.

Erreurs fréquentes#

Code

Cause

Solution

autorisation_absente

L'utilisateur n'a pas accepté pismile:payment, ou l'a retiré

Le reconnecter avec ce scope

compte_absent

L'utilisateur n'a aucun compte pour recevoir une demande

Lui demander d'ajouter un compte dans l'application pismile

scope_non_autorise

Scope non coché sur l'application, ou non inclus dans votre plan

Console → Applications, ou Plan et usage

trop_de_demandes_en_attente

3 demandes déjà en attente

Attendre qu'il les traite

Cette page vous a-t-elle aidé ?