Tilgjengelig i Gdańsk

WooCommerce Utvikler i Gdańsk

Vi bygger sikre og høyytelses WordPress-løsninger for virksomheter i Gdańsk, tilpasset lokale markedsbehov.

WooCommerce Utvikler → Gdańsk

Vi støtter WordPress-miljøet i Gdańsk

Vi er ikke bare et fjernbyrå. Vi er en aktiv del av økosystemet. Vi tror på Open Source og bidrar tilbake til fellesskapet som driver over 40 % av nettet (W3Techs).

Lokal kontekst: Skalerbar arkitektur, høye sikkerhetsstandarder og enterprise-integrasjoner tilpasset kravene i det lokale markedet.

WordPress & WooCommerce Utvikler i Gdańsk

01. Lokal SEO-ytelse

I det konkurranseutsatte markedet i Gdańsk er sidehastighet ditt sterkeste SEO-fortrinn. Vår Astro + Headless WP-stack leverer ytelse som etterlater konkurrentene.

02. Enterprise-sikkerhet

For bedrifter i Gdańsk som betjener Logistikk, maritim og IT-tjenester, er datasikkerhet avgjørende. Headless-arkitektur eliminerer praktisk talt standard WordPress-angrepsvektorer.

En WooCommerce-butikk som selger til polske kunder må håndtere tre ting som ikke står i standarddokumentasjonen til Woo: BLIK i kassen, MVA på 23 prosent regnet riktig, og frakt via InPost-pakkebokser eller DPD med sporing kunden faktisk forventer. Vi bygger og rydder opp i WooCommerce for bedrifter i Gdańsk med utgangspunkt i nettopp disse kravene, ikke en generisk mal som siden lokaliseres med bynavn.

Przelewy24 og PayU har hovedkontor i Warszawa, men det er Gdańsk som er inngangsporten til det baltiske logistikkmarkedet. En kasse uten BLIK taper konverteringer på polsk mobiltrafikk, uansett hvor pen resten av butikken er. Det er det praktiske utgangspunktet for arbeidet vårt.

#WooCommerce-utvikling i Gdańsk

Gdańsk-markedet er kresent. Polske netthandlere er vant til kjappe kasser, BLIK-knapp øverst, InPost-pakkeboks som standard leveringsvalg og tydelig pris med MVA inkludert. Arbeidet vårt handler om å få WooCommerce til å oppføre seg slik en polsk kunde forventer, og å gjøre det på en måte som overlever oppdateringer av Woo, temaet og betalingstilleggene.

#Hva vi faktisk bygger

  • BLIK via Przelewy24 eller PayU i kassen: seks-sifret kodeflyt på mobil, hurtigkasse-knapp på produkt- og handlekurvside, og test av webhooks for autorisasjon, belastning, refusjon og delvis refusjon mot testmiljø
  • Przelewy24 og PayU ved siden av hverandre der butikken trenger det, med kort (Visa/Mastercard) og bankoverføring som alternativer, riktig rekkefølge i kassen for polsk trafikk og testkort-matrise per gateway
  • MVA-oppsett for polsk handel: 23 prosent standardsats, redusert sats på næringsmidler og bøker, fritak der det gjelder, og priser vist inkludert MVA slik polske forbrukere forventer
  • OSS-håndtering for butikker som selger fra Polen til andre EU-land: MVA krevd inn ved salg over terskelen, riktig sats per destinasjonsland, og logikk rundt registreringskravet
  • Frakt med InPost, DPD og Poczta Polska: fraktsoner, prisregler basert på vekt og volum, pakkeboks som leveringsvalg med identifikator fra leverandøren, og fraktsedler/sporing koblet mot ordrebehandlingen
  • Angrerett bygget inn i flyten: retur- og angreskjema, riktig informasjon i ordrebekreftelse og e-post, slik at den lovpålagte 14-dagersfristen ikke blir en manuell jobb for kundeservice
  • Utvidelser av WooCommerce REST API for hodeløs storefront, mobilapp, POS eller integrasjon mot logistikksystemer i havne- og distribusjonsmiljøet, med autentisering og idempotente betalingsstier

#Hvorfor polske betalings- og fraktvalg styrer arkitekturen

I de fleste WooCommerce-prosjekter for Gdańsk er det ikke produktkatalogen som er vanskelig, det er kassen. BLIK oppfører seg ikke som et vanlig kortgateway: koden genereres i mobilbanken, betalingen bekreftes asynkront, og webhook-bekreftelsen krever at ordrestatus ikke settes til betalt før Przelewy24 eller PayU faktisk har bekreftet. Vi har sett butikker der ordrer ble markert fullført på redirect tilbake, ikke på webhook, slik at avbrutte BLIK-betalinger ga ordrer uten penger. Den typen feil fanges bare med ende-til-ende-QA på selve betalingsstien.

Frakt er den andre fellen. En polsk kunde forventer å velge en InPost-pakkeboks i kassen, ikke bare «standard frakt». Når dette mangler, faller konverteringen på mobil. Vi setter opp fraktsonene og leveringsvalgene som hører til det polske markedet, og kobler dem mot sporing kunden ser i e-posten.

For logistikkbedrifter i Gdańsk som selger reservedeler, verktøy eller B2B-varer til hele Østersjøregionen, kommer en tredje kompleksitet: fraktpriser som avhenger av destinasjonsland, tollmerking og ordrestatus som må synkroniseres mot et WMS eller ERP. WooCommerce er da bestillingskilden, ikke lagerstyringssystemet, og integrasjonen må reflektere det.

#Markedet og miljøet i Gdańsk

Gdańsk er Polens inngangsport til Østersjøen. Havnen i Gdańsk er den største på polsk territorium, og Trójmiasto (Gdańsk, Gdynia, Sopot) har vokst frem som et knutepunkt for logistikk, maritim industri og IT-tjenester. Olivia Business Centre og Alchemia huser hundrevis av selskaper som leverer programvare, frakt og distribusjon til hele regionen. WordUp Trójmiasto er det lokale WordPress-miljøet der utviklere møtes og deler erfaringer.

