Aller au contenu principal
Sur cette page

Utilisation payment.data.status en tant que source d'information pour un paiement. Lorsque le paiement est inclus dans une réponse de commande, lire order.payment.data.status. Le conteneur de commande ne change pas le sens du statut de paiement.

Évaluer toujours l'état ainsi que les quantités confirmées et les antécédents d'exploitation. Une requête API acceptée ou HTTP 2xx réponse peut signifier qu'une opération asynchrone a commencé; cela ne signifie pas toujours que l'argent a été déplacé.

Pour les décisions de fraude, voir Déroulement et situation des fraudes. Pour les mises à jour asynchrones des prestataires, voir Webhooks DEUNA.

Familles statutaires#

Les étiquettes ci-dessous expliquent comment les marchands doivent gérer les valeurs; ce ne sont pas des champs API supplémentaires.

FamilleStatutsGestion des commerçants
En attente d'action ou de confirmationpending, pending_3ds, processing, authorizing, capturing, partial_capturing, voiding, refunding, partial_refunding, manual_reviewGardez le paiement non réglé. Compléter toute action client requise et attendre, ou récupérer, un résultat faisant autorité.
Confirmé et toujours opérationnelprocessed, authorized, captured, partial_captured, partial_refundedInscrivez le résultat financier confirmé. Une capture, un remboursement ou un vide admissible ultérieur peut encore changer le statut.
Non réussi mais récupérabledeniedNe pas réaliser de cette tentative. Une décision de réessayer ou de routage peut déplacer le même paiement dans un état actif, donc ne pas modéliser denied comme terminal.
Annulation en attente de règlement financiercancelledInspecter les activités financières antérieures. Un remboursement ou un vide peut encore suivre.
Bornevoided, refunded, expiredLa machine de paiement centrale n'a aucune transition de ces valeurs.

partial_captured et partial_refunded peut être le dernier état requis par le processus d'affaires du marchand même s'ils ne sont pas des états API terminal. Conserver le statut réel et les montants cumulatifs; ne jamais remplacer un statut partiel localement par captured ou refunded.

Choisissez le flux de paiement#

Les paiements par carte et les méthodes de paiement alternatives ne suivent pas les mêmes actions ou états de traitement du client. Commencez par le flux correspondant à la méthode de paiement, puis revenez ici pour les références de statut et de transition canoniques.

Les diagrammes sur ces pages illustrent le chemin normal pour le commerçant. Les transitions directes, les tentatives, les chemins de réconciliation et les branches spécifiques au prestataire restent autoritaires dans le référence de transition validée.

Référence de l'état du paiement#

Les valeurs sont des chaînes minuscules sensibles aux cas.

StatutSignificationCe que le marchand devrait faire
pendingLe paiement créé; l'action client, le routage ou la confirmation du fournisseur peuvent encore être nécessaires.Suivre next_action ou des instructions de méthode et garder l'accomplissement bloqué.
pending_3dsL'authentification 3DS est incomplète.Réalisez le défi, puis évaluez le statut de paiement qui en résulte.
processingUn paiement d'achat ou de MPA est en cours.Récupérer le résultat officiel après que DEUNA ait traité la mise à jour du prestataire ; ne pas réessayer trop tôt.
processedUn achat en une seule étape est effectué.Enregistrer le succès et appliquer la politique de respect; les remboursements peuvent suivre.
authorizingLa demande d'autorisation est en cours.Ne traitez pas les fonds comme étant saisis ou réservés.
authorizedLes fonds ont été réservés avec succès.Capturer ou annuler le cas échéant.
capturingUne capture complète est en cours.Suivre l'opération et attendre la confirmation.
partial_capturingUne capture partielle est en cours.Garder les montants saisis en attente et confirmés séparément.
partial_capturedUne partie de la somme a été saisie.Inscrivez le montant confirmé et le montant restant admissible au prélèvement/remboursement.
capturedCapture terminée.Inscrivez le montant perçu; les remboursements peuvent suivre.
voidingLa publication d'une autorisation est en cours.Attendre voided ou un résultat restauré ou échoué.
voidedL'autorisation a été délivrée.Enregistrer l'achèvement du terminal.
refundingUne restitution intégrale ou résiduelle est en cours.Attendre la confirmation; l'acceptation de la demande n'est pas une preuve de remboursement des fonds.
partial_refundingUne restitution partielle est en cours.Suivre séparément les montants remboursés en attente et confirmés.
partial_refundedUn remboursement partiel est effectué.Inscrivez le montant et le solde remboursable.
refundedLe solde remboursable représenté par le cycle de vie a été retourné.Enregistrer l'achèvement du terminal.
manual_reviewLe paiement est retenu pour une décision de risque.Gardez l'exécution bloquée jusqu'à ce que le paiement reçoive un nouveau statut.
deniedLa tentative actuelle a été rejetée.Ne pas remplir. Préservez la raison; une réessayer configurée peut réentrer dans le flux actif.
cancelledLe mode de paiement ou le marchand a annulé le paiement.Vérifiez si un remboursement ou un vide doit être effectué.
expiredLa fenêtre de fin de paiement autorisée s'est fermée avant la fin du paiement.Enregistrez l'achèvement du terminal; créez un nouveau paiement si le client tente de nouveau.

