Dokumentasjon

Integrasjoner

Shopify med en egendefinert app

Koble en Shopify-butikk til AmICited med din egen egendefinerte app fra Shopify Dev Dashboard i stedet for App Store-appen: scopes, Client ID og secret, og begrensningene.

Den vanlige måten å koble til Shopify på er FlowHunt-appen fra Shopify App Store (se nettbutikker). Hvis du ikke vil ha en offentlig app i butikken, eller butikkens retningslinjer blokkerer installasjoner fra App Store, kan du koble til med en egendefinert app (custom app) som du selv oppretter i Shopify Dev Dashboard.

Når den er koblet til, fungerer en egendefinert app på samme måte som en installasjon fra App Store: importtilbudet, innlastingen av historiske ordrer og produkter, Eshop-rapportene, lenkebygging og CMS-et.

Nettbutikkintegrasjoner er tilgjengelige fra Pro-planen, og bare arbeidsområdets administratorer kan koble dem til.

Før du begynner#

  • Bruk butikkens egen Shopify-organisasjon. Appen må tilhøre samme Shopify-organisasjon som butikken. Et byrå kan ikke bruke sin egen app på en kundes butikk, så kunden må opprette appen.
  • Kortbetaling. Arbeidsområder som faktureres gjennom Shopify, kan ikke bruke en egendefinert app. Bytt planen til kortbetaling først.
  • Shopify-tillatelser. Du må kunne opprette apper i butikkens Dev Dashboard (som butikkeier, eller med en ansattkonto som har lov til å utvikle apper).

Opprett appen i Shopify#

  1. Åpne App development i Shopify-admin

    I Shopify-admin klikker du Settings, deretter Apps, deretter Develop apps, og så Build apps in Dev Dashboard. Du kan også gå rett til Shopify Dev Dashboard og logge inn med kontoen som eier butikken.

    Startsiden i Shopify-admin med Settings nederst til venstre i menyen
    Settings i Shopify-admin med Apps i menyen
    Appinnstillinger i Shopify-admin med knappen Develop apps
    Siden App development med knappen Build apps in Dev Dashboard
  2. Opprett appen

    I Dev Dashboard åpner du Apps og klikker Create app. Hvis organisasjonen din allerede har apper, klikker du Create app øverst til høyre og velger Create app manually.

    Siden Apps i Shopify Dev Dashboard
    Lenken Create app under Get API credentials i Dev Dashboard
  3. Fyll ut appen og scopene

    • App name (1): hva som helst du kjenner igjen, for eksempel «AmICited».
    • App URL (2): https://app.flowhunt.io/. Fjern haken for Embed app in Shopify admin; appen har ingen egen skjerm inne i Shopify.
    • Allowed redirection URL(s): la feltet stå tomt. AmICited logger inn med appens Client ID og Client secret, så Shopify sender aldri tilbake til den. La Use legacy install flow være uten hake.
    • Scopes (3, under API access): lim inn denne listen. Dette er scopene App Store-appen ber om, så den egendefinerte appen får alle AmICited-funksjoner bortsett fra ordrehistorikk eldre enn 60 dager (se nedenfor):
    text
    read_orders,write_orders,read_products,write_products,read_customers,write_customers,read_inventory,write_inventory,read_locations,write_price_rules,read_content,write_content,read_themes,write_themes,read_locales

    La Webhooks API version være som den er.

    Skjemaet Create an app i Dev Dashboard med App name, URL-er, Scopes og Webhooks API version

    Vil du heller krysse av i bokser enn å lime inn? Klikk Select from list over feltet Scopes, søk etter hvert scope i listen ovenfor (1), kryss av for det og klikk Done (2).

    Lenken Select from list over feltet Scopes
    Dialogen Select scopes med søkefeltet og knappen Done
  4. Opprett appen

    Når navn, URL og scopes er fylt ut, klikker du Create app øverst til høyre i skjemaet (4 i skjermbildet av skjemaet ovenfor). Shopify oppretter appen og publiserer den første versjonen.

    Knappen Create app øverst til høyre i skjemaet Create an app
  5. Sjekk at versjonen er aktiv

    Åpne Versions i appmenyen: den første versjonen er merket Active. Hvis du endrer scopene senere, klikker du Create version slik at endringen trer i kraft.

    Siden Versions i Dev Dashboard med den første versjonen merket Active
  6. Sett distribusjonen til egendefinert

    En egendefinert app må begrenses til din egen butikk før den kan installeres der.

    1. I appens Overview klikker du kortet Distribution (Manage custom install link). Shopify åpner Partners Dashboard; hvis du blir spurt, velger du kontoen du bruker for butikken.
    2. Velg Custom distribution (1) og klikk Select (2). Shopify lar deg ikke endre distribusjonsmetoden senere.
    3. Under Store domain skriver du inn butikkens your-store.myshopify.com-adresse (1; se Finn butikkadressen nedenfor) og klikker Generate link (2). Allow multi-store install for one Plus organization har bare betydning hvis butikken tilhører en Shopify Plus-organisasjon med flere butikker.
    Appens Overview i Dev Dashboard med kortet Distribution
    Kontovelgeren i Shopify for Partners Dashboard (sløret)
    Siden Distribution med Custom distribution og knappen Select
    Skjemaet Custom distribution med feltet Store domain og knappen Generate link
  7. Installer appen i butikken

    Appen kan ikke lese noe før den er installert i butikken.

    1. Åpne appens Overview i Dev Dashboard og klikk Install app øverst på kortet Installs. I noen dashbord heter denne knappen Test app, som i skjermbildet nedenfor. Du kan også åpne ⋯-menyen på appens rad i Apps-listen og velge Install app.
    2. Velg butikken du vil koble til.
    3. Gå gjennom tilgangen appen ber om, og klikk Install.
    Appens Overview i Dev Dashboard med knappen Test app under Installs
    Butikkvelgeren i Shopify med butikken appen skal installeres i
    Skjermen Update data access i Shopify-admin med knappen Install

    Skjermen advarer om at «This app hasn’t been reviewed». Det er som forventet: det er din egen app, ikke en fra App Store.

  8. Kopier Client ID og Client secret

    Åpne appens Settings i Dev Dashboard. Under Credentials kopierer du Client ID og Client secret (bruk kopieringsknappene ved siden av hvert felt). Behandle secret som et passord.

    Appens menypunkt Settings i Dev Dashboard
    Delen Credentials med Client ID (sladdet)
    Delen Credentials med Client secret