Kundene våre i Gdańsk spenner fra netthandlere som selger direkte til forbruker i hele Polen, til logistikk- og maritimes selskaper som trenger B2B-portaler med integrert fraktberegning mot Østersjø-markeder. Fellesnevneren er at de trenger en butikk som tar BLIK på alvor, regner MVA riktig og lar dem styre frakten selv, enten det gjelder InPost til Kraków eller DPD til Stockholm.

Mange av disse butikkene har vokst organisk over flere år: et tema fra en kjøpt mal, et halvt dusin tillegg som overlapper, og en kasse som er lappet sammen i takt med at nye krav dukket opp. Det fungerer helt til trafikken øker, et betalingstillegg slutter å bli vedlikeholdt, eller UODO stiller spørsmål ved samtykkehåndteringen. Da er det ikke en ny plugin som trengs, men en opprydding i arkitekturen: skille ut egen kode i en egen plugin, fjerne tillegg som dupliserer hverandre, og gjøre kassen forutsigbar igjen. Vi tar denne typen refaktorering uten å bygge alt på nytt, så lenge WooCommerce er riktig plattform for det butikken skal gjøre. Er det ikke det, sier vi det skriftlig.

#Slik jobber vi gjennom et prosjekt

  1. Kasse- og katalogrevisjon. Vi går gjennom dagens WooCommerce-butikk: produkttaksonomi, kasseflyt, aktive betalingstillegg (Przelewy24, PayU, BLIK), fraktsoner mot InPost og DPD, MVA-regler og Lighthouse-måling på de mest besøkte produkt- og kategorisidene.
  2. Plan for betaling, frakt og integrasjon. Vi dokumenterer gateway-valg og rekkefølge i kassen, fraktsoner og pakkebokslogikk, MVA- og OSS-håndtering, og koblinger mot regnskap, lager eller fulfilment. Grensen mellom Woo-kjerne, egen plugin og temakode settes her.
  3. Bygging i feature-brancher. Vi følger kodestandardene til WordPress og WooCommerce, utvider Woo via action- og filter-hooks i stedet for å endre kjernen, og tester betalings- og ordrestier underveis.
  4. QA på ordrestien. Handlekurv, kasse, betaling med testkort og test-BLIK på hver gateway, refusjon og delvis refusjon, retur etter angrerett, kunde-e-post og admin-redigering, kjørt i et testmiljø som speiler produksjon.
  5. Utrulling og overlevering. Vi deployer via en dokumentert release-prosess med testet tilbakeføring, og leverer runbook for hver gateway og hver integrasjon sammen med dokumentasjon for butikkstyrere og redaktører.

#Typiske oppdrag fra Gdańsk-butikker

  • BLIK mangler eller er feilkoblet. En logistikkbutikk markerte ordrer betalt på redirect i stedet for på webhook fra Przelewy24. Vi flyttet bekreftelsen til webhooken, la inn idempotens slik at dobbel webhook ikke ga dobbel ordre, og satte opp full testmatrise for autorisasjon, belastning og refusjon.
  • Treg kasse på mobil. En netthandler med tungt tema og mange aktive tillegg hadde flere sekunders forsinkelse før BLIK-knappen var klikkbar. Vi startet med Lighthouse, WP-CLI-profil og Query Monitor på kassesiden, fant cart-fragment-kallene og autoloadede options som var skyld i mesteparten, og fjernet flaskehalsene én etter én i stedet for å installere enda et caching-tillegg.
  • MVA og OSS regnet feil. En butikk som solgte både innenlands i Polen og til Tyskland og Sverige blandet sammen polsk MVA og OSS-reglene. Vi skilte de to flytene, satte riktig sats per produktgruppe og destinasjonsland, og fikk grenseoverskridende salg merket riktig mot rapporteringskravene.
  • InPost-pakkeboks lagret som fritekst. En butikk skrev pakkeboksnavnet inn i ordrenotatet i stedet for å lagre InPost-identifikatoren. Lageret måtte slå opp adressen manuelt. Vi flyttet valget til et eget ordrefelt, koblet det mot fraktseddelgenerering, og fjernet den manuelle jobben.

#Tekniske standarder

Vi kjører WooCommerce på PHP 8.2 eller nyere, med object caching (Redis) der trafikken forsvarer det, og CDN foran statiske ressurser. Betaling går via Przelewy24, PayU og BLIK avhengig av hva butikken trenger, alltid med 3D Secure på kort. Tunge jobber, som synkronisering mot lager, regnskap eller frakt-API-er, kjøres via Action Scheduler i bakgrunnen slik at de ikke blokkerer kassen.

#Hva du kan forvente etter lansering

Vi lover ikke faste prosenttall, fordi resultatet avhenger av utgangspunktet. Det vi leverer er en kasse som tar BLIK på alvor og bekrefter ordrer på webhook, ikke på redirect, fraktvalg som matcher det polske kunder forventer fra InPost og DPD, MVA og angrerett håndtert i selve flyten i stedet for manuelt, og en målbar forbedring i Core Web Vitals på de sidene som faktisk konverterer. Måltallene settes mot dagens nivå i revisjonen, ikke mot oppdiktede bransjegjennomsnitt.

#Sikkerhet og personvern

Hvert prosjekt får en sikkerhetsgrunnlinje: HTTPS med HSTS, Content Security Policy mot XSS, sårbarhetsskanning av avhengigheter i CI, tofaktor for administratorkontoer og testede sikkerhetskopier. Butikker som håndterer personopplysninger får GDPR-tilpasset samtykkehåndtering, databehandleravtale og personvern bygget inn i arkitekturen.

For polske nettbutikker betyr det i praksis at UODO (Urząd Ochrony Danych Osobowych) er tilsynsmyndigheten som vurderer om samtykke, informasjonsplikt og datalagring er i orden. Vi dokumenterer behandlingsgrunnlag for kundedata fra BLIK- og kortbetalinger, navn og adresse for frakt, og eventuelle markedsføringscookies. Cookie-banneret må gi reelt valg, ikke bare et «Godta alt»-knapp uten avvisning. Personvernerklæringen må nevne databehandlere (Przelewy24, PayU, InPost) og formålet med hver behandling. Dette er ikke juridisk rådgivning, men teknisk implementering av det regelverket krever.

#Ytelse, målt der det teller

