diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionImportController.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionImportController.java
index 65919d5fe94e85ae54708cf298f0fdba99c8cce9..95ef20d1df989518771476944b59f90e799adde7 100644
--- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionImportController.java
+++ b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionImportController.java
@@ -161,6 +161,7 @@ public class TransactionImportController extends BaseController
 			{
 				final String date = csvRow.getColumns().get(csvColumnSettings.columnDate() - 1);
 				final String name = csvRow.getColumns().get(csvColumnSettings.columnName() - 1);
+				final String description = csvRow.getColumns().get(csvColumnSettings.columnDescription() - 1);
 
 				final String amount = csvRow.getColumns().get(csvColumnSettings.columnAmount() - 1);
 				final Optional<Integer> parsedAmountOptional = AmountParser.parse(amount);
@@ -170,7 +171,7 @@ public class TransactionImportController extends BaseController
 					continue;
 				}
 
-				csvTransactions.add(new CsvTransaction(date, name, parsedAmountOptional.get(), CsvTransactionStatus.PENDING));
+				csvTransactions.add(new CsvTransaction(date, name, parsedAmountOptional.get(), description, CsvTransactionStatus.PENDING));
 			}
 			catch(IndexOutOfBoundsException e)
 			{
@@ -248,6 +249,7 @@ public class TransactionImportController extends BaseController
 
 		// update original CsvTransaction attributes with values from user (from newCsvTransaction)
 		csvTransaction.setName(newCsvTransaction.getName());
+		csvTransaction.setDescription(newCsvTransaction.getDescription());
 
 		final Transaction newTransaction = createTransactionFromCsvTransaction(csvTransaction);
 		transactionService.getRepository().save(newTransaction);
@@ -261,6 +263,7 @@ public class TransactionImportController extends BaseController
 		// TODO parse first
 //		newTransaction.setDate(csvTransaction.getDate());
 		newTransaction.setName(csvTransaction.getName());
+		newTransaction.setDescription(csvTransaction.getDescription());
 		newTransaction.setAmount(csvTransaction.getAmount());
 		newTransaction.setIsExpenditure(true);
 		newTransaction.setAccount(helpers.getCurrentAccountOrDefault());
diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/transactions/csvimport/CsvColumnSettings.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/transactions/csvimport/CsvColumnSettings.java
index 0780b17f8dedbd636d5f1198d6c090a931739b72..4affb3e24f370e3cae5690c32dde8c0b4c94f732 100644
--- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/transactions/csvimport/CsvColumnSettings.java
+++ b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/transactions/csvimport/CsvColumnSettings.java
@@ -1,5 +1,5 @@
 package de.deadlocker8.budgetmaster.transactions.csvimport;
 
-public record CsvColumnSettings(int columnDate, int columnName, int columnAmount)
+public record CsvColumnSettings(int columnDate, int columnName, int columnAmount, int columnDescription)
 {
 }
diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/transactions/csvimport/CsvTransaction.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/transactions/csvimport/CsvTransaction.java
index 7473d5f3ca659adb399ef33ff012b03161f789c7..82b4a70587e650b978a6feeb5ad4ef0da1e56dbc 100644
--- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/transactions/csvimport/CsvTransaction.java
+++ b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/transactions/csvimport/CsvTransaction.java
@@ -7,13 +7,15 @@ public final class CsvTransaction
 	private final String date;
 	private String name;
 	private final Integer amount;
+	private String description;
 	private CsvTransactionStatus status;
 
-	public CsvTransaction(String date, String name, Integer amount, CsvTransactionStatus status)
+	public CsvTransaction(String date, String name, Integer amount, String description, CsvTransactionStatus status)
 	{
 		this.date = date;
 		this.name = name;
 		this.amount = amount;
+		this.description = description;
 		this.status = status;
 	}
 
@@ -37,6 +39,16 @@ public final class CsvTransaction
 		return amount;
 	}
 
