diff --git a/pass/app/Order.js b/pass/app/Order.js
index d859d7865083827cead7bed384b4e181e748a379..b6ac4ec33d18afc07e532953342b619d45ab8e2f 100644
--- a/pass/app/Order.js
+++ b/pass/app/Order.js
@@ -81,6 +81,10 @@ class Order {
     return this.#payment_method_link;
   }
 
+  isPaymentComplete() {
+    return this.#payment_completed;
+  }
+
   setPaymentMethodLink(payment_method_link) {
     this.#payment_method_link = payment_method_link;
   }
diff --git a/pass/routes/checkout/checkout.js b/pass/routes/checkout/checkout.js
index d60c1bba71957a9e573406f09a7bd3704232a91a..229098e0f192d6de9bc9cac73740458e9d89ed47 100644
--- a/pass/routes/checkout/checkout.js
+++ b/pass/routes/checkout/checkout.js
@@ -126,8 +126,13 @@ router.use(
 /** Cancel is the same for all payment gateways */
 router.post("/payment/order/*/cancel", (req, res) => {
   Order.LOAD_ORDER_FROM_ID(req.body.order_id).then((loaded_order) => {
+    if (loaded_order.isPaymentComplete()) {
+      res.status(400).json({
+        msg: "Cannot delete a completed order",
+      });
+      return;
+    }
     loaded_order.delete().then((success) => {
-      console.log(success);
       if (success) {
         res.status(200).json({
           msg: "Order deleted",