Core Web Vitals påvirker både rangering og konvertering, og på en nettbutikk er det kasse-, produkt- og kategorisidene som betyr noe. Vi jobber mot lav LCP gjennom optimalisert kritisk renderingsvei og forhåndsinnlasting av hero-bilder i moderne format (WebP/AVIF), lav INP gjennom minimal JavaScript og utsatt innlasting av tredjepartsskript (inkludert betalingsskript), og stabil layout (lav CLS) gjennom faste bildedimensjoner og reservert plass for dynamisk innhold som BLIK-knappen. Vi måler kontinuerlig med Lighthouse i utrullingsløpet, slik at en regresjon blokkerer distribusjon i stedet for å nå produksjon.

#Spørsmål Gdańsk-butikker stiller oss

Setter dere opp BLIK i kassen? Ja. Vi integrerer BLIK via Przelewy24 eller PayU, med seks-sifret kodeflyt på mobil, og tester autorisasjon, belastning, refusjon og delvis refusjon mot testmiljø før lansering. Bekreftelse av betaling skjer på webhook, ikke på redirect tilbake til butikken.

Kan dere håndtere polsk MVA og OSS riktig? Ja. Vi setter 23 prosent standardsats og reduserte satser der de gjelder, viser priser inkludert MVA slik polske forbrukere forventer, og skiller OSS-flyten for salg til andre EU-land fra ordinær innenlands MVA.

Hvilke fraktløsninger støtter dere? InPost, DPD og Poczta Polska, med fraktsoner, prisregler etter vekt og volum, pakkeboks som leveringsvalg med identifikator fra leverandøren, og fraktsedler og sporing koblet mot ordrebehandlingen.

Endrer dere WooCommerce-kjernen? Nei. Tilpasninger går via dokumenterte action- og filter-hooks, med en klar deling mellom egen plugin og tema, slik at butikken overlever Woo-oppdateringer.

Jobber dere med butikker utenfor Gdańsk? Ja. Vi har tyngdepunktet i Trójmiasto-miljøet, men leverer til netthandlere i hele Polen og til polske butikker drevet fra utlandet.

#Integrasjoner en polsk nettbutikk faktisk trenger

En polsk nettbutikk på WooCommerce ender som regel opp med de samme fire koblingene: betaling med Przelewy24, PayU og BLIK, frakt med InPost og DPD inkludert pakkebokser, regnskap i Comarch, Subiekt GT eller Fakturownia, og en ordrestatus som settes av serveren til leverandøren, ikke av at kunden tilfeldigvis kommer tilbake til takkesiden. Rekkefølgen er ikke tilfeldig: hver kobling nedover i listen arver feilene fra den over hvis den første ikke er riktig bygget.

#Betaling: Przelewy24, PayU og BLIK

BLIK er en app-flyt, ikke et skjema. Integrasjonen bygges mot Przelewy24 eller PayU sitt BLIK-endepunkt. Butikken oppretter en betaling, kunden skriver inn seks-sifret kode i mobilbanken, og bekreftelsen kommer asynkront. Alt som skjer etterpå er utenfor nettleserens kontroll. Derfor implementeres gatewayen som en vanlig WC_Payment_Gateway-klasse der process_payment returnerer en redirect eller en ventetilstand, mens fullføringen skjer i callback-håndtereren. Ordren får payment_complete først når leverandøren har bekreftet.

Kort og bankoverføring går ved siden av. Przelewy24 og PayU dekker både BLIK, kort og direkte bankoverføring. To gatewayer betyr to sett med statuskoder, to refusjonsmodeller og to webhook-formater, så ordren må lagre i metadata hvilken gateway som eide betalingen og hvilken referanse den bruker. Uten dette blir refusjon fra admin et gjettespill.

HPOS må deklareres. På butikker med High-Performance Order Storage må egen plugin-kode melde kompatibilitet via FeaturesUtil::declare_compatibilitybefore_woocommerce_init, og all lesing og skriving av ordredata må gå gjennom wc_get_order og CRUD-metodene i stedet for direkte postmeta-kall. Gammel gateway-kode som skriver med update_post_meta slutter å virke uten å gi feilmelding.

#Frakt: InPost, DPD og Poczta Polska med pakkebokser

Fraktpriser hentes, de gjettes ikke. InPost ShipX og DPD API gir pris og leveringstid per produkt og postnummer. Svaret kobles inn i kassen via woocommerce_package_rates, med volumvekt regnet ut fra pakkens dimensjoner der den overstiger faktisk vekt. Svarene mellomlagres i transienter per postnummer og vektklasse, fordi kassen ikke kan vente på et eksternt kall ved hver oppdatering av handlekurven.

Pakkeboks er et eget datafelt. Kunden velger et konkret InPost-utleveringssted i kassen, og valget må lagres på ordren som en identifikator fra InPost, ikke som fritekst. Fraktsedlene genereres senere mot den identifikatoren. Skrives den som en adresse i et notatfelt, må lageret slå den opp manuelt, og fordelen ved integrasjonen forsvinner.

Tidsavbrudd krever en reserveløsning. Når frakt-API-et ikke svarer, skal kassen falle tilbake til en definert standardsats i stedet for å vise en kasse uten fraktvalg. Feilen logges via wc_get_logger med egen kilde, slik at hyppige tidsavbrudd blir synlige i WooCommerce-loggen før kundeservice oppdager dem.

Sporing hører hjemme i e-posten. Sporingsnummeret lagres på ordren og skrives inn i forsendelsesvarselet, typisk via woocommerce_email_before_order_table. Det fjerner en av de vanligste henvendelsene til kundeservice.

For logistikkbedrifter i Gdańsk som sender til hele Østersjøregionen, legger vi til destinasjonsland i fraktberegningen og skiller mellom innenlands polsk frakt og grenseoverskridende leveranse med egne prisregler og leveringstider.

#Regnskap: Comarch, Subiekt GT eller Fakturownia

Salget bokføres én gang, med riktig MVA-kode. Comarch ERP, Subiekt GT og Fakturownia har REST-API med token-basert autentisering. Integrasjonen oppretter kunde og salgsdokument, og mapper hver produktgruppe til riktig MVA-kode i stedet for å sende en flat sats. Nummeret på det opprettede dokumentet skrives tilbake på ordren, og eksistensen av dette nummeret er det som hindrer dobbeltbokføring ved en ny kjøring.

