Sonet CGI Premium -integraation toimintamalli
Lue lisää Sonet CGI:n Premium AI-kaupan APIsta ja miten se voi auttaa sinua parantamaan verkkokauppasi suorituskykyä ja käyttäjäkokemusta.
Sisällysluettelo
Sonet ERP:n ja AI Commercen vastuunjako
Sonet ERP -integraatio yhdistää toiminnanohjauksen tiedot AI Commerceen asiakaskohtaisesti määritellyllä tavalla. Nykyinen ydintoteutus lukee Sonetista GraphQL-rajapinnan kautta asiakkaita, tuotteita, varastosaldoja ja hinnastoja. AI Commerce käyttää Sonetin yritystunnistetta jokaisessa kyselyssä ja tunnistautuu integraatiolle määritetyillä käyttäjätunnuksella, salasanalla ja API-avaimella.
Sonet on lähtöjärjestelmä vain niille tiedoille, jotka käyttöönottosuunnitelmassa on nimetty Sonetin omistamiksi. Tuotetiedon, hinnan, varastosaldon, asiakkaan, asiakasryhmän ja tilauksen omistajuus päätetään kenttäkohtaisesti ennen siirtojen avaamista. Sama tieto ei saa päivittyä molempiin suuntiin ilman yksiselitteistä prioriteettia ja konfliktisääntöä.
Integraatio määritetään hallinnan näkymässä Integrations > Sonet ERP. Yhteys tarvitsee Sonet API -osoitteen, käyttäjätunnuksen, yritystunnisteen sekä salasanan ja API-avaimen. Salaisuuksia ei kopioida tukipyyntöön, lokiin tai artikkelin esimerkkeihin.
Nykyinen Sonet GraphQL -yhteys
Nykyinen Sonet GraphQL -yhteys lähettää HTTPS POST -pyynnön Sonetin integraatiorajapintaan ja välittää kyselyn JSON-rungossa. Pyyntö sisältää Basic-tunnistautumisen, api_key-otsakkeen ja korrelaatiotunnisteen. Sonetin virherakenne kirjataan integraatiolokiin, jos vastauksessa on errors, error, errorMessage tai errorCode.
Asiakasluku hakee asiakastunnisteen, nimen, sähköpostin, puhelimet, osoitteen ja muokkausajan. Tuoteluku voi hakea tuotekoodin, EAN-koodin, nimet, ryhmän, luokan, yksikön, myynti- ja ostohinnan, verokoodin, tuotetyypin ja muokkausajan. Varastokysely palauttaa tuotteen saldon ja laskennallisen saldon myös varastokohtaisesti. Hinnastokyselyissä ovat mukana voimassaolo, valuutta, ryhmäalennus ja tuoterivien hinnat.
Rajapinnan vastaus ei yksin todista, että kaikki palautetut kentät kirjoitetaan AI Commerceen. Käyttöönotossa erotetaan rajapinnasta luettavissa olevat kentät niistä kentistä, joille on toteutettu ja hyväksytty tallennus. Esimerkiksi nykyinen tuotteiden päivitys kirjoittaa vain olemassa olevan tuotteen tunnisteen ja suomenkielisen nimen; se ei luo puuttuvaa tuotetta eikä tallenna koko GraphQL-vastausta.
Sonet-tuotteiden muutosten synkronointi
Sonet-tuotteiden muutossynkronointi kysyy tuotteita modifiedDate-rajauksella. Nykyinen ajokerta käyttää kymmenen minuutin liukuvaa hakuväliä, normalisoi Sonetin luokan, käyttötavan ja EAN-koodin kentät ja käsittelee tulokset enintään 1 000 tuotteen erissä. Päällekkäinen hakuikkuna on tarkoituksellinen: tuotteen tunnistus tekee saman arvon uudelleenkäsittelystä vaaratonta.
Synkronointi kohdistaa Sonetin productId-arvon AI Commercen tuotteen malliin tai API-malliin. Jos vastaavaa tuotetta ei löydy, tapahtuma kirjataan virheenä eikä uutta tuotetta luoda. Löytyneeltä tuotteelta voidaan päivittää mallikoodi ja suomenkielinen nimi. Muutoksesta syntyy tuotehistoriaan Sonet-merkintä, mutta historiakirjauksen epäonnistuminen ei peru jo tehtyä tuotepäivitystä.
Ajastus ei ole sama asia kuin muutosikkuna. Minuutin välein tapahtuva Sonet-kysely oli aiemman integraatiomallin tavoite, mutta nykyinen ydinkoodi ei määritä kutsun ajastusväliä. Käyttöönotossa ajastuksen omistaja, aikavyöhyke, rinnakkaisajon esto ja hälytys sovitaan erikseen ja todistetaan käytössä olevasta ympäristöstä.
Tilausten lähetys ja jonokäsittely
Sonet-tilausten lähetys ei kuulu nykyisen ydintoteutuksen valmiisiin toimintoihin: Sonet-rajapinnan sendOrder- ja sendCustomer-toiminnot eivät kirjoita mitään. Myös tilausten, ostotilausten ja laskujen Sonet-lukutoiminnot palauttavat tällä hetkellä tyhjän vastauksen. Pelkkä Sonet-yhteyden tallentaminen ei siksi käynnistä verkkokauppatilausten tai asiakkaiden siirtoa.
Asiakaskohtainen toimitus voi toteuttaa Sonetiin päin REST-tyylisen XML-siirron, reaaliaikaisen kirjoituksen, ajastetun lähetyksen tai näiden yhdistelmän. Jos käytössä on jono, jokainen viesti säilytetään käsittelyn ajan, lähetys tahdistetaan Sonetin vastaanottokyvyn mukaan ja virhe jää uudelleen käsiteltäväksi. Minuutin vapautusväli ja palveluton AWS EventBridge- ja Lambda-arkkitehtuuri ovat mahdollisia projektiratkaisuja, eivät Sonet-vakioyhteyden oletuksia.
Suorituskykytavoitteena on aiemmin käytetty arvoa 100 verkkokauppatilausta sekunnissa. Arvo ei ole tuotantolupaus ilman kuormitustestiä, Sonetin vastaanottorajaa, jonon kapasiteettia ja virhetilanteen palautumista koskevaa hyväksyntää. Käyttöönotossa mitataan erikseen vastaanotto, jonotus, Sonetille vapautus ja päästä päähän toteutuva viive.
Tuotevarianttien mallinnus Sonetissa
Sonet-tuotevarianttien mallinnus ratkaistaan tuotetunnisteiden ja varaston omistajuuden perusteella. AI Commerce voi esittää yksinkertaisia tuotteita, konfiguroitavia tuotteita, variantteja, tuoteoptioita ja ryhmätuotteita, mutta integraatio ei saa päätellä Sonet-rakennetta pelkästä käyttöliittymän tuotetyypistä. Jokaiselle siirrettävälle vaihtoehdolle määritetään vakaa Sonet-tuotekoodi tai muu hyväksytty kohdistusavain.
Tavallisin malli antaa jokaiselle varastoitavalle variantille oman Sonet-tuotteen. Silloin Sonet voi omistaa variantin saldon, hinnan ja tunnisteet erikseen. Jos esimerkiksi kenkäkoko 43 on oma Sonet-tuote, tilausrivi kohdistetaan suoraan kyseiseen tuotteeseen eikä päätuotteen nimeen tai vapaaseen tekstiin.
Jos variantilla ei ole omaa Sonet-tuotetta, valinta voidaan välittää tilausrivin kommentissa tai lisätiedoissa, esimerkiksi Koko: 43. Tämä on asiakaskohtainen sopimus: ennen käyttöönottoa varmistetaan kentän pituus, merkistö, toistuvien valintojen muoto sekä se, pystyykö Sonet käsittelemään tiedon keräilyssä, laskutuksessa ja palautuksissa. Varianttimallin rajat määräytyvät Sonetin datan ja hyväksytyn integraatiokonfiguraation perusteella.
B2B-asiakkaat, tunnistaminen ja käyttöoikeudet
Sonet-B2B-integraatio voi käyttää Sonetin asiakastunnistetta ja segmenttiä asiakkaan kohdistamiseen AI Commercessa. Erillistä B2B-rekisteröitymislomaketta ei tarvita, jos asiakkuus tunnistetaan luotettavasti Sonetin tiedoista ja AI Commerceen luodaan tarvittava käyttäjätili. Tunnistamisen ehdot, päällekkäisten asiakkaiden käsittely ja tilin aktivointi on määritettävä käyttöönotossa.
Hintojen näkyvyys ja tilausoikeus eivät seuraa automaattisesti Sonetin segmenttinimestä. Asiakasryhmä, hinnasto ja käyttöoikeudet kohdistetaan erillisinä sääntöinä. Yksi käyttäjä voidaan esimerkiksi tunnistaa Sonetin asiakasnumerolla, liittää jälleenmyyjäryhmään ja antaa oikeus nähdä sopimushinnat, mutta tilausoikeus voidaan silti rajata organisaatioroolin perusteella.
Kirjautuminen voidaan projektissa yhdistää ERP-tiliin tai toteuttaa niin, että Sonet-asiakkuus tunnistetaan ensin ja AI Commerce -tili luodaan sen jälkeen. Kumpikaan malli ei ole nykyisen Sonet-vakioyhteyden automaattinen ominaisuus. Tunnistautuminen, salasanavastuu, tilin sulkeminen ja henkilötietojen synkronointi hyväksytään turvallisuus- ja tietosuojakatselmuksessa ennen toteutusta.
Sonet-integraation käyttöönoton hyväksyntä
Sonet-integraation hyväksyntä alkaa rajatusta testiympäristöstä ja yhdestä tunnistettavasta tietueesta. Tarkista ensin, että Sonet ERP -yhteyden osoite, käyttäjätunnus, yritystunniste, salasana ja API-avain ovat oikean ympäristön arvoja. Tee sen jälkeen erilliset asiakas-, tuote-, varasto- ja hinnastoluvut ja tallenna pyyntöjen korrelaatiotunnisteet ilman salaisuuksia.
Tuotemuutosten koeajossa muuta Sonetissa yhden ennalta valitun tuotteen nimeä ja varmista, että ajo kohdistuu oikeaan AI Commerce -tuotteeseen. Varmista myös kääntöpuoli: tuntematon Sonet-tuotekoodi ei saa luoda tuotetta, ja muuttumaton tuote ei saa tuottaa tarpeetonta päivitystä. Tarkista lopuksi tuotehistoria ja integraatioloki.
Tilaus-, variantti- tai B2B-laajennus hyväksytään vasta, kun sen kenttäkartta, omistajuus, ajastus, virheiden uudelleenkäsittely, tunnistautuminen ja palautumismenettely on dokumentoitu. Onnistunut GraphQL-lukukoe ei todista lähtevää XML-siirtoa, jonon toimintaa, varianttirivin tulkintaa tai B2B-käyttöoikeutta. Jokainen tiedonsuunta testataan erikseen todellisella mutta turvallisella koeviestillä.