Egendefinerte apper importerer ordrer fra de siste 60 dagene

Shopify returnerer bare ordrer eldre enn 60 dager til apper som har scopet read_all_orders, og Dev Dashboard avviser det for en egendefinert app («Contains invalid scopes: read_all_orders»). En tilkobling med egendefinert app importerer derfor ordrer fra de siste 60 dagene, og Eshop-rapportene starter der. Importtilbudet kan fortsatt tilby lengre historikk, men selve importen stopper ved 60 dager. Hvis du trenger hele ordrehistorikken, kobler du heller til med App Store-appen.

Koble den til i AmICited#

  1. Finn butikkadressen

    Åpne Settings i Shopify-admin. Butikkadressen (your-store.myshopify.com) vises under butikknavnet øverst i menyen.

    Settings i Shopify-admin med myshopify.com-adressen under butikknavnet (sladdet)
  2. Åpne Shopify-dialogen

    Gå til Data Sources, klikk Connect Shopify Store under Eshops, og klikk deretter Use a custom app instead (1 i skjermbildet nedenfor).

  3. Skriv inn butikken og legitimasjonen

    Skriv inn Store address, Client ID og Client secret (2), og klikk deretter Connect store (3).

    Shopify-dialogen med Use a custom app instead og feltene Store address, Client ID og Client secret
  4. Velg domenet og bekreft importen

    Koble butikken til et domene og velg hvor mye ordrehistorikk som skal importeres, på samme måte som for en installasjon fra App Store. Hvert alternativ viser forventet antall rader og engangskostnaden før du bekrefter.

Deretter setter du opp kundedata og butikkinnstillinger på samme måte som for alle andre butikker.

Slik skiller en egendefinert app seg#

Hvorfor brukes ikke lenkene på nytt med en gang jeg redigerer et produkt?

Egendefinerte apper får ikke Shopify-webhooks, så når du redigerer et produkt eller en side i Shopify, bruker ikke lenkebygging lenkene på nytt med en gang. De brukes igjen neste gang regelen kjører.

Hva skjer hvis appen slettes eller avinstalleres?

Tilkoblingen stopper innen omtrent ett døgn, og arbeidsområdet får et varsel. For å koble til på nytt åpner du den samme dialogen, velger Update credentials og skriver inn appens gjeldende Client ID og Client secret.

Hvorfor går importen bare 60 dager tilbake?

Eldre ordrer krever Shopify-scopet read_all_orders, og Dev Dashboard godtar det ikke for en egendefinert app. En tilkobling med egendefinert app importerer derfor ordrer fra de siste 60 dagene, og nye ordrer fortsetter å komme inn fra da av. For hele historikken bruker du App Store-appen.

Kan et byrå bruke én app for alle kundene sine?

Nei. Appen må tilhøre samme Shopify-organisasjon som butikken, så hver kunde oppretter sin egen app.

Relatert#