diff --git a/src/highlanderticketing/handler/order.go b/src/highlanderticketing/handler/order.go
index 72b034f7e23ef44ee6a039334e4a786aba79a5db..dc6cd1fb5543b473aa02743fb1f4d3d1e6fd3ac2 100644
--- a/src/highlanderticketing/handler/order.go
+++ b/src/highlanderticketing/handler/order.go
@@ -15,7 +15,7 @@ func AddMatchOrder(w http.ResponseWriter, r *http.Request) {
 		http.Error(w, err.Error(), http.StatusBadRequest)
 		return
 	}
-	order, err := getMatchOrder(r)
+	order, err := getOrder(r)
 	if err != nil {
 		http.Error(w, err.Error(), http.StatusBadRequest)
 		return
@@ -28,9 +28,29 @@ func AddMatchOrder(w http.ResponseWriter, r *http.Request) {
 	}
 	sendJson(w, order)
 
+}
+func AddTravelOrder(w http.ResponseWriter, r *http.Request) {
+	id, err := getID(r)
+	if err != nil {
+		http.Error(w, err.Error(), http.StatusBadRequest)
+		return
+	}
+	order, err := getOrder(r)
+	if err != nil {
+		http.Error(w, err.Error(), http.StatusBadRequest)
+		return
+	}
+	err = service.AddTravelOrder(id, order)
+	if err != nil {
+		log.Errorf("Failure adding donation to campaign with ID %v: %v", id, err)
+		http.Error(w, err.Error(), http.StatusInternalServerError)
+		return
+	}
+	sendJson(w, order)
+
 }
 
-func getMatchOrder(r *http.Request) (*model.Order, error) {
+func getOrder(r *http.Request) (*model.Order, error) {
 	var order model.Order
 	err := json.NewDecoder(r.Body).Decode(&order)
 	if err != nil {
diff --git a/src/highlanderticketing/main.go b/src/highlanderticketing/main.go
index 3889c2379f727b7de6d1d1116e6caa2449e51892..c05efbebf8855c51f55845ea421a525dc7d48c4b 100644
--- a/src/highlanderticketing/main.go
+++ b/src/highlanderticketing/main.go
@@ -25,6 +25,7 @@ func main() {
 	router.HandleFunc("/match/{id}", handler.UpdateMatch).Methods("PUT")
 	router.HandleFunc("/match/{id}", handler.DeleteMatch).Methods("DELETE")
 	router.HandleFunc("/match/{id}/matchorder", handler.AddMatchOrder).Methods("POST")
+	router.HandleFunc("/match/{id}/travelorder", handler.AddTravelOrder).Methods("POST")
 	if err := http.ListenAndServe(":8000", router); err != nil {
 		log.Fatal(err)
 	}
diff --git a/src/highlanderticketing/service/order.go b/src/highlanderticketing/service/order.go
index c8ac81acc5cc238f3d02e380197553dea3c93c57..f2f2f430a340a01dce3032aeeede63e670db1077 100644
--- a/src/highlanderticketing/service/order.go
+++ b/src/highlanderticketing/service/order.go
@@ -10,7 +10,6 @@ import (
 	"go.mongodb.org/mongo-driver/bson/primitive"
 )
 
-// noch testen
 func AddMatchOrder(matchID primitive.ObjectID, order *model.Order) error {
 	filter := bson.D{primitive.E{Key: "_id", Value: matchID}}
 	order.ID = primitive.NewObjectID()
@@ -39,6 +38,7 @@ func AddMatchOrder(matchID primitive.ObjectID, order *model.Order) error {
 
 func AddTravelOrder(matchID primitive.ObjectID, order *model.Order) error {
 	filter := bson.D{primitive.E{Key: "_id", Value: matchID}}
+	order.ID = primitive.NewObjectID()
 
 	updater := bson.M{"$push": bson.M{"travel.orders": order}}
 
@@ -59,10 +59,6 @@ func AddTravelOrder(matchID primitive.ObjectID, order *model.Order) error {
 
 	return nil
 }
-
-func UpdateOrder() {
-
-}
-func DeleteOrder() {
+func CancelOrder() {
 
 }