diff --git a/api/purchase.go b/api/purchase.go
index d142ed1237e6cef6c3bdbeda3a528f98cc031385..9c8864f97bd51b0cc80b06cfad430954a1785127 100644
--- a/api/purchase.go
+++ b/api/purchase.go
@@ -12,8 +12,8 @@ import (
 type Purchase struct {
 	gorm.Model    `json:"-"`
 	TransactionID int     `json:"-" gorm:"column:transaction"`
-	ProductCode   int     `json:"product" gorm:"column:product"`
-	Product       Product `gorm:"foreignKey:ProductCode;references:Code"`
+	ProductCode   int     `json:"code" gorm:"column:product"`
+	Product       Product `json:"product" gorm:"foreignKey:ProductCode;references:Code"`
 	Price         int     `json:"price"`
 	Ammount       int     `json:"ammount"`
 }
@@ -32,7 +32,7 @@ func (a *api) AddPurchase(num int, w http.ResponseWriter, req *http.Request) {
 		err = a.db.Where("code = ?", p.ProductCode).First(&product).Error
 		if err != nil {
 			log.Printf("Can't get product %d: %v", p.ProductCode, err)
-			w.WriteHeader(http.StatusBadRequest)
+			w.WriteHeader(http.StatusNotAcceptable)
 			return
 		}
 
@@ -44,7 +44,7 @@ func (a *api) AddPurchase(num int, w http.ResponseWriter, req *http.Request) {
 	err = a.db.Where("num = ?", num).Find(&member).Error
 	if err != nil {
 		log.Printf("Can't find member %d: %v", num, err)
-		w.WriteHeader(http.StatusBadRequest)
+		w.WriteHeader(http.StatusNotAcceptable)
 		return
 	}
 	if member.Balance < total {
@@ -57,7 +57,7 @@ func (a *api) AddPurchase(num int, w http.ResponseWriter, req *http.Request) {
 		Update("balance", gorm.Expr("balance - ?", total)).Error
 	if err != nil {
 		log.Printf("Can't update update member balance %d-%d: %v", num, total, err)
-		w.WriteHeader(http.StatusBadRequest)
+		w.WriteHeader(http.StatusNotAcceptable)
 		return
 	}
 
diff --git a/src/purchase/Purchase.js b/src/purchase/Purchase.js
index 1969d53a2f9b905b66324bed34c0e5b8ec0c6c6c..5d6b94b6128c2604f89fa0b1067da845a54c41ba 100644
--- a/src/purchase/Purchase.js
+++ b/src/purchase/Purchase.js
@@ -73,7 +73,7 @@ class Purchase extends React.Component {
         this.setState({isLoading: true, error: null, noMoney: false});
         const body = JSON.stringify(this.state.purchase.map(p => {
             return {
-                product: parseInt(p.code),
+                code: parseInt(p.code),
                 ammount: parseInt(p.ammount)
             };
         }));
diff --git a/src/purchase/ShowPurchase.js b/src/purchase/ShowPurchase.js
index 1002c33acf5f4ae9d1163ba0d762ff8c12e17074..5d8e49d8bc438ac8e8c58494fc557fc5dd2b70de 100644
--- a/src/purchase/ShowPurchase.js
+++ b/src/purchase/ShowPurchase.js
@@ -8,14 +8,13 @@ function ShowPurchase() {
     const { id } = useParams();
     const [purchase, setPurchase] = useState(0);
 
-    console.log(purchase)
     let entries;
-    if (purchase.products) {
-        entries = purchase.products.map(p => {
+    if (purchase.purchase) {
+        entries = purchase.purchase.map(p => {
             return (
-                <tr key={p.product}>
-                    <td>{p.product}</td>
-                    <td>{p.Product.name}</td>
+                <tr key={p.code}>
+                    <td>{p.code}</td>
+                    <td>{p.product.name}</td>
                     <td>{printMoney(p.price)}€</td>
                     <td>{p.ammount}</td>
                 </tr>
@@ -24,7 +23,7 @@ function ShowPurchase() {
     }
 
     return (
-        <Fetcher url={"/api/purchase/"+id} onFetch={setPurchase} >
+        <Fetcher url={"/api/transaction/"+id} onFetch={setPurchase} >
             <Table striped bordered hover>
                 <thead>
                     <tr>