Index: src/app/customer/create-order/create-order.component.html
===================================================================
--- src/app/customer/create-order/create-order.component.html	(revision 871630ecbcb1724aade3ae1c42aa971e12a8107f)
+++ src/app/customer/create-order/create-order.component.html	(revision 9b7ced77dfd932f5eb946bae0e8720820d4d18d2)
@@ -104,9 +104,9 @@
     <tbody>
       <tr *ngFor="let it of orderItems; let i = index">
-        <td>{{ it.articleName }}</td>
-        <td>${{ it.unitPrice.toFixed(2) }}</td>
-        <td>{{ it.manufacturerName }}</td>
+        <td>{{ it.article.name }}</td>
+        <td>${{ it.article.price.toFixed(2) }}</td>
+        <td>{{ it.article.manufacturer }}</td>
         <td>{{ it.quantity }}</td>
-        <td>${{ (it.unitPrice * it.quantity).toFixed(2) }}</td>
+        <td>${{ (it.article.price * it.quantity).toFixed(2) }}</td>
         <td>
           <button class="btn btn-danger btn-sm" (click)="removeItem(i)">
Index: src/app/customer/create-order/create-order.component.ts
===================================================================
--- src/app/customer/create-order/create-order.component.ts	(revision 871630ecbcb1724aade3ae1c42aa971e12a8107f)
+++ src/app/customer/create-order/create-order.component.ts	(revision 9b7ced77dfd932f5eb946bae0e8720820d4d18d2)
@@ -83,8 +83,5 @@
     }
     this.orderItems.push({
-      articleId: a.id,
-      articleName: a.name,
-      manufacturerName: a.manufacturer,
-      unitPrice: a.price,
+      article: a,
       quantity: qty,
     });
@@ -100,5 +97,5 @@
   updateTotal() {
     this.totalSum = this.orderItems.reduce(
-      (sum, it) => sum + it.unitPrice * it.quantity,
+      (sum, it) => sum + it.article.price * it.quantity,
       0
     );
@@ -115,5 +112,5 @@
     }
     this.svc.placeOrder(this.orderItems, this.proForma).subscribe({
-      next: () => {
+      next: (createdOrder) => {
         alert('Order placed!');
         this.orderItems = [];
@@ -121,5 +118,5 @@
         this.router.navigate(['/customer/dashboard']);
       },
-      error: () => alert('Error'),
+      error: (err) => alert('Error: ' + (err.message || 'Unknown'))
     });
   }
Index: src/app/models/article.model.ts
===================================================================
--- src/app/models/article.model.ts	(revision 871630ecbcb1724aade3ae1c42aa971e12a8107f)
+++ src/app/models/article.model.ts	(revision 9b7ced77dfd932f5eb946bae0e8720820d4d18d2)
@@ -2,9 +2,11 @@
   id: number;
   name: string;
+  manufacturer: string;
+  quantity: number;
+  manufacturerId: number;
+  price: number;
+  category: string;
   categoryId: number;
-  manufacturerId: number;
-  manufacturer: string;
-  price: number;
-  quantity: number;
+  weight: number;
   image?: string;
 }
Index: src/app/models/order-item.model.ts
===================================================================
--- src/app/models/order-item.model.ts	(revision 871630ecbcb1724aade3ae1c42aa971e12a8107f)
+++ src/app/models/order-item.model.ts	(revision 9b7ced77dfd932f5eb946bae0e8720820d4d18d2)
@@ -1,7 +1,6 @@
+import { Article } from "./article.model";
+
 export interface OrderItem {
-  articleId: number;
-  articleName: string;
-  manufacturerName: string;
-  unitPrice: number;
+  article: Article;
   quantity: number;
 }
Index: src/app/services/order.service.ts
===================================================================
--- src/app/services/order.service.ts	(revision 871630ecbcb1724aade3ae1c42aa971e12a8107f)
+++ src/app/services/order.service.ts	(revision 9b7ced77dfd932f5eb946bae0e8720820d4d18d2)
@@ -3,5 +3,5 @@
 import { HttpClient, HttpParams } from '@angular/common/http';
 import { Observable } from 'rxjs';
-import { Article, Category, Manufacturer } from '../models';
+import { Article, Category, Manufacturer, OrderItem } from '../models';
 import { PageResponse } from '../models/page-response.model';
 import { PagedModel } from '../models/paged-model';
@@ -46,9 +46,25 @@
   }
 
-  placeOrder(orderItems: any[], proForma: boolean): Observable<any> {
-    return this.http.post(`${environment.apiUrl}/order/create-order`, {
-      orderItems,
-      proForma,
-    });
+  placeOrder(orderItems: OrderItem[], proForma: boolean): Observable<any> {
+    const createOrderPayload = {
+      orderItems: orderItems.map((it)=>({
+        article: {
+          id: it.article.id,
+          name: it.article.name,
+          manufacturer: it.article.manufacturer,
+          quantity: it.article.quantity,
+          manufacturerId: it.article.manufacturerId,
+          price: it.article.price,
+          category: it.article.category,
+          categoryId: it.article.categoryId,
+          weight: it.article.weight,
+          image: it.article.image || null
+        },
+        quantity: it.quantity
+      })),
+      proForma: proForma
+    };
+
+    return this.http.post(`${environment.apiUrl}/order/create`, createOrderPayload);
   }
 }
