CentralPay Documentation CentralPay Documentation
  • Informations générales
  • Documentation
  • Développeurs
CentralPay Documentation CentralPay Documentation
  • Informations générales
  • Documentation
  • Développeurs
  1. Accueil
  2. Documentation
  3. Transferts de paiements
  4. Transfert indépendant
Mis à jour le 24 novembre 2025
Documentation
  • Folder icon closed Folder open iconGuide de démarrage rapide >
  • Folder icon closed Folder open iconMarchand, comptes et canaux de vente
    • Profil Marchandmerchant
    • Profils clientscustomer
    • Points de ventepointOfSale
    • Comptes de paiementwallet
    • Comptes de MEwallet
  • Folder icon closed Folder open iconAutomatisations, connexions et exports
    • Notifications email/sms
    • Services anti-fraude
    • Versement sortantpayout
    • Exports comptables
    • Exports de données
    • Webhooks
  • Folder icon closed Folder open iconLiens de paiement
    • Informations générales
    • Demandes de paiementpaymentRequest
    • Page de paiement (SmartForm)
    • Retours, statuts et hooks
  • Folder icon closed Folder open iconTransaction par carte
    • Informations générales
    • Formulaire de paiement CUSTOM
    • Authentification 3DS 2.0
    • Transaction cartetransaction
    • Transaction carte récurrentetransaction
    • Transaction carte via walletApplePay / GooglePay
    • R-transaction carterefund / credit / dispute
    • Email de confirmation
    • Libellé relevé bancaire
    • Gestion des devises
    • Gestion des cartes virtuelles (VCC)
    • Retours, statuts et hooks
  • Folder icon closed Folder open iconTransaction par virement
    • Informations générales
    • IBAN Virtuels
    • Transaction par virementsctTransaction
    • Pay by Bank – Initiation de paiement (PIS)
    • Rapprochement à une demande de paiementbankReconciliation
    • R-transaction SCTrefund
    • Virements internationaux
    • Retours, statuts et webhooks
  • Folder icon closed Folder open iconTransaction prélèvement SEPA
    • Informations générales
    • Identifiant de Créancier SEPA
    • Déclaration du compte bancaire
    • Création du mandat SEPA
    • Transaction par prélèvementsddTransaction
    • R-transaction SDDrefund / sddTransactionReversal
    • Retours, statuts et webhooks
  • Folder icon closed Folder open iconPaiements récurrents
    • Abonnementsubscription
    • Fractionnéinstallment
  • Folder icon closed Folder open iconAuthentification 3DS 2.2
    • 3DS 2.2 BRW (paiement unitaire)
    • 3DS 2.2 3RI (paiements récurrents)
    • FAQ 3DS 2.2
  • Folder icon closed Folder open iconGestion des marchands
    • Informations générales
    • Demande d’enrôlementmerchant-enrollment
    • Compléter un enrôlementmerchant-enrollment
    • Validation d’un enrôlement
    • Compte de Monnaie Électronique limitécustomer / wallets
    • Déplafonner un compte de Monnaie Électroniquemerchant-enrollment
    • Retours, statuts et webhooks
  • Folder icon closed Folder open iconTransferts de paiements
    • Informations générales
    • Transfert indépendanttransfer / transferReversal
    • Transfert via Transaction ou PaymentRequesttransaction / paymentRequest
    • Versement sortant pour tiers
    • Retours, statuts et webhooks
  • Folder icon closed Folder open iconPlugin CMS
    • WooCommerce
    • PrestaShop
    • Magento
  • Folder icon closed Folder open iconBonnes pratiques
    • Déclaration TVA par pays
    • Merchant Initiated Transaction (MIT)
    • Verification of Payee (VoP)
      • FAQ – Verification Of Payee

Transfert indépendant

Estimated reading: 7 minutes

1. Créer un transfert (Create a Transfer)

La fonction Create a Transfer permet aux marchands mandataires (Agents ou DME) de transférer des fonds entre deux comptes de leurs marchands participants. Ce transfert peut être initié :

  • Par un Agent lorsque les comptes sont des comptes de paiement
  • Par un DME lorsque les comptes sont des comptes de monnaie électronique

1.1. Cas d’usage

Ce mécanisme permet par exemple :

  • À un Agent d’orchestrer des débits et des crédits de fonds entre lui et ses marchands participants, ou vers des comptes destinataires définis
  • À un DME d’opérer des transferts de monnaie électronique entre ses marchands participants (par exemple dans le cadre d’une place de marché C2C)