Avstemming er mot utbetaling, ikke mot ordre. Przelewy24 og PayU utbetaler samlet og trekker gebyr. Regnskapet stemmer først når integrasjonen bokfører utbetalingen som en egen post med gebyret skilt ut, ikke når hver ordre er bokført hver for seg.

B2B og offentlig sektor betyr e-faktura. Selger butikken til offentlige oppdragsgivere i Polen, skal fakturaen sendes via KSeF (Krajowy System e-Faktur), med NIP-nummer på mottakeren. Det er en egen flyt i kassen: felt for NIP, validering, og et annet dokumentløp enn forbrukersalget.

Oppbevaringsplikt og JPK. Bokføringspliktig dokumentasjon skal oppbevares i henhold til polsk regelverk, og regnskapssystemet må kunne levere JPK_VAT og JPK_FA på forespørsel fra skattemyndighetene. I praksis betyr det at butikken ikke er regnskapssystemet: WooCommerce er kilden, Comarch eller Fakturownia er arkivet, og integrasjonen må overføre nok informasjon til at arkivet er komplett uten oppslag i databasen til nettbutikken.

Synkronisering kjøres i kø. All overføring til regnskap legges på Action Scheduler med gjentatte forsøk ved feil, aldri synkront i kasseforespørselen. En regnskapstjeneste som er nede, skal forsinke bokføringen, ikke blokkere et kjøp.

#Hvorfor ordrestatus må settes server-til-server

Takkesiden er et løfte, ikke et bevis. Kunden kan miste dekning på trikkelen i Gdańsk, lukke mobilbanken, bytte til en annen app mens BLIK-betalingen fullføres, eller ha nettleseren i bakgrunnen når batteriet sparer strøm. Redirect tilbake til butikken er dermed en hendelse som kanskje skjer. Betalingsbekreftelsen fra Przelewy24 eller PayU er en hendelse som skjer uansett, og det er den ordrestatusen skal henge på.

Verifiser først, kvitter raskt, jobb etterpå. Callback-endepunktet skal først verifisere signaturen på varselet mot delt hemmelighet, deretter svare med en rask kvittering, og først etterpå gjøre det tunge arbeidet i en bakgrunnsjobb. Leverandører prøver på nytt når svaret drøyer, og et tregt endepunkt utløser dermed flere kopier av det samme varselet.

Idempotens lagres, den antas ikke. Hvert varsel har en identifikator. Den lagres når hendelsen er behandlet, og et varsel med en allerede lagret identifikator forkastes. Uten dette gir gjentatte forsøk dobbel belastning, dobbel bokføring i regnskapet og dobbelt kunde-e-post. Hendelser kan også komme i feil rekkefølge, så håndtereren må tåle en belastningsmelding som kommer før autorisasjonsmeldingen.

Endepunktet må være åpent for maskiner. Callback-URL-en skal holdes utenfor sidecache, ikke stå bak passordbeskyttelse eller IP-sperre, og ikke ligge på et testmiljø som krever innlogging. Dette er en vanlig årsak til at en integrasjon virker i testmiljø og ikke i produksjon.

Avstemmingsjobben er sikkerhetsnettet. En planlagt jobb henter status fra leverandøren for ordrer som har blitt stående som ventende lenger enn et definert vindu, og retter opp der varselet aldri kom fram. Jobben kjøres via ekte systemcron mot wp cron event run --due-now med DISABLE_WP_CRON satt, fordi WordPress’ egen pseudo-cron avhenger av trafikk og dermed er upålitelig akkurat når butikken er stille om natten.

Testing gjøres på feilstiene. Testmatrisen dekker ikke bare vellykket betaling, men avbrutt BLIK-betaling i mobilbanken, varsel som kommer to ganger, varsel som kommer i feil rekkefølge, forsinket varsel, frakt-API som svarer for sent, og regnskaps-API som avviser dokumentet. Hver av disse skal ende i en ordre med riktig status og en linje i loggen. Reaksjonstider ved feil i drift avtales skriftlig i vedlikeholdsavtalen.

#WooCommerce i andre polske byer

Trenger du WooCommerce-hjelp utenfor Gdańsk, gjelder de samme polske kravene til BLIK, MVA og InPost-frakt, men med lokal logistikk og kundemønster. Se også WooCommerce-utvikler i Warszawa, WooCommerce-utvikler i Kraków og WooCommerce-utvikler i Wrocław for hvordan oppsettet tilpasses der.

Etter lansering tar vedlikehold og support for WordPress i Gdańsk oppdateringer, sikkerhetskopier og overvåking. Baltic huber sammenligner ofte med vedlikehold i Stockholm og vedlikehold i København.

#Andre baltiske og nordiske byer

Samme WooCommerce-leveranse finnes i flere byer rundt Østersjøen, med lokalt tilpasset betaling og MVA:

#Start et WooCommerce-prosjekt i Gdańsk

Trenger butikken din i Gdańsk en kasse som tar BLIK på alvor, regner MVA riktig og lar deg styre frakten selv, ta kontakt for en uforpliktende gjennomgang. Vi ser på dagens oppsett, peker på den faktiske flaskehalsen og gir en ærlig vurdering av hva som bør gjøres først. Prisen settes individuelt etter omfang, og du får oversikten skriftlig før arbeidet starter.

For butikker og nettsteder som trenger en strukturert gjennomgang av risiko, er inngangen sikkerhetsrevisjon for WordPress.

Kart over Gdańsk og omegn

Vi betjener kunder i Gdańsk og nærliggende områder.

Utvalgt innhold:

Denne siden inneholder spesifikk innsikt for Gdańsk.

En WooCommerce-butikk som selger til polske kunder må håndtere tre ting som ikke står i standarddokumentasjonen til Woo: BLIK i kassen, MVA på 23 prosent regnet riktig, og frakt via InPost-pakkebokser eller DPD med sporing kunden faktisk forventer. Vi bygger og rydder opp i WooCommerce for bedrifter i Gdańsk med utgangspunkt i nettopp disse kravene, ikke en generisk mal som siden lokaliseres med bynavn.

Przelewy24 og PayU har hovedkontor i Warszawa, men det er Gdańsk som er inngangsporten til det baltiske logistikkmarkedet. En kasse uten BLIK taper konverteringer på polsk mobiltrafikk, uansett hvor pen resten av butikken er. Det er det praktiske utgangspunktet for arbeidet vårt.

