Logo Blue Finalse
Console 
  Français   English


C#


  • DÉMARRER
  • Authentification
  • Hello World
  • Tarification
  • Rate Limit
  • CAS D'UTILISATION
  • Intégration UI FPay
  • Intégration UI personalisé
  • Interopérabilité  New
  • Liens et QRCodes de Paiement
  • Argent des tiers  New
  • Audit & Tableau de bord  New
  • REFÉRENCES
  • Attempt
  • AuthAccess
  • Deposit
  • FundRequest
  • QuasiTransfer
  • Transaction
  • Transfer
  • Wallet
Logo Blue FinalseLogo Blue Finalse
Javascript
Console 
  Français   English
  • DÉMARRER
  • Authentification
  • Hello World
  • Tarification
  • Rate Limit
  • CAS D'UTILISATION
  • Intégration UI FPay
  • Intégration UI personalisé
  • Interopérabilité  New
  • Liens et QRCodes de Paiement
  • Argent des tiers  New
  • Audit & Tableau de bord  New
  • REFÉRENCES
  • Attempt
  • AuthAccess
  • Deposit
  • FundRequest
  • QuasiTransfer
  • Transaction
  • Transfer
  • Wallet

Deposit

Présentation  

Cet objet permet d'éffectuer des dépôts d'argent sur un portefeuille FPay à partir d'un compte mobile money. Lorsqu'il est initié, un Deposit déclenche immédiatement une requête vers un compte mobile money pour récupérer le montant spécifié.
Parce que le propriétaire du compte mobile money doit absolument valider la sortie d'argent, il existe un champ attempt.id dont la valeur est l'identifiant de la Tentative d'Authentication Multi Facteur. Avec cet identifiant, vous pourrez récupérer un object Attempt qui vous permettra de savoir quelles instructions le client doit exécuter afin d'authentifier le dépôt ainsi que le délai imparti pour ce faire avant expiration.

Toute instance de cet objet Deposit passe par plusieurs états qu'il est possible de suivre en observant le champ status : Au début il sera  Starting et à la fin, l'état sera soit Successful ou  soit Failure.
Une fois le dépôt terminé, un objet Transaction sera créé pour matérialiser l'entrée d'argent sur le portefeuille FPay, objet Transaction dont le titre est controllable depuis l'objet Deposit en spécifiant le champ h1. Si vous omettez ce champ, un titre par défaut sera ajoutée lorsque l'objet Transaction sera créé, titre visible en accédant au champ h1 de l'objet Transaction.

Opérations  

get  

Retourne un objet Deposit identifié par un identifiant.
Vous avez la possibilité d'utiliser un ID unique propre à votre système. Pour utiliser votre propre ID au lieu de celui généré par FPay, vous devez préciser le champ foreignId lors de la création de cet objet. Ainsi, vous pourrez récupérer cet objet par le champ foreignId ainsi ajouté qui doit être unique pour tous les objets de type Deposit.  Voici tous les champs dont les valeurs peuvent servir d'identifiant pour cette opération:

  • id
  • foreignId
  • attempt.id

const depositPromise = fPay.deposit.get("identifier");


initiate  

Initie une nouvelle opération de Deposit et retourne l'instance associée à cette opération.
Cette opération prend en entrée les paramètres suivants:

InitiateDepositForm
amount
Obligatoire
AmountForm
Montant de l'opération sans les frais. Si vous payez les frais, vous recevrez dans votre portefeuille ce montant diminué des frais. Si votre correspondant paye les frais, vous recevrez exactement ce montant dans votre portefeuille.
currency
Obligatoire
string
La seule valeur possible est: "XOF"  
value
Obligatoire
string
Valeur numeric du montant toujours positive ou zéro.
source
Obligatoire
SourceForm
Source des fonds.
SourceForm.MultipleSourceForm
MultipleSourceForm