CentralPay reste en charge de l’exécution effective des opérations, dans le cadre de la relation contractuelle avec les marchands participants.

1.2. Paramètres requis

ChampTypeObligatoireDescription
destinationWalletIdUUID✅ OuiIdentifiant du compte Centralpay destinataire (appartenant à un marchand participant).
amountInteger (en cents)✅ OuiMontant du transfert. Doit être strictement supérieur à 0.
sourceIdUUID✅ Oui, si sourceType est renseignéIdentifiant de la source de fonds (ex. : transaction, virement, crédit, SDD).
sourceTypeEnum✅ Oui, si sourceId est renseignéSource du transfert : TRANSACTION, SCT_TRANSACTION, CREDIT, SDD.

1.3. Paramètres optionnels

ChampTypeDescription
emissionWalletIdUUIDCompte émetteur si différent du compte principal du marchand mandataire.
currencyCode ISODevise du transfert (si différente de celle du compte).
feeIntegerMontant de la commission prélevée par le marchand mandataire, déduite du montant. Par défaut : 0.
escrowDateDate ISODate à partir de laquelle le transfert devient effectif. Peut être utilisée pour définir une période de blocage temporaire.
merchantTransferIdStringRéférence métier du marchand mandataire (max 100 caractères).
transferGroupStringGroupe de rattachement pour regrouper plusieurs transferts.
descriptionStringDescription libre (max 256 caractères).
additionalDataKey/ValueDonnées complémentaires sous forme de paires clé/valeur (max 256 caractères par valeur).
metaDataJSONMétadonnées complémentaires structurées.
purposeCode / purposeMessageEnum / StringFinalité du transfert, selon une nomenclature standard. Voir la liste des codes.

1.4. Règles de validation

  • Le destinationWalletId doit correspondre à un compte valide d’un marchand participant du mandataire
  • Le sourceId ne peut être utilisé que si l’objet lié est dans un statut accepté (CAPTURE, CLEARED, etc.)
  • Le montant autorisé dépend du solde disponible ou des fonds liés à la source (transaction, virement, etc.)

2. Fonctions complémentaires liées aux transferts

Les marchands mandataires disposent de plusieurs fonctions de gestion post-création d’un transfert, leur permettant d’ajuster, consulter ou annuler une opération, sous conditions.

2.1. Modifier un transfert (Update a Transfer)

Cette fonction permet de modifier certains paramètres d’un transfert existant, à condition qu’il ne soit pas encore exécuté (statut PENDING).

Paramètres disponibles :

ChampTypeObligatoireDescription
transferIdUUID✅ OuiIdentifiant du transfert à modifier.
merchantTransferIdString❌ NonRéférence marchand mandataire.
escrowDateDate ISO❌ NonNouvelle date d’exécution différée.
transferGroupString❌ NonRegroupement de transferts.
descriptionString❌ NonDescription libre (max 256 caractères).
additionalDataKey/Value❌ NonDonnées complémentaires.
metaDataJSON❌ NonMétadonnées structurées.

La modification de la date d’escrow est notamment utile dans les flux conditionnés (ex : marketplace, délais de rétractation…).

2.2. Annuler un transfert (Cancel a Transfer)

Un transfert peut être annulé tant qu’il n’a pas encore été exécuté (statut PENDING). Cette annulation est irréversible : l’opération apparaîtra comme CANCEL dans les historiques du compte.

Paramètres :

ChampTypeObligatoireDescription
transferIdUUID✅ OuiIdentifiant du transfert à annuler.

⚠️ Une fois que les fonds sont disponibles (statut TRANSFERRED), cette fonction n’est plus accessible. Il faudra alors utiliser un TransferReversal.

2.3. Consulter un transfert (Retrieve a Transfer)

Permet d’obtenir l’ensemble des détails d’un transfert via son identifiant CentralPay.

ChampTypeObligatoireDescription
transferIdUUID✅ OuiIdentifiant du transfert.

2.4. Rechercher plusieurs transferts (List Transfers)

Permet de rechercher une liste de transferts selon plusieurs critères. Tous les paramètres sont optionnels.

ParamètreTypeDescription
merchantTransferIdString (100)Référence marchand mandataire.
destinationWalletIdUUIDCompte destinataire.
transferGroupStringGroupe de transferts.
statusEnumPENDING, TRANSFERRED, CANCEL.
after / beforeDate ISOFiltrer par date de création.
limitIntegerNombre de résultats par page.
pageIntegerIndex de la page de résultats.