#WooCommerce-utvikling i Gdańsk

Gdańsk-markedet er kresent. Polske netthandlere er vant til kjappe kasser, BLIK-knapp øverst, InPost-pakkeboks som standard leveringsvalg og tydelig pris med MVA inkludert. Arbeidet vårt handler om å få WooCommerce til å oppføre seg slik en polsk kunde forventer, og å gjøre det på en måte som overlever oppdateringer av Woo, temaet og betalingstilleggene.

#Hva vi faktisk bygger

  • BLIK via Przelewy24 eller PayU i kassen: seks-sifret kodeflyt på mobil, hurtigkasse-knapp på produkt- og handlekurvside, og test av webhooks for autorisasjon, belastning, refusjon og delvis refusjon mot testmiljø
  • Przelewy24 og PayU ved siden av hverandre der butikken trenger det, med kort (Visa/Mastercard) og bankoverføring som alternativer, riktig rekkefølge i kassen for polsk trafikk og testkort-matrise per gateway
  • MVA-oppsett for polsk handel: 23 prosent standardsats, redusert sats på næringsmidler og bøker, fritak der det gjelder, og priser vist inkludert MVA slik polske forbrukere forventer
  • OSS-håndtering for butikker som selger fra Polen til andre EU-land: MVA krevd inn ved salg over terskelen, riktig sats per destinasjonsland, og logikk rundt registreringskravet
  • Frakt med InPost, DPD og Poczta Polska: fraktsoner, prisregler basert på vekt og volum, pakkeboks som leveringsvalg med identifikator fra leverandøren, og fraktsedler/sporing koblet mot ordrebehandlingen
  • Angrerett bygget inn i flyten: retur- og angreskjema, riktig informasjon i ordrebekreftelse og e-post, slik at den lovpålagte 14-dagersfristen ikke blir en manuell jobb for kundeservice
  • Utvidelser av WooCommerce REST API for hodeløs storefront, mobilapp, POS eller integrasjon mot logistikksystemer i havne- og distribusjonsmiljøet, med autentisering og idempotente betalingsstier

#Hvorfor polske betalings- og fraktvalg styrer arkitekturen

I de fleste WooCommerce-prosjekter for Gdańsk er det ikke produktkatalogen som er vanskelig, det er kassen. BLIK oppfører seg ikke som et vanlig kortgateway: koden genereres i mobilbanken, betalingen bekreftes asynkront, og webhook-bekreftelsen krever at ordrestatus ikke settes til betalt før Przelewy24 eller PayU faktisk har bekreftet. Vi har sett butikker der ordrer ble markert fullført på redirect tilbake, ikke på webhook, slik at avbrutte BLIK-betalinger ga ordrer uten penger. Den typen feil fanges bare med ende-til-ende-QA på selve betalingsstien.

Frakt er den andre fellen. En polsk kunde forventer å velge en InPost-pakkeboks i kassen, ikke bare «standard frakt». Når dette mangler, faller konverteringen på mobil. Vi setter opp fraktsonene og leveringsvalgene som hører til det polske markedet, og kobler dem mot sporing kunden ser i e-posten.

For logistikkbedrifter i Gdańsk som selger reservedeler, verktøy eller B2B-varer til hele Østersjøregionen, kommer en tredje kompleksitet: fraktpriser som avhenger av destinasjonsland, tollmerking og ordrestatus som må synkroniseres mot et WMS eller ERP. WooCommerce er da bestillingskilden, ikke lagerstyringssystemet, og integrasjonen må reflektere det.

#Markedet og miljøet i Gdańsk

Gdańsk er Polens inngangsport til Østersjøen. Havnen i Gdańsk er den største på polsk territorium, og Trójmiasto (Gdańsk, Gdynia, Sopot) har vokst frem som et knutepunkt for logistikk, maritim industri og IT-tjenester. Olivia Business Centre og Alchemia huser hundrevis av selskaper som leverer programvare, frakt og distribusjon til hele regionen. WordUp Trójmiasto er det lokale WordPress-miljøet der utviklere møtes og deler erfaringer.

Kundene våre i Gdańsk spenner fra netthandlere som selger direkte til forbruker i hele Polen, til logistikk- og maritimes selskaper som trenger B2B-portaler med integrert fraktberegning mot Østersjø-markeder. Fellesnevneren er at de trenger en butikk som tar BLIK på alvor, regner MVA riktig og lar dem styre frakten selv, enten det gjelder InPost til Kraków eller DPD til Stockholm.

Mange av disse butikkene har vokst organisk over flere år: et tema fra en kjøpt mal, et halvt dusin tillegg som overlapper, og en kasse som er lappet sammen i takt med at nye krav dukket opp. Det fungerer helt til trafikken øker, et betalingstillegg slutter å bli vedlikeholdt, eller UODO stiller spørsmål ved samtykkehåndteringen. Da er det ikke en ny plugin som trengs, men en opprydding i arkitekturen: skille ut egen kode i en egen plugin, fjerne tillegg som dupliserer hverandre, og gjøre kassen forutsigbar igjen. Vi tar denne typen refaktorering uten å bygge alt på nytt, så lenge WooCommerce er riktig plattform for det butikken skal gjøre. Er det ikke det, sier vi det skriftlig.

#Slik jobber vi gjennom et prosjekt

  1. Kasse- og katalogrevisjon. Vi går gjennom dagens WooCommerce-butikk: produkttaksonomi, kasseflyt, aktive betalingstillegg (Przelewy24, PayU, BLIK), fraktsoner mot InPost og DPD, MVA-regler og Lighthouse-måling på de mest besøkte produkt- og kategorisidene.
  2. Plan for betaling, frakt og integrasjon. Vi dokumenterer gateway-valg og rekkefølge i kassen, fraktsoner og pakkebokslogikk, MVA- og OSS-håndtering, og koblinger mot regnskap, lager eller fulfilment. Grensen mellom Woo-kjerne, egen plugin og temakode settes her.
  3. Bygging i feature-brancher. Vi følger kodestandardene til WordPress og WooCommerce, utvider Woo via action- og filter-hooks i stedet for å endre kjernen, og tester betalings- og ordrestier underveis.
  4. QA på ordrestien. Handlekurv, kasse, betaling med testkort og test-BLIK på hver gateway, refusjon og delvis refusjon, retur etter angrerett, kunde-e-post og admin-redigering, kjørt i et testmiljø som speiler produksjon.
  5. Utrulling og overlevering. Vi deployer via en dokumentert release-prosess med testet tilbakeføring, og leverer runbook for hver gateway og hver integrasjon sammen med dokumentasjon for butikkstyrere og redaktører.

