diff --git a/prisma/migrations/20230306141823_add_card_to_transfer/migration.sql b/prisma/migrations/20230306141823_add_card_to_transfer/migration.sql
new file mode 100644
index 0000000000000000000000000000000000000000..e3f3acc6e2f39843c27a2fc39511e38e5d86874d
--- /dev/null
+++ b/prisma/migrations/20230306141823_add_card_to_transfer/migration.sql
@@ -0,0 +1,2 @@
+-- AlterTable
+ALTER TABLE "MoneyTransfer" ADD COLUMN     "card" TEXT NOT NULL DEFAULT '';
diff --git a/prisma/schema.prisma b/prisma/schema.prisma
index 576094a20590fe4d23b5dd8bb150fcf8ac8fc1b0..a24631125bdc3962d6715ca4a4df70200dad27d5 100644
--- a/prisma/schema.prisma
+++ b/prisma/schema.prisma
@@ -97,4 +97,5 @@ model MoneyTransfer {
   fromId    Int
   to        User     @relation("to", fields: [toId], references: [id])
   toId      Int
+  card      String   @default("")
 }
diff --git a/src/routes/api/[slug]/+server.js b/src/routes/api/[slug]/+server.js
index cfdcbe60434ac13fa687c10580ea2c3c0a47ced9..dffff53d01b0cb43b5d33af4ac1b159093980400 100644
--- a/src/routes/api/[slug]/+server.js
+++ b/src/routes/api/[slug]/+server.js
@@ -44,7 +44,7 @@ export async function POST(event) {
 				if(user.balance < data.amount) return new Response(JSON.stringify({message: "Not enough balance"}), {headers: {'content-type': 'application/json', 'status': 400}});
 				const target = await getUserById(data.target);
 				if(!target) return new Response(JSON.stringify({message: "Target not found"}), {headers: {'content-type': 'application/json', 'status': 404}});
-				const { from } = await transferMoney(user.id, target.id, data.amount);
+				const { from } = await transferMoney(user.id, data.card, target.id, data.amount);
 				// don't return the to-user, because it contains the target's information
 				return new Response(JSON.stringify(from), {headers: {'content-type': 'application/json', 'status': 200}});
 			}catch(e){
diff --git a/src/routes/api/transactions.js b/src/routes/api/transactions.js
index ee1d042977a2e292cd07d12679c2cfe3acac2309..cf729b25fe9b9c75a7bb874ca4ee557581930d9e 100644
--- a/src/routes/api/transactions.js
+++ b/src/routes/api/transactions.js
@@ -29,7 +29,7 @@ export async function buyArticles(userId, card, items, noBalance=false) {
 	return { user, itemTransactions };
 }
 
-export async function transferMoney(fromId, toId, amount){
+export async function transferMoney(fromId, card, toId, amount){
 	const [to, from] = await db.$transaction([
 		db.user.update({
 			where: { id: toId },
@@ -40,6 +40,7 @@ export async function transferMoney(fromId, toId, amount){
 				moneyTransfersReceived: {
 					create: {
 						amount,
+						card,
 						from: { connect: { id: fromId } }
 					}
 				}