3. Retourner un transfert exécuté (Transfer Reversal)

Une fois un transfert exécuté (statut TRANSFERRED), il ne peut plus être annulé via la fonction Cancel. Il est alors nécessaire de passer par une opération dédiée appelée TransferReversal. Elle ne supprime pas le transfert d’origine : celui-ci reste visible, historisé et traçable.

Cette fonction est accessible uniquement aux marchands mandataires (Agent pour les comptes de paiement, DME pour les comptes de monnaie électronique), et doit respecter les règles de disponibilité des fonds.

3.1. Conditions d’utilisation

Le transfert initial doit :

  • Être dans le statut TRANSFERRED
  • Avoir des fonds disponibles dans le compte destinataire
  • Ne pas avoir déjà été remboursé dans sa totalité via des opérations de reversal

Le montant retourné doit être :

  • Inférieur ou égal au solde disponible du compte destinataire
  • Inférieur ou égal à la somme initialement transférée
  • Diminué des éventuels reversals déjà effectués sur le transfert concerné

3.2. Créer un TransferReversal

Permet de retourner un montant vers le compte émetteur d’origine.

ChampTypeObligatoireDescription
transferIdUUID✅ OuiIdentifiant du transfert d’origine.
amountInteger✅ OuiMontant à rembourser (en centimes).
merchantTransferReversalIdString❌ NonRéférence marchand mandataire pour le suivi.
refundFeeBoolean❌ NonIndique si les frais du transfert initial sont remboursés (par défaut : true).
feeInteger❌ NonMontant des frais associés au reversal.
descriptionString❌ NonTexte libre explicatif (max. 256 caractères).
escrowDateDate ISO❌ NonDate d’exécution différée si applicable.
additionalDataKey/Value❌ NonPaires clé/valeur pour les besoins métier.

⚠️ Si le champ refundFee est défini à false, le montant des frais initiaux reste acquis et n’est pas restitué au compte source.

Règles importantes :

  • L’opération est visible dans les mouvements du compte (débit du compte destinataire, crédit du compte d’origine)
  • Plusieurs reversals peuvent être effectués sur un même transfert, dans la limite du montant total initial
  • Si les fonds ne sont pas disponibles, l’appel est rejeté avec une erreur explicite (insuffisance de solde ou montant trop élevé)

4. Fonctions complémentaires (TransferReversal)

Ces fonctions permettent de gérer et consulter les opérations de retour de transfert exécuté (TransferReversal), une fois créées.

4.1. Modifier un TransferReversal (Update)

Permet de modifier certaines informations sur un TransferReversal déjà créé.

ChampTypeObligatoireDescription
transferReversalIdUUID✅ OuiIdentifiant du TransferReversal à modifier
merchantTransferReversalIdString❌ NonRéférence marchand mandataire pour le suivi
descriptionString❌ NonTexte explicatif libre (256 caractères max)
escrowDateDate (ISO)❌ NonNouvelle date différée d’exécution, si applicable
additionalDataKey/Value❌ NonPaires clé/valeur pour usage métier spécifique

Cette fonction est accessible uniquement au niveau PARTNER ou supérieur.

4.2. Consulter un TransferReversal (Retrieve)

Permet de consulter les détails d’un TransferReversal à partir de son identifiant.

ChampTypeObligatoireDescription
transferReversalIdUUID✅ OuiIdentifiant du TransferReversal à consulter

L’objet retourné contient l’intégralité des informations métier, y compris : montant, date, statut, compte concerné, et historique de l’opération.

4.3. Rechercher des TransferReversals (List)

Permet d’interroger l’historique des TransferReversal selon plusieurs critères.

ParamètreTypeObligatoireDescription
merchantTransferReversalIdString❌ NonRéférence marchand mandataire
afterDate ISO❌ NonRetourne les éléments créés après cette date
beforeDate ISO❌ NonRetourne les éléments créés avant cette date
limitInteger❌ NonNombre d’éléments à retourner (par défaut : 10)
pageInteger❌ NonIndex de la page à retourner (par défaut : 1)

Cette fonction permet un suivi complet des opérations de reversal liées à une activité donnée, y compris les cas de multiples retours partiels.

Transfert indépendant - PreviousInformations généralesNext - Transfert indépendantTransfert via Transaction ou PaymentRequest
CONTENU

Doc Contents

Doc Footnotes

Doc Elements

  • Mentions légales
  • Politique de confidentialité

© 2025 CentralPay