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

Transfer

Présentation  

Cet objet permet d'éffectuer des transferts d'argent depuis un portefeuille FPay vers un autre portefeuille FPay ou vers un compte mobile money.
Lorsqu'il est initié, un Transfer déclenche immédiatement un transfert depuis le Wallet indiqué comme source vers un compte mobile money avec le montant spécifié.
Toute instance de ce type 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 la sortie d'argent depuis le portefeuille FPay, objet Transaction dont le titre est controllable depuis l'objet Transfert 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 Transfer 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 Transfer.  Voici tous les champs dont les valeurs peuvent servir d'identifiant pour cette opération:

  • id
  • foreignId
  • attempt.id

const transferPromise = fPay.transfer.get("identifier");


initiate  

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

InitiateTransferForm
amount
Obligatoire
AmountForm
Montant de l'opération sans les frais. Si vous payez les frais, votre portefeuille sera débité de ce montant augmenté des frais. Si votre correspondant paye les frais, votre portefeuille sera débité exactement de ce montant.
currency
Obligatoire
string
La seule valeur possible est: "XOF"  
value
Obligatoire
string
Valeur numeric du montant toujours positive ou zéro.
destination
Obligatoire
DestinationForm
Destination des fonds.
DestinationForm.MultipleDestinationForm
MultipleDestinationForm

DestinationForm.SingleDestinationForm
SingleDestinationForm
account
Obligatoire
MoneyAccountForm
Wallet, Portefeuille FPay OU Compte Mobile money vers lequel vous souhaiteriez envoyer de l'argent. Il vous est possible de transférer de l'argent uniquement vers les portefeuilles que vous possédez.
country
Obligatoire
string
La seule valeur possible est: "CI"  
identifier
Obligatoire
string
Identifiant id du Wallet, du portefeuille FPay OU
Numéro de téléphone au format international  "+2250500000000"
providerKey
Obligatoire
string
Les seules valeurs possibles sont: "FPay"  "MoovMoney"  "MtnMoney"  "OrangeMoney"  

description
string | undefined
Détails, explications, annotations concernant cet objet pour mieux vous organiser et vous retrouvez plus tard.
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
source
SourceForm | undefined
Source des fonds.
SourceForm.MultipleSourceForm
MultipleSourceForm

SourceForm.SingleSourceForm
SingleSourceForm
account
Obligatoire
MoneyAccountForm
Source des fonds, Wallet, Portefeuille FPay sur lequel vous souhaiteriez prendre de l'argent pour cet envoi. Si aucune valeur n'est précisée, votre portefeuille principal sera débité.
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"  


Voici un exemple de code pour initier un Transfer:

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


list  

Retourne une collection d'objets Transfer é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 Transfer:

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


fetchPage  

Lorsque vous récupérez une liste de Transfer, 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 Transfer.

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

const transfersCollectionPromise = fPay.transfer.listAll();

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

transfersCollectionPromise.then(transferCollection => {
    if(transferCollection.hasNextPage()) {
        const nextTransferPromise = fPay.transfer.fetchPage(transferCollection.pagination.nextPage);
    }
});


update  

Modifie un objet Transfer 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 Transfer:

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:

transferPromise = 
    fPay.transfer.update({
         id: "<id | foreignId>",
         change: {
            description: "<new value>",
            foreignData: "<new value>"
         }
    });
transferPromise = 
    fPay.transfer.update({
         id: "<id | foreignId>",
         change: {
            description: "<new value>"
         },
         'remove': ['foreignData']
    });
transferPromise = 
    fPay.transfer.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
status._typestring
status.cancelled.afterTimeoutboolean
status.reason.enstring
status.reason.frstring

Exemples de Code  

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

Champs  

Transfer
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
TransferStatus
TransferStatus.Completing
Completing
_type
string
La seule valeur possible est: "Completing"  

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

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

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

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

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

TransferStatus.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.

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