> ## Documentation Index
> Fetch the complete documentation index at: https://www.twicecommerce.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Automaattinen keräily

> Miten TWICE Commerce kohdistaa varastoartikkelit tilauksiin automaattisesti palvelusijainnin keräilysääntöjen perusteella.

<Frame caption="Työnkulut">
  <img src="https://mintcdn.com/twicecommerce/lZhc_tO8u1u_bL0Q/images/workflows.webp?fit=max&auto=format&n=lZhc_tO8u1u_bL0Q&q=85&s=1799912ecc09f71e36a801fcc5e1f46d" alt="Työnkulut-näkymä, jota käytetään automaattiseen keräilyyn" width="1920" height="1080" data-path="images/workflows.webp" />
</Frame>

## Määritelmä

Automaattinen keräily kohdistaa jokaiselle saapuvalle tilausriville vapaan [varastoartikkelin](/docs/fi/concepts/inventory/stock-item-state) heti tilauksen luonnin yhteydessä. Kun toiminto on käytössä palvelusijainnilla, järjestelmä valitsee varastoartikkelin kyseisen sijainnin varastosta ilman että henkilökunnan tarvitsee valita sitä käsin. Automaattinen keräily on edellytys suurivolyymisille verkkokanaville: jokaisella saapuvalla varauksella on jo varastoartikkeli kiinni, ja se on valmis valmisteltavaksi.

## Missä tätä käytetään?

* Suurivolyymiset verkkokaupat, joissa varastoartikkelin valinta käsin ei ole käytännöllistä
* Itsepalvelu- ja miehittämättömät noutopisteet
* Usean sijainnin toiminta, jossa oletussijainnin tulee ottaa tilaukset ensin
* Työnkulut, jotka edellyttävät varastoartikkelin kohdistusta jo tilauksen luonnissa
* Tilauksen luonnin ja keräilyvalmiin tilauksen välisen ajan lyhentäminen

## Keskeiset ominaisuudet

Automaattinen keräily määritetään [palvelusijainti](/docs/fi/concepts/admin/locations)kohtaisesti kohdassa **Asetukset → Service locations → \[Sijainti] → Fulfillment**. Määrityksessä on kolme kerrosta:

| Asetus                                                                                      | Mitä se tekee                                                                                                                     |
| :------------------------------------------------------------------------------------------ | :-------------------------------------------------------------------------------------------------------------------------------- |
| **Order fulfillment** (`orderFulfillmentEnabled`)                                           | Pääkytkin — osallistuuko tämä sijainti lähtevään keräilyyn?                                                                       |
| **Order returns** (`orderReturnsEnabled`)                                                   | Pääkytkin — ottaako tämä sijainti vastaan palautuksia?                                                                            |
| **Use specific rules** (`orderFulfillmentUseSpecificRules`, `orderReturnsUseSpecificRules`) | Päällä ollessaan säännöt vaihtelevat ostotyypeittäin. Pois päältä ollessaan yksi sääntö koskee kaikkea.                           |
| **Auto-assign** (`useAutoAssign`)                                                           | Päällä ollessaan varastoartikkelit valitaan automaattisesti tilauksen luonnissa. Pois päältä ollessaan henkilökunta kohdistaa ne. |

### Keräilytavat sääntöä kohti

Jokaisessa keräily- tai palautussäännössä voi ottaa käyttöön yhden tai useamman keräilytavan:

| Tapa                | Kenttä                 | Kuvaus                                                   |
| :------------------ | :--------------------- | :------------------------------------------------------- |
| **In-store pickup** | `inStoreEnabled`       | Asiakas noutaa tuotteen sijainnista.                     |
| **Shipping**        | `shippingEnabled`      | Kuljetusliikkeen lähetys sijainnista tai palautus sinne. |
| **Local delivery**  | `localDeliveryEnabled` | Kauppias toimittaa tai noutaa itse.                      |

### Ostotyyppikohtaiset säännöt

Kun **Use specific rules** on käytössä, jokaiselle [ostotyypille](/docs/fi/concepts/orders/order-types) on oma sääntöjoukkonsa:

* **Booking** (`booking`) — vuokratilauksille
* **Purchase** (`sale`) — myyntitilauksille
* **Subscription** — kestotilauksille
* **Buyback** — takaisinostotilauksille

