Gestion des mandats

Ressources

La récupération des mandats associé à un utilisateur se fait via :

/api/[domaine_partenaire]/mandates pour accéder aux mandats de prélèvements associés à l’utilisateur connecté

/api/[domaine_partenaire]/users/appuserid/mandates pour accéder aux mandats de
prélèvements associés à l’utilisateur « appuserid ».

Il y a deux façons de créer un mandat de prélèvement bancaire :
- Mandat par signature électronique, validé par signature électronique
- Mandat papier, validé par le Back Office S-money.

1.Mandates
Contient les informations d’un mandat de prélèvement bancaire

Propriété TypeExempleDescription
Id Long 123 Id du mandat
Date DateTime 2013-09-10T15:49:58.
791121+02:00
Date de création du mandat
BankAccount BankAccountRef Référence vers le compte bancaire
Status Int 0 Statut du mandat
0 = En attente
1 = Validé
2 = Révoqué
3 = Echec
UrlReturn String http://s-money.fr/returnurl Url vers laquelle est redirigé en fin de signature
MandateDemands MandateDemands Détails de la demande
Href Uri Url à appeler afin de signer électroniquement le mandat
ErrorCode Int 0 Code d’erreur pour les demandes échouées,
0 = Aucune erreur.
1 = Échec de la session
2 = Session avortée
3 = Session annulée

2. MandateDemands
Contient les informations d’une demande de mandat de prélèvement bancaire

Propriété TypeExempleDescription
Id Long 123 Id de la demande
RequestDate DateTime 2013-09-10T15:49:58. 791121+02:00 Date de création de la demande
VoucherCopies List<Attachement> Liste des pièces justificatives
Status Int Statut de la demande
0 = Incomplète
1 = En attente
2 = Refusée
3 = Acceptée
Reason String Motif du refus :
- Le compte bancaire du mandat ne
correspond pas au compte bancaire
enregistré
- Mandat illisible
- Le mandat n’est pas signé
- Autre ( xxxxxxxx )

3. Attachement
Cet objet permet d’identifier le compte bancaire de l’utilisateur

Propriété TypeExempleDescription
Id Long 98 Identifiant du fichier
Name String Justificatif Nom du fichier
ContentType String "image/png" Type de l’image
Size Long 523010 Taille de la pièce jointe (en octet)
Href Url Lien vers la pièce jointe

4. BankAccountRef
Cet objet permet d’identifier le compte bancaire de l’utilisateur

Propriété TypeExempleDescription
Id Long 98 Identifiant du compte bancaire
Href Uri "/api/[domaine_partenaire]/bankaccounts/98" Uri vers le détail du compte bancaire

Signer un mandat électronique

1. Envoi des données de la requête de mandat au serveur S-money

Pour signer un mandat électronique, référez-vous à l’exemple présent dans la marge de droite.

L’urlcallback est un paramètre optionnel.

2. Envoi des données du mandat électronique créé au serveur tiers

Le serveur tiers doit mettre à disposition une url serveur permettant au serveur S-money de le notifier du résultat de la validation du mandat.

L’appel du serveur S-money est effectué en méthode HTTP POST.

Les paramètres de la requête HTTP sont :

Paramètre Type Description
id Long Id du mandat
error Int Code d’erreur pour les demandes échouées
0 = Aucune erreur.
1 = Echec de la session
2 = Session avortée
3 = Session annulée
type Int Type de l’opération
9 = création d’un mandat
status Int Statut du mandat
1 = Validé
2 = Révoqué
3 = Echec

3. Redirection en fin de signature électronique du mandat

Le serveur tiers doit mettre à disposition une url serveur permettant au serveur S-money de rediriger le client vers l’environnement tiers.

L’url peut-être soit associée au scheme web (http/https) ou à un scheme privatif dans le cas où l’appel serait effectué à partir d’une application mobile tierce.

Les paramètres de la requête HTTP sont :

Paramètre Type Description
id Long Id du mandat
type Int Type de l’opération
9 = création d’un mandat
status Int Statut du mandat
1 = Validé
3 = Echec

Envoyer un mandat papier à S-money

Pour envoyer un mandat papier, référez-vous à l’exemple présent dans la marge de droite.

Suite au refus d’un mandat pour raison X, il est possible d’effectuer une nouvelle demande en uploadant une nouvelle pièce sur le même id de mandat (id du mandat refusé précédemment).

En cas de refus du mandat pour raison X, la raison est renvoyée via le paramètre « reason » et le statut du mandat reste à 0 (en attente).

1. Envoi des données du mandat papier créé au serveur tiers
Le serveur tiers doit mettre à disposition une url serveur permettant au serveur S-money de le notifier de la validation du mandat (sous 2 jours ouvrés après la date réception de la demande).

L’appel du serveur S-money est effectué en méthode HTTP POST.
Les paramètres de la requête HTTP sont :

Paramètre Type Description
id Long Id du mandat
type Int Type de l’opération
9 = mandat
mandatedemandstatus Int Statut de la demande
0 = Incomplète
1 = En attente
2 = Refusée
3 = Acceptée
status Int Statut du mandat
0 = en attente
1 = validé
2 = révoqué
userid string Identifiant de l’utilisateur chez l’application tierce
reason String Raison du refus :
- Le compte bancaire du mandat ne correspond pas au
compte bancaire enregistré
- Mandat illisible
- Le mandat n’est pas signé
- Autre (xxxxxxxx)

Récupérer la liste des mandats

Pour récupérer la liste des mandats, veuillez vous référer à l’exemple présent en marge de droite.

Récupérer un mandat

Pour récupérer un mandat, veuillez vous référer à l’exemple présent en marge de droite.

Révoquer un mandat

Pour révoquer un mandat, veuillez vous référer à l’exemple présent en marge de droite.