#Typiske oppdrag fra Gdańsk-butikker

  • BLIK mangler eller er feilkoblet. En logistikkbutikk markerte ordrer betalt på redirect i stedet for på webhook fra Przelewy24. Vi flyttet bekreftelsen til webhooken, la inn idempotens slik at dobbel webhook ikke ga dobbel ordre, og satte opp full testmatrise for autorisasjon, belastning og refusjon.
  • Treg kasse på mobil. En netthandler med tungt tema og mange aktive tillegg hadde flere sekunders forsinkelse før BLIK-knappen var klikkbar. Vi startet med Lighthouse, WP-CLI-profil og Query Monitor på kassesiden, fant cart-fragment-kallene og autoloadede options som var skyld i mesteparten, og fjernet flaskehalsene én etter én i stedet for å installere enda et caching-tillegg.
  • MVA og OSS regnet feil. En butikk som solgte både innenlands i Polen og til Tyskland og Sverige blandet sammen polsk MVA og OSS-reglene. Vi skilte de to flytene, satte riktig sats per produktgruppe og destinasjonsland, og fikk grenseoverskridende salg merket riktig mot rapporteringskravene.
  • InPost-pakkeboks lagret som fritekst. En butikk skrev pakkeboksnavnet inn i ordrenotatet i stedet for å lagre InPost-identifikatoren. Lageret måtte slå opp adressen manuelt. Vi flyttet valget til et eget ordrefelt, koblet det mot fraktseddelgenerering, og fjernet den manuelle jobben.

#Tekniske standarder

Vi kjører WooCommerce på PHP 8.2 eller nyere, med object caching (Redis) der trafikken forsvarer det, og CDN foran statiske ressurser. Betaling går via Przelewy24, PayU og BLIK avhengig av hva butikken trenger, alltid med 3D Secure på kort. Tunge jobber, som synkronisering mot lager, regnskap eller frakt-API-er, kjøres via Action Scheduler i bakgrunnen slik at de ikke blokkerer kassen.

#Hva du kan forvente etter lansering

Vi lover ikke faste prosenttall, fordi resultatet avhenger av utgangspunktet. Det vi leverer er en kasse som tar BLIK på alvor og bekrefter ordrer på webhook, ikke på redirect, fraktvalg som matcher det polske kunder forventer fra InPost og DPD, MVA og angrerett håndtert i selve flyten i stedet for manuelt, og en målbar forbedring i Core Web Vitals på de sidene som faktisk konverterer. Måltallene settes mot dagens nivå i revisjonen, ikke mot oppdiktede bransjegjennomsnitt.

#Sikkerhet og personvern

Hvert prosjekt får en sikkerhetsgrunnlinje: HTTPS med HSTS, Content Security Policy mot XSS, sårbarhetsskanning av avhengigheter i CI, tofaktor for administratorkontoer og testede sikkerhetskopier. Butikker som håndterer personopplysninger får GDPR-tilpasset samtykkehåndtering, databehandleravtale og personvern bygget inn i arkitekturen.

For polske nettbutikker betyr det i praksis at UODO (Urząd Ochrony Danych Osobowych) er tilsynsmyndigheten som vurderer om samtykke, informasjonsplikt og datalagring er i orden. Vi dokumenterer behandlingsgrunnlag for kundedata fra BLIK- og kortbetalinger, navn og adresse for frakt, og eventuelle markedsføringscookies. Cookie-banneret må gi reelt valg, ikke bare et «Godta alt»-knapp uten avvisning. Personvernerklæringen må nevne databehandlere (Przelewy24, PayU, InPost) og formålet med hver behandling. Dette er ikke juridisk rådgivning, men teknisk implementering av det regelverket krever.

#Ytelse, målt der det teller

Core Web Vitals påvirker både rangering og konvertering, og på en nettbutikk er det kasse-, produkt- og kategorisidene som betyr noe. Vi jobber mot lav LCP gjennom optimalisert kritisk renderingsvei og forhåndsinnlasting av hero-bilder i moderne format (WebP/AVIF), lav INP gjennom minimal JavaScript og utsatt innlasting av tredjepartsskript (inkludert betalingsskript), og stabil layout (lav CLS) gjennom faste bildedimensjoner og reservert plass for dynamisk innhold som BLIK-knappen. Vi måler kontinuerlig med Lighthouse i utrullingsløpet, slik at en regresjon blokkerer distribusjon i stedet for å nå produksjon.

#Spørsmål Gdańsk-butikker stiller oss

Setter dere opp BLIK i kassen? Ja. Vi integrerer BLIK via Przelewy24 eller PayU, med seks-sifret kodeflyt på mobil, og tester autorisasjon, belastning, refusjon og delvis refusjon mot testmiljø før lansering. Bekreftelse av betaling skjer på webhook, ikke på redirect tilbake til butikken.

Kan dere håndtere polsk MVA og OSS riktig? Ja. Vi setter 23 prosent standardsats og reduserte satser der de gjelder, viser priser inkludert MVA slik polske forbrukere forventer, og skiller OSS-flyten for salg til andre EU-land fra ordinær innenlands MVA.

Hvilke fraktløsninger støtter dere? InPost, DPD og Poczta Polska, med fraktsoner, prisregler etter vekt og volum, pakkeboks som leveringsvalg med identifikator fra leverandøren, og fraktsedler og sporing koblet mot ordrebehandlingen.

Endrer dere WooCommerce-kjernen? Nei. Tilpasninger går via dokumenterte action- og filter-hooks, med en klar deling mellom egen plugin og tema, slik at butikken overlever Woo-oppdateringer.

Jobber dere med butikker utenfor Gdańsk? Ja. Vi har tyngdepunktet i Trójmiasto-miljøet, men leverer til netthandlere i hele Polen og til polske butikker drevet fra utlandet.

#Integrasjoner en polsk nettbutikk faktisk trenger

