diff --git a/src/myaktion/monitor.go b/src/myaktion/monitor.go
index 48db3ac3e524ae6da8544c8b5960e2b29038801a..ecb0d9b60f420bb5938790ff50bf95264e8dd074 100644
--- a/src/myaktion/monitor.go
+++ b/src/myaktion/monitor.go
@@ -7,6 +7,7 @@ import (
 	log "github.com/sirupsen/logrus"
 	"gitlab.reutlingen-university.de/go-exercises/myaktion-go-ss25/src/myaktion/client"
 	"gitlab.reutlingen-university.de/go-exercises/myaktion-go-ss25/src/myaktion/client/banktransfer"
+	"gitlab.reutlingen-university.de/go-exercises/myaktion-go-ss25/src/myaktion/service"
 )
 
 func monitortransactions() {
@@ -42,7 +43,14 @@ func connectandmonitor() {
 			continue
 		}
 		entry := log.WithField("transaction", transaction)
-		entry.Info("Received transaction. Sending processing response")
+		entry.Info("Received transaction")
+		err = service.MarkDonation(uint(transaction.DonationId))
+		if err != nil {
+			entry.WithError(err).Error("error changing donation status")
+			continue
+		}
+		entry.Info("Sending processing response")
+
 		err = watcher.Send(&banktransfer.ProcessingResponse{Id: transaction.Id})
 		if err != nil {
 			entry.WithError(err).Error("error sending processing response")
diff --git a/src/myaktion/service/donation.go b/src/myaktion/service/donation.go
index bc2f87e412b0486b14248ad8e174554476c7089e..9a384fd90a0ee24cdbf96784c0a3246b17d79520 100644
--- a/src/myaktion/service/donation.go
+++ b/src/myaktion/service/donation.go
@@ -72,3 +72,23 @@ func deleteDonation(donation *model.Donation) error {
 	entry.Info("Successfully deleted campaign.")
 	return nil
 }
+
+func MarkDonation(id uint) error {
+	entry := log.WithField("donationId", id)
+	donation := new(model.Donation)
+	result := db.DB.First(donation, id)
+	if result.Error != nil {
+		entry.WithError(result.Error).Error("Can't retrieve donation")
+		return result.Error
+	}
+	entry = entry.WithField("donation", donation)
+	entry.Trace("Retrieved donation")
+	donation.Status = model.TRANSFERRED
+	result = db.DB.Save(donation)
+	if result.Error != nil {
+		entry.WithError(result.Error).Error("Can't update donation")
+		return result.Error
+	}
+	entry.Info("Successfully updated status of donation.")
+	return nil
+}