diff --git a/scipost_django/finances/forms.py b/scipost_django/finances/forms.py
index f08517580e7d1e88e536ea7700ba3889a3027f35..bd654ea38dde8044a7dfc0541e274f47eeec3bd4 100644
--- a/scipost_django/finances/forms.py
+++ b/scipost_django/finances/forms.py
@@ -199,6 +199,7 @@ class SubsidyPaymentForm(forms.ModelForm):
         super().__init__(*args, **kwargs)
         self.fields["subsidy"].initial = subsidy
         self.fields["subsidy"].widget = forms.HiddenInput()
+        print(subsidy.attachments.invoices())
         self.fields["invoice"].choices = [
             (att.id, f"{att.attachment.name.split('/')[-1]}")
             for att in subsidy.attachments.invoices()
@@ -211,8 +212,8 @@ class SubsidyPaymentForm(forms.ModelForm):
         self.helper.layout = Layout(
             Field("subsidy"),
             Div(
-                Div(FloatingField("reference"), css_class="col-lg-5"),
-                Div(FloatingField("amount"), css_class="col-lg-3"),
+                Div(Field("reference"), css_class="col-lg-5"),
+                Div(Field("amount"), css_class="col-lg-3"),
                 Div(Field("date_scheduled"), css_class="col-lg-4"),
                 css_class="row",
             ),
@@ -224,6 +225,26 @@ class SubsidyPaymentForm(forms.ModelForm):
             ButtonHolder(Submit("submit", "Submit", css_class="btn-sm")),
         )
 
+    def clean_invoice(self):
+        if invoice := self.cleaned_data["invoice"]:
+            invoice = SubsidyAttachment.objects.get(id=invoice)
+        return invoice
+
+    def clean_proof_of_payment(self):
+        if proof_of_payment := self.cleaned_data["proof_of_payment"]:
+            proof_of_payment = SubsidyAttachment.objects.get(id=proof_of_payment)
+        return proof_of_payment
+
+    def save(self, commit=True):
+        instance = super().save(commit=False)
+        if invoice := self.cleaned_data["invoice"]:
+            instance.invoice = invoice
+        if proof_of_payment := self.cleaned_data["proof_of_payment"]:
+            instance.proof_of_payment = proof_of_payment
+        if commit:
+            instance.save()
+        return instance
+
 
 class SubsidyAttachmentForm(forms.ModelForm):
     class Meta:
@@ -236,6 +257,9 @@ class SubsidyAttachmentForm(forms.ModelForm):
             "description",
             "visibility",
         )
+        widgets = {
+            "date": forms.DateInput(attrs={"type": "date"}),
+        }
 
     def clean_attachment(self):
         attachment = self.cleaned_data["attachment"]