En polsk nettbutikk på WooCommerce ender som regel opp med de samme fire koblingene: betaling med Przelewy24, PayU og BLIK, frakt med InPost og DPD inkludert pakkebokser, regnskap i Comarch, Subiekt GT eller Fakturownia, og en ordrestatus som settes av serveren til leverandøren, ikke av at kunden tilfeldigvis kommer tilbake til takkesiden. Rekkefølgen er ikke tilfeldig: hver kobling nedover i listen arver feilene fra den over hvis den første ikke er riktig bygget.

#Betaling: Przelewy24, PayU og BLIK

BLIK er en app-flyt, ikke et skjema. Integrasjonen bygges mot Przelewy24 eller PayU sitt BLIK-endepunkt. Butikken oppretter en betaling, kunden skriver inn seks-sifret kode i mobilbanken, og bekreftelsen kommer asynkront. Alt som skjer etterpå er utenfor nettleserens kontroll. Derfor implementeres gatewayen som en vanlig WC_Payment_Gateway-klasse der process_payment returnerer en redirect eller en ventetilstand, mens fullføringen skjer i callback-håndtereren. Ordren får payment_complete først når leverandøren har bekreftet.

Kort og bankoverføring går ved siden av. Przelewy24 og PayU dekker både BLIK, kort og direkte bankoverføring. To gatewayer betyr to sett med statuskoder, to refusjonsmodeller og to webhook-formater, så ordren må lagre i metadata hvilken gateway som eide betalingen og hvilken referanse den bruker. Uten dette blir refusjon fra admin et gjettespill.

HPOS må deklareres. På butikker med High-Performance Order Storage må egen plugin-kode melde kompatibilitet via FeaturesUtil::declare_compatibilitybefore_woocommerce_init, og all lesing og skriving av ordredata må gå gjennom wc_get_order og CRUD-metodene i stedet for direkte postmeta-kall. Gammel gateway-kode som skriver med update_post_meta slutter å virke uten å gi feilmelding.

#Frakt: InPost, DPD og Poczta Polska med pakkebokser

Fraktpriser hentes, de gjettes ikke. InPost ShipX og DPD API gir pris og leveringstid per produkt og postnummer. Svaret kobles inn i kassen via woocommerce_package_rates, med volumvekt regnet ut fra pakkens dimensjoner der den overstiger faktisk vekt. Svarene mellomlagres i transienter per postnummer og vektklasse, fordi kassen ikke kan vente på et eksternt kall ved hver oppdatering av handlekurven.

Pakkeboks er et eget datafelt. Kunden velger et konkret InPost-utleveringssted i kassen, og valget må lagres på ordren som en identifikator fra InPost, ikke som fritekst. Fraktsedlene genereres senere mot den identifikatoren. Skrives den som en adresse i et notatfelt, må lageret slå den opp manuelt, og fordelen ved integrasjonen forsvinner.

Tidsavbrudd krever en reserveløsning. Når frakt-API-et ikke svarer, skal kassen falle tilbake til en definert standardsats i stedet for å vise en kasse uten fraktvalg. Feilen logges via wc_get_logger med egen kilde, slik at hyppige tidsavbrudd blir synlige i WooCommerce-loggen før kundeservice oppdager dem.

Sporing hører hjemme i e-posten. Sporingsnummeret lagres på ordren og skrives inn i forsendelsesvarselet, typisk via woocommerce_email_before_order_table. Det fjerner en av de vanligste henvendelsene til kundeservice.

For logistikkbedrifter i Gdańsk som sender til hele Østersjøregionen, legger vi til destinasjonsland i fraktberegningen og skiller mellom innenlands polsk frakt og grenseoverskridende leveranse med egne prisregler og leveringstider.

#Regnskap: Comarch, Subiekt GT eller Fakturownia

Salget bokføres én gang, med riktig MVA-kode. Comarch ERP, Subiekt GT og Fakturownia har REST-API med token-basert autentisering. Integrasjonen oppretter kunde og salgsdokument, og mapper hver produktgruppe til riktig MVA-kode i stedet for å sende en flat sats. Nummeret på det opprettede dokumentet skrives tilbake på ordren, og eksistensen av dette nummeret er det som hindrer dobbeltbokføring ved en ny kjøring.

Avstemming er mot utbetaling, ikke mot ordre. Przelewy24 og PayU utbetaler samlet og trekker gebyr. Regnskapet stemmer først når integrasjonen bokfører utbetalingen som en egen post med gebyret skilt ut, ikke når hver ordre er bokført hver for seg.

B2B og offentlig sektor betyr e-faktura. Selger butikken til offentlige oppdragsgivere i Polen, skal fakturaen sendes via KSeF (Krajowy System e-Faktur), med NIP-nummer på mottakeren. Det er en egen flyt i kassen: felt for NIP, validering, og et annet dokumentløp enn forbrukersalget.

Oppbevaringsplikt og JPK. Bokføringspliktig dokumentasjon skal oppbevares i henhold til polsk regelverk, og regnskapssystemet må kunne levere JPK_VAT og JPK_FA på forespørsel fra skattemyndighetene. I praksis betyr det at butikken ikke er regnskapssystemet: WooCommerce er kilden, Comarch eller Fakturownia er arkivet, og integrasjonen må overføre nok informasjon til at arkivet er komplett uten oppslag i databasen til nettbutikken.

Synkronisering kjøres i kø. All overføring til regnskap legges på Action Scheduler med gjentatte forsøk ved feil, aldri synkront i kasseforespørselen. En regnskapstjeneste som er nede, skal forsinke bokføringen, ikke blokkere et kjøp.

#Hvorfor ordrestatus må settes server-til-server

Takkesiden er et løfte, ikke et bevis. Kunden kan miste dekning på trikkelen i Gdańsk, lukke mobilbanken, bytte til en annen app mens BLIK-betalingen fullføres, eller ha nettleseren i bakgrunnen når batteriet sparer strøm. Redirect tilbake til butikken er dermed en hendelse som kanskje skjer. Betalingsbekreftelsen fra Przelewy24 eller PayU er en hendelse som skjer uansett, og det er den ordrestatusen skal henge på.

