# Webbeställning med automatisk tillverkning

{% hint style="success" %}
Denna funktion är tillgänglig i planen **GKS4 Pro**.
{% endhint %}

Externa system som webbshoppar, kundportaler och säljkanaler kan skapa försäljningsorder direkt i GKS via [API](/api.md). Om en orderrad refererar till ett artikelnummer kopplat till en produktmall skapas tillverkningsorder automatiskt.

### Översikt av flödet

1. Externt system skickar beställning till GKS via API.
2. GKS skapar försäljningsordern.
3. Vid orderläggning identifieras artikelnummer på orderraderna.
4. För varje rad vars artikel har en produktmall:
   * kopieras mallen till en ny produkt
   * produkten knyts till orderraden
   * ett arbetsordernummer tilldelas
5. Order, produkt och arbetsorder är klara att hantera i GKS.

### Fältmappning

Några av de mest väsentliga fälten och hur de hanteras i GKS.

| Public API-fält                   | Försäljningsorder                                                | Exempel               |
| --------------------------------- | ---------------------------------------------------------------- | --------------------- |
| `OrderTitle`                      | <p>Orderbenämning<br>("<em>Webshop orde</em>r" om utelämnat)</p> | Webshopp order #15801 |
| `PurchaseOrderNumber`             | Inköpsnummer (normalt ordernr från webbshop)                     | 15801                 |
| `SalesOrderlines[].ArticleNumber` | Artikelnummer på orderrad                                        | VV00123               |
| `SalesOrderlines[].Description`   | Orderradens benämning                                            | Car manual 123        |
| `SalesOrderlines[].Quantity`      | Antal                                                            | 500                   |
| `SalesOrderlines[].UnitPrice`     | À-pris                                                           | 2,94                  |

#### Artikelnummer i Description

Om `ArticleNumber` skickas tomt men `Description` börjar med ett ord som matchar ett befintligt artikelnummer, kopieras det automatiskt till `ArticleNumber`-fältet. `Description` lämnas oförändrad.

Det innebär att ett externt system kan skicka in raden som t.ex. `"ART-123 Visitkort 90x55"` utan att fylla `ArticleNumber` separat. GKS plockar `ART-123` och behåller hela texten som radbenämning.

Det kan vara en fördel att ha med artikelnummer även i radbenämningen, eftersom detta då följer med till produktens benäming och därmed även arbetsorder.

### Automatisk tillverkningsorder

För att en tillverkningsorder ska skapas krävs:

* Orderraden har ett artikelnummer
* Artikeln finns i artikelregistret
* Artikeln är kopplad till en produktmall

En orderrad måste inte komma in via API, utan det går lika bra att lägga upp en order manuellt.

Vid tillverkningsordergenereringen:

* Produkten klonas från mallen.
* **Produktbenämning** sätts till orderradens `Description` (faller tillbaka till mallens namn om Description saknas).
* **Upplaga** sätts till orderradens kvantitet.
* **Specifikationsspråk** sätts från orderns språkkod.
* Internt arbetsordernummer tilldelas raden.

Saknas produktmall för artikeln skapas ingen tillverkningsorder. Då ligger raden kvar som vanlig orderrad utan produkt.

### Visning på arbetsorder och faktura

| Arbetsorder visar | Källa                     |
| ----------------- | ------------------------- |
| Orderbenämning    | `OrderTitle`              |
| Produktbenämning  | Orderradens `Description` |
| Inköpsnummer      | `PurchaseOrderNumber`     |

| Faktura/fakturarad                          | Källa                     |
| ------------------------------------------- | ------------------------- |
| Ert ordernummer (Fortnox `YourOrderNumber`) | `PurchaseOrderNumber`     |
| Fakturaradens benämning                     | Orderradens `Description` |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs4.simutek.se/api/webbestallning-med-automatisk-tillverkning.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