SourceForm.SingleSourceForm
SingleSourceForm
account
Obligatoire
MoneyAccountForm
Compte Mobile money à partir duquel vous souhaiteriez collecter de l'argent.
country
Obligatoire
string
La seule valeur possible est: "CI"  
identifier
Obligatoire
string
Numéro de téléphone au format international  "+2250500000000"
providerKey
Obligatoire
string
Les seules valeurs possibles sont: "MoovMoney"  "MtnMoney"  "OrangeMoney"  

description
string | undefined
Détails, explications, annotations concernant cet objet pour mieux vous organiser et vous retrouvez plus tard.
destination
DestinationForm | undefined
Destination des fonds.
DestinationForm.MultipleDestinationForm
MultipleDestinationForm

DestinationForm.SingleDestinationForm
SingleDestinationForm
account
Obligatoire
MoneyAccountForm
Wallet, Portefeuille FPay qui sera crédité lorsque l'argent sera reçu. Cette valeur est optionnelle et si aucune valeur n'est précisée, le portefeuille principal sera crédité.
country
Obligatoire
string
La seule valeur possible est: "CI"  
identifier
Obligatoire
string
Identifiant id du Wallet, du portefeuille FPay
providerKey
Obligatoire
string
La seule valeur possible est: "FPay"  

fees
FeesForm | undefined
payer
Obligatoire
string
Qui paye les frais associés à cette opération ? Si l'opération n'entraine pas de frais, cette valeur sera absente.
Les seules valeurs possibles sont: "CounterPart"  "Me"  "Receiver"  "Sender"  
foreignData
string | undefined
Données qui vous sont propres que vous pouvez attacher à l'objet créé. Il peut s'agir de données de type JSON XML, d'autres format de données ou simplement des Strings.
La longueur maximale autorisée est de 255 caractères.
foreignId
string | undefined
ID Personalisé ou bien ID de votre système interne que vous souhaitez attacher à cet objet pour vous permettre de le récupérer plus tard.
Une fois créée, cette valeur est non modifiable.
Cette valeur doit être unique pour chaque type.
La longueur maximale autorisée est de 128 caractères.
h1
H1DescriptorForm | undefined
Titre de cet objet qui sera affiché à l'utilisateur si nécessaire et qui deviendra le champ h1 de l'objet Transaction lorsqu'il sera créé.
en
string | undefined
fr
string | undefined

Voici un exemple de code pour initier un Deposit:

const depositPromise = 
    fPay.deposit.initiate({
        amount: {
            currency: "XOF",
            value: "10_000"
        },
        source: {
            _type: "Single",
            account: {
                country: "CI",
                identifier: "+2250500000000",
                providerKey: "MtnMoney"
            }
        },
        description: "My description",
        destination: {
            _type: "Single",
            account: {
                country: "CI",
                identifier: "123456789",
                providerKey: "FPay"
            }
        },
        fees: {
            payer: "CounterPart"
        },
        foreignData: "{\"myKey\": 19, \"myOtherKey\": \"myOtherValue\"}",
        foreignId: "123456789",
        h1: {
            en: "Payment description",
            fr: "Description du paiement"
        }
    });


list  

Retourne une collection d'objets Deposit éventuellement filtrée et/ou triée. Voici les paramètres supportés par cette opération.

NOMTYPEDESCRIPTIONVALEUR PAR DÉFAUT
filterstring | undefinedCondition que doit respecter tout objet qui sera retourné dans cette collection
undefined
sortBystring | undefinedSpécification du champ ainsi que de l'ordre (ascendant ou descendant) par lesquels seront triés les objets retournés
createdTime:DESC
limitnumber | undefinedNombre total de résultats à retourner dans cette collection
50

Voici quelques exemples de code pour éffectuer un listing afin de retourner une collection d'objets Deposit:

const depositsCollectionPromise = fPay.deposit.listAll();
const depositsCollectionPromise = 
    fPay.deposit.list({
        sortBy: "id:ASC"
    });
const depositsCollectionPromise = 
    fPay.deposit.list({
        limit: 5
    });