not_authorized et failed sont utilisés par les adaptateurs de processeur ou de niveau d'exploitation, mais ils ne sont pas des valeurs canoniques dans le noyau payment.data.status Graphique de transition. Ne fusionnez pas les statuts d'exploitation du fournisseur, les statuts d'exploitation de capture/remboursement ou les marqueurs de temps d'arrêt locaux dans le champ d'état de paiement.

Référence de transition validée#

Les transitions suivantes correspondent à la machine de l'état central des paiements. La livraison répétée du même état est omise sauf si elle est explicitement acceptée. Une transition listée ne garantit pas que chaque processeur ou mode de paiement supporte l'opération correspondante.

Situation actuelleStatuts suivants autorisés
pendingpending, pending_3ds, authorizing, authorized, processing, processed, cancelled, voided, denied, manual_review, expired
pending_3dspending_3ds, authorizing, authorized, processing, processed, cancelled, denied, manual_review, expired
processingprocessed, cancelled, denied, manual_review, partial_refunding, refunding, partial_refunded, refunded
processedrefunding, refunded, partial_refunding, partial_refunded, voided
authorizingauthorized, captured, voiding, cancelled, denied, manual_review
authorizedcapturing, captured, partial_capturing, partial_captured, voiding, voided, cancelled
capturingcaptured, denied; pour les flux de récupération de capture en attente pris en charge : authorized, partial_capturing, partial_refunding, partial_refunded, refunding, refunded
partial_capturingcapturing, partial_captured, captured, denied
partial_capturedcaptured, partial_refunding, partial_refunded, refunding, refunded
capturedpartial_refunding, partial_refunded, refunding, refunded
voidingvoided, denied, authorized
refundingrefunded, partial_refunded, voided, processed, captured
partial_refundingpartial_refunded, refunding, refunded, denied, processed, captured, partial_captured
partial_refundedpartial_refunding, refunding, refunded
manual_reviewprocessed, captured, denied
deniedpending, pending_3ds, processing, processed, authorizing, authorized, manual_review, denied
cancelledrefunded, voided
voidedAucune (finale)
refundedAucune (finale)
expiredAucune (finale)

Le rapprochement de fichiers de règlement peut permettre des transitions de récupération supplémentaires tandis que DEUNA réconcilie un résultat de processeur externe. Ces transitions ne changent pas la signification publique des statuts.

Certains profils de processeurs peuvent accepter un remboursement pendant qu'une capture asynchrone est toujours en attente. Dans ce flux, DEUNA peut annuler ou inverser la capture en attente et rembourser l'autorisation d'origine, ce qui permet aux transitions supplémentaires énumérées pour capturing. N'initiez pas ce flux, sauf si DEUNA a confirmé la prise en charge de la connexion au processeur.

Gérez les mises à jour en toute sécurité#

  1. Récupérer le paiement officiel avant de modifier l'état local.
  2. Identifier le paiement et l'opération associée avant d'appliquer la mise à jour.
  3. Entreposez le statut déclaré, le montant confirmé, la monnaie, l'identificateur d'opération et les références du fournisseur.
  4. Traiter de manière idempotente les récupérations répétées et les tentatives de client. Ne pas dédoublonner uniquement sur la base de l'état.
  5. Gardez la réalisation bloquée pour des états transitoires, d'examen ou inconnus.
  6. Réconcilier les résultats manquants ou contradictoires grâce au flux de récupération de paiement supporté.

Un délai d'attente HTTP, une perte de réponse ou une mise à jour de prestataire retardée ne prouvent pas denied ou expired. Suivre conseils pour la demande d'idémpotent, récupérer le paiement et distinguer une réessayer de la même demande d'une nouvelle tentative de paiement.

Dans cette section