Vérifiez la disponibilité des fonds !
Cas d'usage
Ce service permet de vérifier la disponibilité des fonds pour le compte à vue de notre client pour un montant donné.
Prérequis
Pour procéder à cette requête il est nécessaire de remplir les prérequis d’éligibilité, d'avoir récupéré le jeton d'accès OAUTH2 (voir le cas d'usage "Récupérez votre jeton") et de fournir les paramètres du body.
Requête
post/funds-confirmations
Paramètres obligatoires ou facultatifs du body requis pour l'appel de ce service
paymentCoverageRequestId - obligatoire : Identifiant de la requête de paiement
payee - facultatif : Le commerçant chez qui la carte est acceptée et donnant des informations sur le PSU
instructedAmount - obligatoire : La structure comprenant le montant renseigné ainsi que la devise
⇒ currency - obligatoire : Devise du montant renseigné
⇒ amount - obligatoire : Montant qui permettra de déterminer si les fonds sont disponibles
accountId - obligatoire : Identifiant unique pour le compte renseigné.
⇒ iban - facultatif : Numéro de compte bancaire international (IBAN)
⇒ other - facultatif : Identifiant unique d'un compte, d'une personne ou organisation
=> identification - obligatoire : Identifiant de l'API
=> schemeName - obligatoire : Type d'identifiant (BANK, COID, SREN, SRET, NIDN, OAUT, CPAN)
=> issuer - facultatif : Entité fournissant l'identification
Résultat retourné
Le résultat retourné reprendra les informations de la requête ainsi que la réponse concernant la disponibilité des fonds sous la forme d'un booléen.
Un lien self sera également présent pour revenir à la page obtenue juste après exécution de la requête.
Exemple
Requête
POST http://localhost:8080/v1/funds-confirmations
Body
{ "paymentCoverageRequestId" : "MyCoverage123456", "instructedAmount" : { "currency" : "EUR", "amount" : "123.45" }, "accountId" : { "iban" : "FR7613807008043001965405158" } } |
Résultat
Status code : 200
Body
{ |
(cas du persona Marc -D0999990I0)
Codes erreurs
Voici la liste de descriptions des codes erreurs de ce service. Il y a une annotation rouge pour ceux étant définis CFONB.
Lien vers la description de la méthode et des codes retour http
Erreur | Description de l'erreur |
AC01 (CFONB) | IncorrectAccountNumber : le numéro de compte est incorrect ou inconnu |
AC04 (CFONB) | ClosedAccountNumber : le compte est clos |
AC06 (CFONB) | BlockedAccount : le compte est bloqué / fait l'objet d'une opposition |
FF01 (CFONB) | InvalidFileFormat => le body ne respecte le format définit par la norme STET |
BADS | BadScope : l'appel au service a été fait avec un jeton AISP (CBPII attendu) |
INTE | InternalError : il y a une erreur interne de traitement |
INTS | InternalServerError : il y a une erreur interne de communication avec le SI |
NGAC | NotGrantedAccount : le compte n'est pas consenti |
NIMP | NotImplemented : le mauvais verbe est appelé (POST attendu) |
TMRQ | TooManyRequest : le nombre de requêtes possibles a été dépassé |
IPSU | InvalidPSU : Numéro d'abonné non référencé ou abonnement banque à distance résilié |
Tests d'acceptance
Ces cas de tests ont pour objectif de vous permettre d'effectuer un minimum de tests pour prendre en main cette API et y accéder depuis votre application.
Description du test | Jeu de données |
Cas standard, le paiement peut être couvert | Persona : Marc -D0999990I0 Prérequis : scope OAuth2 = piisp Amount : montant inférieur à 459€ accountId : FR7613807008043001965405255 Currency : EUR Résultat : réponse positive à la requête :
|
Cas aux limites : le paiement ne peut être couvert en raison de fonds insuffisants | Persona : Marc -D0999990I0
Prérequis : scope OAuth2 = piisp
Amount : montant supérieur à 4 179€
accountId : FR7613807008043001965405158
Currency : EUR
Résultat : réponse négative à la requête :
|
Requête HTTP utilisant la méthode GET | Persona : Marc -D0999990I0
Prérequis : scope OAuth2 = piisp
Résultat : réponse HTTP code 405 => méthode non autorisée |
Requête HTTP avec un IBAN absent ou erroné en paramètre du body | Persona : Marc -D0999990I0
Prérequis : scope OAuth2 = piisp
Amount : montant de 4 179€
accountId : FRXXXX807008043001965405158
Currency : EUR
Résultat : réponse HTTP code 400 => requête erronée message d'erreur : AC01 |
Requête HTTP avec une structure de montant/devise absente ou erronée en paramètre du body | Persona : Marc -D0999990I0
Prérequis : scope OAuth2 = piisp
accountId : FR7613807008043001965405158
Résultat : réponse HTTP code 400 => requête erronée message d'erreur : FF01 |
Requête HTTP avec un montant absent ou erroné en paramètre du body | Persona : Marc -D0999990I0
Prérequis : scope OAuth2 = piisp
Amount :
accountId : FR7613807008043001965405158
Currency : EUR
Résultat : réponse HTTP code 400 => requête erronée message d'erreur : FF01 |
Requête HTTP avec une devise absente ou erronée en paramètre du body | Persona : Marc -D0999990I0
Prérequis : scope OAuth2 = piisp
Amount : montant supérieur à 4 179€
accountId : FR7613807008043001965405158
Currency :
Résultat : réponse HTTP code 400 => requête erronée message d'erreur : FF01 |
Requête HTTP avec un identifiant de requête de paiement absent ou erroné en paramètre du body | Persona : Marc -D0999990I0
Prérequis : scope OAuth2 = piisp
Amount : montant supérieur à 4 179€
accountId : FR7613807008043001965405158
Currency : EUR
Résultat : réponse HTTP code 400 => requête erronée message d'erreur : FF01 |