Machine d'état du crédit
Le diagramme suivant montre la machine d'état pour un crédit tel qu'utilisé par Contrôleur des plug-in de paiement. Il décrit comment un crédit se déplace d'un état à l'autre lorsque des transactions financières, des requêtes ou des modifications externes sont effectuées au niveau d'un paiement et comment les plug-ins de paiement sont utilisés pour traiter les transactions de paiement. L'état du crédit persiste dans la table PPCCREDIT.

- Lorsqu'il vient d'être créé (Nouveau), un crédit peut uniquement être la cible d'une transaction financière de crédit.
- Lorsque son état est Crediting, la seule transaction financière possible est reverseCredit. En cas de succès, l'état du crédit passe à Canceled. L'état du crédit peut également passer à Credited par une mise à jour de requête ou par une opération de modification explicite effectuée par le Contrôleur des plug-in de paiement. Les opérations de modification sont courantes pour les transactions de paiement hors ligne et dans les situations de délai d'attente.
- Lorsqu'il est dans un Credit, un crédit peut être annulé par un reverseCredit complet (le montant total crédité est annulé). Avec une transaction reverseCredit partielle (le montant à annuler est inférieur au montant total crédité), l'état du crédit reste défini sur Credited.
- Lorsqu'une transaction financière échoue, l'état du crédit passe à Failed.
- Les états de fin des crédits sont Failed et Canceled.