const depositsCollectionPromise = 
    fPay.deposit.list({
        filter: "id in {'31234', '5678', '9990'}"
    });
const depositsCollectionPromise = 
    fPay.deposit.list({
        filter: "createdTime isBefore Yesterday",
        sortBy: "foreignId:DESC"
    });
const depositsCollectionPromise = 
    fPay.deposit.list({
        filter: "id startsWith abcd",
        sortBy: "createdTime:ASC",
        limit: 25
    });


fetchPage  

Lorsque vous récupérez une liste de Deposit, les résultats retournés par le serveur peuvent être paginés c'est dire que ces résultats seront disposés sur plusieurs pages. Cette fonction fetchPage permet de naviguer de page en page afin d'itérer sur tous les éléments. Par conséquent cette fonction retourne une collection de Deposit.

Imaginons que vous ayez récupéré une collection de Depositavec le code suivant:

const depositsCollectionPromise = fPay.deposit.listAll();

Si jamais le resultat est disposé sur plusieurs pages, pour consulter la page suivante, vous devez faire:

depositsCollectionPromise.then(depositCollection => {
    if(depositCollection.hasNextPage()) {
        const nextDepositPromise = fPay.deposit.fetchPage(depositCollection.pagination.nextPage);
    }
});


update  

Modifie un objet Deposit et retourne la version modifiée de celui ci.
 Voici tous les champs dont les valeurs peuvent servir d'identifiant pour cette opération:

  • id
  • foreignId
  • attempt.id
Modifier un objet revient à modifier ses champs modifiables. Les champs modifiables peuvent être soit mis à jour ou soit supprimés. Voici la liste des champs modifiables de tout objet de type Deposit:

NOMTYPEDESCRIPTION
descriptionstring | undefinedPeut être mis à Jour   Peut être Supprimé
foreignDatastring | undefinedPeut être mis à Jour   Peut être Supprimé

Voici quelques exemples de code pour éffectuer une modification:

depositPromise = 
    fPay.deposit.update({
         id: "<id | foreignId>",
         change: {
            description: "<new value>",
            foreignData: "<new value>"
         }
    });
depositPromise = 
    fPay.deposit.update({
         id: "<id | foreignId>",
         change: {
            description: "<new value>"
         },
         'remove': ['foreignData']
    });
depositPromise = 
    fPay.deposit.update({
         id: "<id | foreignId>",
         'remove': ['description', 'foreignData']
    });

Liste Filtre & Tri  

Champs  

Lorsque vous récupérez une liste, voici les champs par lesquels il est possible de faire des filtres ainsi que des tris.

NOMTYPEDESCRIPTION
amount.currency.codestring
amount.valuenumber
attempt.idstring
completedTimestring
completedTime.iso8601string
completedTime.timestamp.millisecondsnumber
completedTime.timestamp.secondsnumber
createdTimestring
createdTime.iso8601string
createdTime.timestamp.millisecondsnumber
createdTime.timestamp.secondsnumber
creatorstring
creator._typestring
creator.accountIdstring
creator.authAccessIdstring
creator.personIdstring
descriptionstring
destinationstring
destination._typestring
destination.account.balanceTypestring
destination.account.identifier._typestring
destination.account.identifier.valuestring
destination.account.provider.country.iso3166.alpha2string
destination.account.provider.country.iso3166.alpha3string
destination.account.provider.country.namestring
destination.account.provider.keystring
destination.account.provider.namestring
destination.amount.currency.codestring
destination.amount.valuenumber
fees.amount.currency.codestring
fees.amount.valuenumber
fees.payerstring
fees.value.fixenumber
fees.value.percentnumber
foreignIdstring
h1Descriptor.enstring
h1Descriptor.frstring
idstring
sendingstring
sourcestring
source._typestring
source.account.balanceTypestring
source.account.identifier._typestring
source.account.identifier.valuestring
source.account.provider.country.iso3166.alpha2string
source.account.provider.country.iso3166.alpha3string
source.account.provider.country.namestring
source.account.provider.keystring
source.account.provider.namestring
source.amount.currency.codestring
source.amount.valuenumber
statusstring