Varasto voi hyväksyä kaikki neljä; keskustan näyttelytila voi hyväksyä vain noudon myymälästä ostotyypeille Booking ja Purchase.

## Suhteet

* **Palvelusijainti** → omistaa keräily- ja palautusmääritykset.
* **Varastoartikkelit** → varastopooli, josta automaattinen kohdistus poimii. Vain vastaavassa sijainnissa olevat ja listauksen varianttia vastaavat artikkelit kelpaavat.
* **Tilausrivit** → luonnissa jokaiseen riviin liitetään yksi tai useampi varastoartikkeli, jos automaattinen kohdistus on aktiivinen.
* **Työnkulut** → voivat reagoida keräilytapahtumiin (kohdistus, nouto, palautus) — katso [Työnkulut](/docs/fi/workflows).
* **Kanavat** → palvelusijainnin voi rajata tiettyihin myyntikanaviin kentillä `salesChannelAdmin` ja `salesChannelOnline`.

## Elinkaari

### Mikä käynnistää automaattisen keräilyn

Automaattinen keräily suoritetaan, kun tilaus luodaan ja vähintään yhdellä palvelusijainnilla on:

1. `orderFulfillmentEnabled = true`
2. `useAutoAssign = true`
3. Sääntö rivitiedon ostotyypille, jossa on vähintään yksi keräilytapa käytössä
4. Vapaita varastoartikkeleita, jotka vastaavat rivitiedon tuotetta ja varianttia

Jos useampi sijainti täyttää ehdot, järjestelmä valitsee ensimmäisen osuman sijaintien järjestyksen mukaan. Jos mikään sijainti ei täytä ehtoja, rivitieto luodaan ilman kohdistettua varastoartikkelia ja se näkyy tilassa **Keräämättä**, kunnes henkilökunta kohdistaa artikkelin.

### Vaihe vaiheelta

<Steps>
  <Step title="Tilaus saapuu">
    Asiakas tekee tilauksen verkossa, tai tilaus luodaan API:n tai hallintapaneelin kautta.
  </Step>

  <Step title="Kelpoiset sijainnit listataan">
    TWICE etsii palvelusijainnit, joilla on `orderFulfillmentEnabled` ja kyseisen kanavan lippu (`salesChannelOnline` tms.) asetettuna.
  </Step>

  <Step title="Säännöt täsmätään">
    Jokaisen rivitiedon kohdalla järjestelmä lukee rivin `purchaseType`-arvoa vastaavan säännön. Rivi etenee vain, jos säännössä on vähintään yksi keräilytapa käytössä.
  </Step>

  <Step title="Automaattinen kohdistus valitsee varastoartikkelin">
    Jos `useAutoAssign` on päällä, TWICE valitsee sijainnin varastosta vapaan varastoartikkelin, joka vastaa rivitiedon tuotetta ja varianttia pyydetyllä vuokra-ajalla.
  </Step>

  <Step title="Tilaus tallennetaan">
    Varastoartikkeli liitetään rivitietoon keräilytilassa `pending` — kohdistettuna, mutta yhä vaihtologiikan korvattavissa. Tilaustason koontitila pysyy arvossa **Keräämättä**, kunnes henkilökunta valmistelee tai luovuttaa artikkelit.
  </Step>
</Steps>

### Keskeiset toimintaperiaatteet

* **Automaattinen kohdistus on sijaintikohtainen.** Varasto voi kohdistaa automaattisesti, kun taas näyttelytila pysyy manuaalisena.
* **Säännöt ovat ostotyyppikohtaisia.** Sijainti voi hyväksyä noudon myymälästä varauksille mutta vaatia keräilyn ostoille.
* **Keräilyt ja palautukset määritetään erikseen.** Keräilyn käyttöönotto ei ota palautuksia automaattisesti käyttöön. Sijainti voi lähettää tilauksia ottamatta samaan aikaan vastaan palautuksia.
* **Ei keräilytapaa = ei automaattista kohdistusta.** Järjestelmä vaatii vastaavaan sääntöön vähintään yhden arvon `inStoreEnabled`, `shippingEnabled` tai `localDeliveryEnabled`. Automaattisen kohdistuksen käyttöönotto ilman sääntöjä jättää tilaukset ilman keräilytapaa.
* **Ei vapaata varastoartikkelia = toimittamatta.** Automaattinen kohdistus ei koskaan ylivarasta. Jos pooli on tyhjä pyydetyllä ajanjaksolla, rivi jää toimittamatta ja henkilökunnan on puututtava asiaan.

