diff --git a/apps/member/views.py b/apps/member/views.py
index de44bfe7a0db92e4e4a0e14d23f96791723a125e..1e637f4d77a73f992d0a3ddfae2a15da0e6e640c 100644
--- a/apps/member/views.py
+++ b/apps/member/views.py
@@ -671,9 +671,9 @@ class ClubAddMemberView(ProtectQuerysetMixin, ProtectedCreateView):
                            .format(form.instance.club.membership_end))
             error = True
 
-        if credit_amount:
+        if credit_amount and not SpecialTransaction.validate_payment_form(form):
             # Check that special information for payment are filled
-            error = SpecialTransaction.validate_payment_form(form) or error
+            error = True
 
         return not error
 
diff --git a/apps/note/models/transactions.py b/apps/note/models/transactions.py
index 3db82e076b3848a1fa6612246d99470e121f128c..adb20d20ccdb32f95083dbdeb26bed6cd8efb18b 100644
--- a/apps/note/models/transactions.py
+++ b/apps/note/models/transactions.py
@@ -348,7 +348,7 @@ class SpecialTransaction(Transaction):
         first_name = form.cleaned_data["first_name"]
         bank = form.cleaned_data["bank"]
 
-        error = True
+        error = False
 
         if not last_name or not first_name or (not bank and credit_type.special_type == "Chèque"):
             if not last_name: