Statuts de transaction
Chaque ligne de transaction du tableau de bord a l'un de ces statuts. Le statut reflète l'événement le plus récent pour cette transaction ; les remboursements et litiges mettent à jour la ligne existante plutôt que d'en insérer une jumelle.
| Statut | Signification |
|---|---|
succeeded | Paiement finalisé. L'argent est dans votre compte (net des frais de fournisseur). |
pending | Paiement en cours. Fréquent avec les modes de paiement asynchrones (ACH, certains rails crypto) où la confirmation prend de quelques minutes à quelques heures. |
failed | Le paiement n'a pas abouti : carte refusée, autorisation expirée, rejet ferme. Aucun argent n'a bougé. |
partial | L'acheteur a payé moins que facturé (fréquent quand un acheteur crypto envoie un montant réduit des frais de réseau). Le amount de la ligne reflète ce qui a réellement été reçu ; consultez metadata.invoicedAmount pour ce qui a été demandé. |
refunded | L'argent a été rendu à l'acheteur, en totalité ou en partie. Le amount de la ligne est le montant remboursé ; les remboursements peuvent survenir des jours ou des semaines après le paiement initial. |
disputed | L'acheteur (ou sa banque) a ouvert un litige ou une rétrofacturation. Consultez l'interface du fournisseur pour le délai de réponse. Le metadata.reason de la ligne porte la classification du fournisseur telle quelle. |
pending_manual | Une transaction de paiement par courrier attend votre confirmation physique. Voir la section suivante. |
manual_canceled | Vous avez cliqué sur Annuler sur une ligne de paiement par courrier en attente avant l'arrivée du paiement de l'acheteur. |
manual_expired | Une ligne de paiement par courrier en attente est restée 30 jours sans confirmation et a expiré automatiquement. |
manual_revoked | Vous avez confirmé la réception d'un paiement par courrier mais avez ensuite annulé la confirmation (par ex. le paiement s'est avéré invalide). La ligne passe de succeeded à cet état terminal. |
Remboursements, litiges, paiements partiels
Coin Moebius écoute ces événements de fournisseur et met à jour la ligne de transaction originale dans le tableau de bord. Plus précisément :
- Remboursements : l'événement
charge.refundedde Stripe (remboursements complets ou partiels, y comprisamount_refundedpour que les remboursements partiels montrent la part rendue). L'IPNrefundedde NOWPayments. Le statut de la ligne bascule àrefunded, leamountreflète le montant remboursé, etmetadata.originalChargeId/metadata.originalAmountportent le contexte du paiement initial. - Litiges (rétrofacturations) : l'événement
charge.dispute.createdde Stripe. Le statut de la ligne bascule àdisputed. Le motif indiqué par le fournisseur passe dansmetadata.reasontel quel, vous pouvez l'afficher dans votre propre interface comme bon vous semble. - Paiements partiels : l'IPN
partially_paidde NOWPayments. Le statut de la ligne bascule àpartial. Leamountreflète ce qui a réellement été reçu (actually_paid) ;metadata.invoicedAmountest ce qui a été demandé.
En v1, ces événements sont exposés dans le tableau de bord et via l'endpoint /status. Une version future ajoutera des notifications par e-mail et un relais de webhook sortant pour que votre propre backend puisse réagir automatiquement. Pour l'instant, mettez en place une petite tâche de sondage (voir la section suivante) ou consultez le tableau de bord.