### Kanavakohtainen toiminta

Palvelusijainneilla on kanavakohtaiset liput. Automaattinen keräily noudattaa niitä:

| Lippu                | Milloin tarkistetaan                |
| :------------------- | :---------------------------------- |
| `salesChannelAdmin`  | Hallintapaneelissa luodut tilaukset |
| `salesChannelOnline` | Verkkokaupan tilaukset              |

Sijainti, jolla on vain `salesChannelOnline = true`, ei koskaan toimita automaattisesti hallintapaneelissa luotuja tilauksia.

## Usein kysytyt kysymykset

<AccordionGroup>
  <Accordion title="Mitä tapahtuu, kun otan automaattisen kohdistuksen käyttöön ilman keräilysääntöjä?">
    Tilaukset luodaan ilman keräilytapaa ja ne jäävät tilaan **Keräämättä**. Määritä aina vähintään yksi keräilytapa (nouto myymälästä, keräily tai paikallinen keräily) sääntöön jokaiselle ostotyypille, jota kyseisessä sijainnissa tuetaan.
  </Accordion>

  <Accordion title="Voivatko eri sijainnit toimittaa saman tilauksen?">
    Yksittäinen tilausrivi kohdistetaan yhteen varastoartikkeliin yhdessä sijainnissa. Saman tilauksen eri rivitiedot voidaan toimittaa eri sijainneista. Valinta on rivikohtainen, ei tilauskohtainen.
  </Accordion>

  <Accordion title="Miksi tilaukselleni ei tullut automaattista kohdistusta?">
    Yleisimmät syyt: vastaavalle ostotyypille ei ole sääntöä, kaikki säännön keräilytavat ovat pois päältä, sijainnin kanavalippu ei vastaa tilauksen kanavaa, pyydetylle ajanjaksolle ei ole vapaita varastoartikkeleita, tai `useAutoAssign` on pois päältä sijainnilla.
  </Accordion>

  <Accordion title="Voinko toimittaa palautukset automaattisesti samalla tavalla?">
    Palautukset käyttävät **Order returns** -osiota, jonka rakenne on sama (ostotyyppikohtaiset säännöt ja tapakohtaiset kytkimet). Palautuksille ei ole erillistä automaattista kohdistusta — kun artikkeli palautuu, se täsmätään olemassa olevaan tilausriviin sen sijaan, että se poimittaisiin varastosta.
  </Accordion>

  <Accordion title="Noudattaako automaattinen keräily peruutusehtoja?">
    Automaattinen keräily tapahtuu ennen kuin peruutusehdot tulevat ajankohtaisiksi. Jos tilaus peruutetaan myöhemmin, kohdistettu varastoartikkeli vapautetaan takaisin varastoon riippumatta siitä, miten se alun perin kohdistettiin.
  </Accordion>
</AccordionGroup>

## Kehittäjäviite

Automaattisen keräilyn säännöt sijaitsevat API:n `service-locations`-resurssissa.

<Card title="API: Service Locations" icon="code" href="https://server.twicecommerce.com/api/internal">
  Avaa päätepiste API-referenssissä.
</Card>

## Aiheeseen liittyvää

<CardGroup cols={2}>
  <Card title="Tilauksen elinkaari" icon="rotate" href="/docs/fi/concepts/orders/order-lifecycle">
    Miten tilaukset etenevät tilasta toiseen luonnista valmistumiseen.
  </Card>

  <Card title="Tilaustyypit" icon="tags" href="/docs/fi/concepts/orders/order-types">
    Vuokra-, myynti-, kesto- ja takaisinostotilaukset.
  </Card>

  <Card title="Varastoartikkelin tila" icon="box" href="/docs/fi/concepts/inventory/stock-item-state">
    Miten varastoartikkelit liikkuvat kohdistuksen ja vapautuksen yhteydessä.
  </Card>

  <Card title="Palvelusijainnit" icon="building" href="/docs/fi/concepts/admin/locations">
    Missä keräilysäännöt sijaitsevat.
  </Card>
</CardGroup>
