Nedan hittar du information om hur du utvecklar Shoporama Apps
Sammantaget ger en Shoporama-app tillgång till två saker när en användare installerar den i sin butik:
Vem som helst kan skapa appar, men för att andra butiker ska kunna använda dina appar måste du bli godkänd.
Appar skapas på den här sidan.
Ladda ner vår e-conomic-app för att se ett exempel på en app som använder vårt restgränssnitt.
Inställningsalternativen för appar är
Fält | Innehåll |
---|---|
Namn | Kort namn. Används i översikter och e-postmeddelanden. |
Beskrivning | Längre beskrivning av vad din app gör. Det är inte möjligt att använda HTML-koder. Endast a-taggar för länkar. |
Kategori | Valfri kategori |
Tillgång till | Eftersom din app skapar en api-token i den butik som installerar appen kan du välja om du vill ha skriv-, läs- eller alla rättigheter till den api-token. |
Pris per månad | Ett månadspris som din app kostar. En 80/20-delning görs, där Shoporama behåller 20% och betalar ut resten. När en app har övergått till aktiv kan du inte längre höja priset. Endast nedåt. |
URL för återuppringning |
En URL som kan ta emot alla callbacks och events. Argumentet { "webshop_id": 1, "webshop_url": "https://www.example.com/", "app_token": "dcbfe5ad9e8af3495ca4582e364c1bce", "app_token_daily_limit": 10000, "app_token_current_usage": 200, "installed": 1692857535, "fields": { } } Om din app använder fält där användaren kan ange information kommer detta att inkluderas i För events och webhooks kommer anropet att innehålla de data som finns i våra events och webhooks. Dessa varierar beroende på om det är händelser eller produkter, order etc. För att validera om en återuppringning kommer från Shoporama lägger vi till rubriken |
Endast tillåtet i följande butiker | Möjlighet att endast tillåta appen på ett antal webbshoppar. |
Webhooks | Här väljer du vilka webhooks du vill ta emot. Du kan ta emot webhooks när ändringar görs i order (status, betald, skapad), produkter eller lager. |
Händelser |
Här väljer du vilka händelser du vill ta emot. Händelser har möjlighet att skickas oftare än webhooks, till exempel när en användare lägger till något i korgen eller går till kassan. Vi har följande events:add_to_basket , update_basket , view_basket, view_address , view_shipping ,view_approve , view_thanks , approved , order_created , paid , add_label och remove_label . |
När en app installeras i en butik skapas en api-nyckel för appen och med den nyckeln kan du komma åt vårtrestgränssnitt för butiken i fråga. Api-nycklar skickas till din callback-url som fältetapp_token
. Observera att samma regler gäller för api-åtkomst som för vanliga api-nycklar när det gäller användning.
Förutom att få tillgång till vårt vanliga restgränssnitt är det möjligt att få en lista över webbshoppar som har installerat din app genom att ringa:
GET /REST/app-status HTTP/2 Host: www.shoporama.dk Authorization: App {din token}
Observera att auth-scheme är App.
Det är möjligt att infoga kod på fyra ställen på de butiker som installerar appen. Dessa är efter <head>,
efter <body>,
före </head>
och före</body>
.
De förutsätter dock att dessa html-element finns i den butik som installerar den. Det är möjligt att infoga kod på alla sidor, eller bara produkter, landningssidor, kategorier, statiska sidor, blogginlägg, eller på /search, /basket, /address, /shipping, /approve, /thanks, /order och /also.
Det är enkelt att använda Smarty-kod i den inklistrade koden och det är möjligt att komma åt de värden som användaren har angett i fält som <{$app_vars.var_name}>.
Ovanstående kan kombineras på vilket sätt du vill, så det går att infoga en kodbit i <head>
på alla sidor, men på /thanks vill du lägga till något extra.
Med Fields kan du skapa några inmatningsfält som dina användare ska fylla i när de installerar appen. Du kan skapa så många fält du vill. Värdena inkluderas i callbacks när användaren uppdaterar inställningarna.
Vi stöder följande fälttyper: text
, heltal
, boolean
, lista
,färg
, richtext
, kod
.
För listor är det möjligt att använda externa listor. Det vill säga, när användaren ser admin hämtas värdena frånhttps://example.com/callback?type=field&name={name}
och den sidan ska returnera json i nyckel:värde
-format.
Till exempel
{ "key1": "value1", "key2": "value2" }