Verifiser først, kvitter raskt, jobb etterpå. Callback-endepunktet skal først verifisere signaturen på varselet mot delt hemmelighet, deretter svare med en rask kvittering, og først etterpå gjøre det tunge arbeidet i en bakgrunnsjobb. Leverandører prøver på nytt når svaret drøyer, og et tregt endepunkt utløser dermed flere kopier av det samme varselet.

Idempotens lagres, den antas ikke. Hvert varsel har en identifikator. Den lagres når hendelsen er behandlet, og et varsel med en allerede lagret identifikator forkastes. Uten dette gir gjentatte forsøk dobbel belastning, dobbel bokføring i regnskapet og dobbelt kunde-e-post. Hendelser kan også komme i feil rekkefølge, så håndtereren må tåle en belastningsmelding som kommer før autorisasjonsmeldingen.

Endepunktet må være åpent for maskiner. Callback-URL-en skal holdes utenfor sidecache, ikke stå bak passordbeskyttelse eller IP-sperre, og ikke ligge på et testmiljø som krever innlogging. Dette er en vanlig årsak til at en integrasjon virker i testmiljø og ikke i produksjon.

Avstemmingsjobben er sikkerhetsnettet. En planlagt jobb henter status fra leverandøren for ordrer som har blitt stående som ventende lenger enn et definert vindu, og retter opp der varselet aldri kom fram. Jobben kjøres via ekte systemcron mot wp cron event run --due-now med DISABLE_WP_CRON satt, fordi WordPress’ egen pseudo-cron avhenger av trafikk og dermed er upålitelig akkurat når butikken er stille om natten.

Testing gjøres på feilstiene. Testmatrisen dekker ikke bare vellykket betaling, men avbrutt BLIK-betaling i mobilbanken, varsel som kommer to ganger, varsel som kommer i feil rekkefølge, forsinket varsel, frakt-API som svarer for sent, og regnskaps-API som avviser dokumentet. Hver av disse skal ende i en ordre med riktig status og en linje i loggen. Reaksjonstider ved feil i drift avtales skriftlig i vedlikeholdsavtalen.

#WooCommerce i andre polske byer

Trenger du WooCommerce-hjelp utenfor Gdańsk, gjelder de samme polske kravene til BLIK, MVA og InPost-frakt, men med lokal logistikk og kundemønster. Se også WooCommerce-utvikler i Warszawa, WooCommerce-utvikler i Kraków og WooCommerce-utvikler i Wrocław for hvordan oppsettet tilpasses der.

Etter lansering tar vedlikehold og support for WordPress i Gdańsk oppdateringer, sikkerhetskopier og overvåking. Baltic huber sammenligner ofte med vedlikehold i Stockholm og vedlikehold i København.

#Andre baltiske og nordiske byer

Samme WooCommerce-leveranse finnes i flere byer rundt Østersjøen, med lokalt tilpasset betaling og MVA:

#Start et WooCommerce-prosjekt i Gdańsk

Trenger butikken din i Gdańsk en kasse som tar BLIK på alvor, regner MVA riktig og lar deg styre frakten selv, ta kontakt for en uforpliktende gjennomgang. Vi ser på dagens oppsett, peker på den faktiske flaskehalsen og gir en ærlig vurdering av hva som bør gjøres først. Prisen settes individuelt etter omfang, og du får oversikten skriftlig før arbeidet starter.

For butikker og nettsteder som trenger en strukturert gjennomgang av risiko, er inngangen sikkerhetsrevisjon for WordPress.

WordPress-miljøet i Gdańsk

Vi har vært medarrangør av WordCamp Gdynia siden 2015 og med i organisasjonsteamet for WordCamp Europe siden 2024. Det vi lærer der, går tilbake inn i koden vi skriver for kundene.

Metodiske guider (SEO, GEO, compliance)

Disse sidene forklarer hvordan vi jobber med AI-siteringer, WooCommerce B2B-modernisering og operasjonell resiliens under NIS2 og anskaffelser. Innholdet gjelder uansett leveranseby.

Hva som gjør Gdańsk unik

Lokal ekspertise: - Senior WooCommerce-utvikling for e-handelsbedrifter i Gdańsk - Egen checkout, integrasjon av Przelewy24, PayU og BLIK, fraktregler og polsk MVA-logikk - Hook-baserte utvidelser i stedet for kjerneendringer, REST-API-utvidelse, serverside-blokkmønstre Teamet vårt forstår markedet i Gdańsk og tilpasser løsninger til lokale forretningsbehov. I praksis betyr dette fokus på Core Web Vitals, lokal søkeintensjon og informasjonsarkitektur tilpasset markedet i Gdańsk.

Trenger du tjenesten: WooCommerce Utvikler i Gdańsk?

La oss diskutere hvordan vi kan levere topp ytelse til ditt lokale prosjekt.

Bestill gratis konsultasjon i Gdańsk

Vanlige spørsmål - WooCommerce Utvikler Gdańsk

Hvor møtes webutviklingsmiljøet i Gdańsk?

WordUp Trójmiasto er den lokale meetupen, på https://www.meetup.com/gdynia-wordpress-meetup/. Spør der før du signerer med noen, meg inkludert. Et rom med folk som allerede har leid inn lokalt sjekker referanser raskere enn noen porteføljeside.

Hva forankrer teknologimiljøet i Gdańsk?

Olivia Business Centre & Alchemia. For en brief betyr det én konkret ting: det sier hvilke stacker lokale folk allerede kan, og en overlevering overlever bare hvis noen i byen kan ta over koden.

Hvilken type WooCommerce-arbeid tar dere på?

Egen checkout-flyt, integrasjon av Przelewy24, PayU og BLIK, fraktsoner og InPost-pakkeboksregler, polsk MVA-logikk og OSS for EU-salg, ERP-/lager-/fulfilment-integrasjoner, headless storefront der det gir mening, og refaktorering av butikker som har vokst organisk og nå trenger strukturell opprydding. Oppdraget holder seg til WooCommerce; passer en annen plattform bedre, sier jeg det skriftlig.

Teknologier og Spesialiseringer - Gdańsk

Vi spesialiserer oss på:

Vi jobber med:

WooCommerceWordPressSEOWebytelse
Relevant klynge

Utforsk andre WordPress-tjenester og kunnskapsbase

Styrk virksomheten din med profesjonell teknisk støtte innen kjerneområdene i WordPress-økosystemet.