+	public String getDescription()
+	{
+		return description;
+	}
+
+	public void setDescription(String description)
+	{
+		this.description = description;
+	}
+
 	public CsvTransactionStatus getStatus()
 	{
 		return status;
@@ -53,13 +65,13 @@ public final class CsvTransaction
 		if(this == o) return true;
 		if(o == null || getClass() != o.getClass()) return false;
 		CsvTransaction that = (CsvTransaction) o;
-		return Objects.equals(date, that.date) && Objects.equals(name, that.name) && Objects.equals(amount, that.amount) && status == that.status;
+		return Objects.equals(date, that.date) && Objects.equals(name, that.name) && Objects.equals(amount, that.amount) && Objects.equals(description, that.description) && status == that.status;
 	}
 
 	@Override
 	public int hashCode()
 	{
-		return Objects.hash(date, name, amount, status);
+		return Objects.hash(date, name, amount, description, status);
 	}
 
 	@Override
@@ -68,7 +80,8 @@ public final class CsvTransaction
 		return "CsvTransaction{" +
 				"date='" + date + '\'' +
 				", name='" + name + '\'' +
-				", amount='" + amount + '\'' +
+				", amount=" + amount +
+				", description='" + description + '\'' +
 				", status=" + status +
 				'}';
 	}
diff --git a/BudgetMasterServer/src/main/resources/templates/transactions/transactionImport.ftl b/BudgetMasterServer/src/main/resources/templates/transactions/transactionImport.ftl
index 538736e0e029f5a2996603d42ada68bc10825985..275b9afa822e63a39855c4e6f43037dfcce2c9d8 100644
--- a/BudgetMasterServer/src/main/resources/templates/transactions/transactionImport.ftl
+++ b/BudgetMasterServer/src/main/resources/templates/transactions/transactionImport.ftl
@@ -153,6 +153,18 @@
                     <label class="input-label" for="columnAmount">${locale.getString("transactions.import.column")}</label>
                 </div>
             </div>
+            <div class="row">
+                <div class="col s6 m4 offset-m2 l3 offset-l3">
+                    <div class="transaction-import-text-with-icon">
+                        <i class="material-icons">article</i>
+                        ${locale.getString("transaction.new.label.description")}
+                    </div>
+                </div>
+                <div class="input-field col s6 m4 l3 no-margin-top no-margin-bottom">
+                    <input id="columnDescription" type="number" min="1" max="${csvRows?size}" name="columnDescription" <@validation.validation "columnDescription"/> value="<#if csvColumnSettings??>${csvColumnSettings.columnDescription()}</#if>">
+                    <label class="input-label" for="columnDescription">${locale.getString("transactions.import.column")}</label>
+                </div>
+            </div>
 
             <br>
 
@@ -195,6 +207,7 @@
                 <td class="bold">${locale.getString("transactions.import.status")}</td>
                 <td class="bold">${locale.getString("transaction.new.label.date")}</td>
                 <td class="bold">${locale.getString("transaction.new.label.name")}</td>
+                <td class="bold">${locale.getString("transaction.new.label.description")}</td>
                 <td class="bold">${locale.getString("transaction.new.label.amount")}</td>
                 <td class="bold">${locale.getString("transactions.import.actions")}</td>
             </tr>
@@ -217,6 +230,11 @@
                     <input class="no-margin-bottom" type="text" name="name" required value="${csvTransaction.getName()}">
                 </div>
             </td>
+            <td>
+                <div class="input-field no-margin-top no-margin-bottom">
+                    <input class="no-margin-bottom" type="text" name="description" value="${csvTransaction.getDescription()}">
+                </div>
+            </td>
             <td>${currencyService.getCurrencyString(csvTransaction.getAmount())}</td>
             <td>
                 <@header.buttonSubmit name='action' icon='save' localizationKey='' classes='text-white'/>&nbsp;