Skip to main content

Troubleshooting & Reference · Article 7.17

„Mein Kunde hat eine Erinnerungs-E-Mail erhalten, obwohl er bereits bezahlt hat"

Seltene Race-Condition — die Erinnerung wurde Momente versendet, bevor die Zahlungsbestätigung propagiert wurde. Der Erinnerungs-Beat-Task prüft den Zahlungsstatus beim Senden erneut; wenn bereits bezahlt, wird die E-Mail übersprungen. Wenn dies auftritt, lag die Lücke im Sekundenbereich.

Eine Erinnerungs-E-Mail, die an einen bereits bezahlenden Kunden geht, ist unangenehm, aber harmlos. Clozo schützt davor zweifach (die Idempotenz-Prüfung des Timeline-Ereignisses + die Zahlungsstatus-Neuprüfung beim Versenden), aber eine enge Race-Condition zwischen der Webhook-Verarbeitung und dem Versand kann durchschlüpfen. Wenn es einmal passiert, entschuldigen Sie sich und machen Sie weiter; wenn es wiederholt auftritt, handelt es sich um einen Bug, über den wir informiert sein möchten.

Step by step

  1. Beim Kunden entschuldigen.

    Persönliche Nachricht: „Entschuldigung — diese Erinnerung wurde Momente versendet, bevor unser System Ihre Zahlung erfasst hat. Alles ist beglichen."

  2. Den Zahlungsstatus überprüfen:

    Er sollte in Clozo korrekt als Bezahlt angezeigt werden. Wenn nicht, handelt es sich um ein anderes Problem (Abschnitt 10.14).

  3. Wenn reproduzierbar (mehrere bezahlte Angebote erhalten Erinnerungen):

    Support kontaktieren.

Why this works this way

Der Beat-Task send_overdue_reminders (tasks.py Z2107) läuft stündlich und stellt Pro-Tier-Versendungen in die Warteschlange. Der Dispatcher send_overdue_reminder_email (Z2165) prüft beim Versenden erneut proposal.status != Proposal.STATUS_OVERDUE und überspringt die E-Mail, wenn bezahlt. Das Race-Fenster besteht aus den wenigen Hundert Millisekunden zwischen der Neuprüfung und dem tatsächlichen Resend-API-Aufruf.

Wenn die Erinnerungs-E-Mail tatsächlich bei einem bezahlten Angebot ausgelöst wurde, muss die Zahlung in diesem engen Fenster eingegangen sein. Äußerst ungewöhnlich.

Troubleshooting

Keep reading