Exemples de Code  

Des exemples de code sont disponibles sur la page Audit Reporting & Tableau de bord.

Champs  

Deposit
amount
Amount
currency
AmountCurrency
code
string
La seule valeur possible est: "XOF"  
unit
string
Symbole utilisé pour représenter cette Monnaie. Pour l'instant la seule valeur est "₣"
value
number
Valeur numeric du montant toujours positive ou zéro.
attempt
LightAttempt
id
string
Identifiant unique et non modifiable formé de chiffres et de lettres.
completedTime
UTCDateTime | undefined
Si cette valeur est présente, alors elle correspond à la date et à l'heure auxquelles cette opération s'est terminée. Si elle est absente, alors cette opération est toujours en cours.
Valeur toujours stockée en UTC (Temps universel), ce champ contient une representation de cet instant au format ISO 8601 ainsi qu'une representation de ce même instant en timestamp secondes et millisecondes.
iso8601
string
Date et heure au format ISO 8601
timestamp
Timestamp
milliseconds
number
Date et heure exprimées en Timestamp milli secondes
seconds
Double
Date et heure exprimées en Timestamp secondes
createdTime
UTCDateTime
Date et heure auxquelles cet objet a été créé. Valeur toujours stockée en UTC (Temps universel), ce champ contient une representation de cet instant au format ISO 8601 ainsi qu'une representation de ce même instant en timestamp secondes et millisecondes.
iso8601
string
Date et heure au format ISO 8601
timestamp
Timestamp
milliseconds
number
Date et heure exprimées en Timestamp milli secondes
seconds
Double
Date et heure exprimées en Timestamp secondes
creator
Creator
Creator.Api
Api
_type
string
La seule valeur possible est: "Api"  
accountId
string
authAccessId
string

Creator.Ui
Ui
_type
string
La seule valeur possible est: "Ui"  
accountId
string
personId
string

description
string | undefined
Détails, explications, annotations concernant cet objet pour mieux vous organiser et vous retrouvez plus tard.
destination
Destination
Destination.Multiple
Multiple
_type
string
La seule valeur possible est: "Multiple"  

Destination.Single
Single
_type
string
La seule valeur possible est: "Single"  
account
MoneyAccount
balanceType
string
Indique le type du solde utilisé.
"AvailableBalance" signifie littéralement "SoldeDisponible". Ainsi, si la valeur de ce champ est "AvailableBalance", alors les fonds sont sur le solde disponible et pourront être utilisé.
Dans certains cas, les fonds sont "verrouillés" (en anglais "Locked" et sont soit sur le solde "LockedInBalance" ou "LockedOutBalance") et ne peuvent être utilisés jusqu'à leur mise à disposition sur le solde disponible qui est "AvailableBalance".
Les seules valeurs possibles sont: "AvailableBalance"  "LockedInBalance"  "LockedOutBalance"  
identifier
MoneyAccountIdentifier
_type
string
Indique le type de compte sur lequel se trouve de l'argent "MoneyAccount". S'il s'agit d'un compte bancaire, ce champ aura la valeur "Iban".
S'il s'agit d'un compte mobile money, ce champ aura la valeur "MobileMoney".
S'il s'agit d'un portefeuille, un Wallet FPay, la valeur pourra avoir aura la valeur "Id" ou "Man" la dernière signifiant "Money Account Number".
Les seules valeurs possibles sont: "Iban"  "Id"  "Man"  "MobileNumber"  
value
string
Identifiant du compte sur lequel se trouve de l'argent "MoneyAccount". Si la valeur du champ "_type" ci dessus est "MobileMoney", alors ce champ contiendra un numéro de téléphone au format international comme "+2250701050000"
Si la valeur du champ "_type" ci dessus est "Iban", alors ce champ contiendra l'Iban du compte bancaire.
Si la valeur du champ "_type" ci dessus est "Id", alors ce champ contiendra l'id du Wallet FPay.
Si la valeur du champ "_type" ci dessus est "Man", alors ce champ contiendra le numéro man du Wallet FPay.
provider
MoneyAccountProvider
country
Country
iso3166
Iso3166Country
alpha2
string
Code ISO 3166 comportant 2 caractères représentant le pays.
Exemple : "CI" pour la Côte d'Ivoire, "BF" pour le Burkina Faso et "SN" pour le Sénégal.
alpha3
string
Code ISO 3166 comportant 3 caractères représentant le pays.
Exemple : "CIV" pour la Côte d'Ivoire, "BFA" pour le Burkina Faso et "SEN" pour le Sénégal.
name
string
Nom du pays qui sera soit en Français ou soit en Anglais suivant la langue de votre compte FPay. Si lors de votre inscription, vous avez choisi le Français comme langue de votre compte alors, le nom du pays sera en Français et si vous avez choisi l'anglais, alors ce nom sera en Anglais.
key
string
Clé identifiant de manière unique le fournisseur de compte sur lequel se trouve de l'argent.
Les seules valeurs possibles sont: "FPay"  "MoovMoney"  "MtnMoney"  "OrangeMoney"  
name
string
Nom du fournisseur de compte sur lequel se trouve de l'argent.
amount
Amount
currency
AmountCurrency
code
string
La seule valeur possible est: "XOF"  
unit
string
Symbole utilisé pour représenter cette Monnaie. Pour l'instant la seule valeur est "₣"
value
number
Valeur numeric du montant toujours positive ou zéro.

fees
Fees
amount
Amount
currency
AmountCurrency
code
string
La seule valeur possible est: "XOF"  
unit
string
Symbole utilisé pour représenter cette Monnaie. Pour l'instant la seule valeur est "₣"
value
number
Valeur numeric du montant toujours positive ou zéro.
payer
string | undefined
Qui paye les frais associés à cette opération ? Si l'opération n'entraine pas de frais, cette valeur sera absente.
Les seules valeurs possibles sont: "Receiver"  "Sender"  
value
FeesValue
fixe
number
Partie fixe du montant des frais. Si la formule pour calculer les frais est 1,5% + 150₣, alors ce champ aura la valeur 150.
percent
number
Partie variable du montant des frais comprise entre 0 et  100. Si la formule pour calculer les frais est 1,5% + 150₣, alors ce champ aura la valeur 1,5.
foreignData
string | undefined
Données qui vous sont propres que vous pouvez attacher à l'objet créé. Il peut s'agir de données de type JSON XML, d'autres format de données ou simplement des Strings.
La longueur maximale autorisée est de 255 caractères.
foreignId
string | undefined
ID Personalisé ou bien ID de votre système interne que vous souhaitez attacher à cet objet pour vous permettre de le récupérer plus tard.
Une fois créée, cette valeur est non modifiable.
Cette valeur doit être unique pour chaque type.
La longueur maximale autorisée est de 128 caractères.
h1Descriptor
H1Descriptor | undefined
en
string | undefined
fr
string | undefined
id
string
Identifiant unique et non modifiable formé de chiffres et de lettres.
sending
string
Les seules valeurs possibles sont: "NotYetDone"  "PartiallyDone"  "TotallyDone"  
source
Source
Source.Multiple
Multiple
_type
string
La seule valeur possible est: "Multiple"  

Source.Single
Single
_type
string
La seule valeur possible est: "Single"  
account
MoneyAccount
balanceType
string
Indique le type du solde utilisé.
"AvailableBalance" signifie littéralement "SoldeDisponible". Ainsi, si la valeur de ce champ est "AvailableBalance", alors les fonds sont sur le solde disponible et pourront être utilisé.
Dans certains cas, les fonds sont "verrouillés" (en anglais "Locked" et sont soit sur le solde "LockedInBalance" ou "LockedOutBalance") et ne peuvent être utilisés jusqu'à leur mise à disposition sur le solde disponible qui est "AvailableBalance".
Les seules valeurs possibles sont: "AvailableBalance"  "LockedInBalance"  "LockedOutBalance"  
identifier
MoneyAccountIdentifier
_type
string
Indique le type de compte sur lequel se trouve de l'argent "MoneyAccount". S'il s'agit d'un compte bancaire, ce champ aura la valeur "Iban".
S'il s'agit d'un compte mobile money, ce champ aura la valeur "MobileMoney".
S'il s'agit d'un portefeuille, un Wallet FPay, la valeur pourra avoir aura la valeur "Id" ou "Man" la dernière signifiant "Money Account Number".
Les seules valeurs possibles sont: "Iban"  "Id"  "Man"  "MobileNumber"  
value
string
Identifiant du compte sur lequel se trouve de l'argent "MoneyAccount". Si la valeur du champ "_type" ci dessus est "MobileMoney", alors ce champ contiendra un numéro de téléphone au format international comme "+2250701050000"
Si la valeur du champ "_type" ci dessus est "Iban", alors ce champ contiendra l'Iban du compte bancaire.
Si la valeur du champ "_type" ci dessus est "Id", alors ce champ contiendra l'id du Wallet FPay.
Si la valeur du champ "_type" ci dessus est "Man", alors ce champ contiendra le numéro man du Wallet FPay.
provider
MoneyAccountProvider
country
Country
iso3166
Iso3166Country
alpha2
string
Code ISO 3166 comportant 2 caractères représentant le pays.
Exemple : "CI" pour la Côte d'Ivoire, "BF" pour le Burkina Faso et "SN" pour le Sénégal.
alpha3
string
Code ISO 3166 comportant 3 caractères représentant le pays.
Exemple : "CIV" pour la Côte d'Ivoire, "BFA" pour le Burkina Faso et "SEN" pour le Sénégal.
name
string
Nom du pays qui sera soit en Français ou soit en Anglais suivant la langue de votre compte FPay. Si lors de votre inscription, vous avez choisi le Français comme langue de votre compte alors, le nom du pays sera en Français et si vous avez choisi l'anglais, alors ce nom sera en Anglais.
key
string
Clé identifiant de manière unique le fournisseur de compte sur lequel se trouve de l'argent.
Les seules valeurs possibles sont: "FPay"  "MoovMoney"  "MtnMoney"  "OrangeMoney"  
name
string
Nom du fournisseur de compte sur lequel se trouve de l'argent.
amount
Amount
currency
AmountCurrency
code
string
La seule valeur possible est: "XOF"  
unit
string
Symbole utilisé pour représenter cette Monnaie. Pour l'instant la seule valeur est "₣"
value
number
Valeur numeric du montant toujours positive ou zéro.

status
DepositStatus
DepositStatus.Completing
Completing
_type
string
La seule valeur possible est: "Completing"  

DepositStatus.Failure
Failure
_type
string
La seule valeur possible est: "Failure"  
cancelled
Cancelled | undefined
afterTimeout
boolean
reason
LocalizedText
en
string
fr
string

DepositStatus.Processing
Processing
_type
string
La seule valeur possible est: "Processing"  
reason
LocalizedText
en
string
fr
string

DepositStatus.Started
Started
_type
string
La seule valeur possible est: "Started"  

DepositStatus.Starting
Starting
_type
string
La seule valeur possible est: "Starting"  

DepositStatus.Successful
Successful
_type
string
La seule valeur possible est: "Successful"  

DepositStatus.WaitingToStart
WaitingToStart
_type
string
La seule valeur possible est: "WaitingToStart"  

url
string
URL sur laquelle une methode GET convenablement autorisée renverra l'instance de l'objet sur lequel ce champ est défini.

DEPOSIT
  • Présentation
  • Opérations
    • Get
    • Initiate
    • List
    • FetchPage
    • Update
  • Liste Filtre & Tri
    • Champs
    • Exemple de Code
  • Champs de l'objet