+370 650 89811 Konsultacija

WordPress API integracija: kaip sujungti svetainę su CRM

WordPress API integracija be paslapčių: kaip per REST API sujungti svetainę su CRM, ERP ar naujienlaiškiais, webhooks ir kada užtenka Make ar Zapier.

Tomas Bagačiūnas 2026 m. spalio 26 d. 7 min. skaitymo Custom įskiepių kūrimas

WordPress API integracija — tai svetainės sujungimas su kita sistema (CRM, naujienlaiškių programa, ERP ar rezervacijų sistema) per programinę sąsają, kad duomenys keliautų automatiškai, be kopijavimo ranka. Kiekviena WordPress svetainė jau turi įmontuotą WordPress REST API, todėl dažniausias klausimas ne „ar galima“, o „kaip jungti: per Make ar Zapier, ar rašyti kodą“. Trumpas atsakymas: paprastiems vienos krypties srautams užtenka automatizavimo platformos, o dvikrypčiam sinchronizavimui ir dideliems kiekiams reikia kodo.

Esu Tomas, front-end programuotojas iš Vilniaus. Per 11 metų ir 150+ projektų WordPress svetaines jungiau su įvairiausiomis sistemomis. Jei pats terminas API dar neaiškus, pirmiausia perskaitykite paprastą API paaiškinimą verslui — čia kalbėsiu konkrečiai apie WordPress.

Ką WordPress REST API leidžia daryti?

Ši sąsaja yra branduolio dalis nuo 4.7 versijos. Ji pasiekiama adresu /wp-json/wp/v2/ ir leidžia kitai programai skaityti bei keisti įrašus, puslapius, kategorijas, mediją ir vartotojus. WooCommerce prideda savo sąsają /wp-json/wc/v3/ — su užsakymais, produktais, likučiais ir klientais.

Praktiškai tai reiškia dvi kryptis:

  • Į svetainę: išorinė sistema įkelia produktą, atnaujina kainą, sukuria įrašą ar pakeičia užsakymo būseną.
  • Iš svetainės: svetainė praneša kitai sistemai apie įvykį — naują užklausą, registraciją, užsakymą.

Antrajai krypčiai standartinis WordPress turi tik kabliukus (angl. hooks), o WooCommerce — ir paruoštus webhook'us. Apie juos plačiau žemiau.

Kokias sistemas dažniausiai jungiu su WordPress?

SistemaKas keliaujaKryptisTipinis sprendimas
CRM (Pipedrive, HubSpot, Bitrix24)Formų užklausos, kontaktai, šaltinis (UTM)Svetainė → CRMMake/Zapier arba nedidelis įskiepis
Naujienlaiškiai (MailerLite, Omnisend)Prenumeratoriai, sutikimai, pirkimų duomenysSvetainė → sistemaOficialus įskiepis, rečiau kodas
ERP, buhalterija, sandėlisProduktai, likučiai, kainos, užsakymai, sąskaitosDvikryptėIndividualus įskiepis
Rezervacijų sistemaLaisvi laikai, rezervacijos, atšaukimaiDvikryptėAPI + webhook, dažnai kodas
Vidinės lentelės (Google Sheets)Užklausos, ataskaitosSvetainė → lentelėMake/Zapier

Svetainės integracija su CRM yra dažniausias pirmasis žingsnis: užklausa iš kontaktų formos iškart tampa CRM kortele su atsakingu vadybininku ir šaltiniu, o ne laišku, kuris pasimeta pašto dėžutėje. Naujienlaiškių programoms dažniausiai užtenka oficialaus įskiepio — kaip pasirinkti tarp jų, rašiau straipsnyje Omnisend ar MailerLite. ERP ir buhalterija yra sudėtingiausia grupė; jai skirtas atskiras straipsnis apie WooCommerce integraciją su buhalterija. O jei integruojate rezervacijas, pirmiausia verta apsispręsti dėl pačios sistemos — žr. rezervacijų sistemos pasirinkimą.

Autentifikacija: kaip sistema įrodo, kad jai galima

Skaityti viešus įrašus per API gali bet kas. Viskam, kas keičia duomenis ar rodo asmeninę informaciją, reikia prisijungimo. WordPress pasaulyje dažniausiai sutinkami keturi būdai:

BūdasKur naudojamasPastabos
Programų slaptažodžiai (Application Passwords)WordPress branduolys nuo 5.6Atskiras slaptažodis kiekvienai sistemai, atšaukiamas vienu paspaudimu. Tik per HTTPS.
WooCommerce raktai (consumer key / secret)WooCommerce sąsajaTeisės: tik skaityti, tik rašyti arba abu. Duokite minimalias.
JWT arba OAuthPer papildomą įskiepįReikia mobiliosioms programėlėms ar atskiram front-end'ui.
Cookie + nonceTos pačios svetainės JavaScriptNetinka išorinėms sistemoms.

Taisyklė, kurios laikausi visada: kiekviena sistema gauna atskirą vartotoją su mažiausia būtina role. Jei CRM tik gauna užklausas, jam nereikia administratoriaus teisių. Kai kuri nors sistema nustoja būti naudojama, jos raktas ištrinamas, o kitos integracijos veikia toliau.

Webhooks: kai svetainė praneša pati

Užuot kas penkias minutes klausus „ar yra naujų užsakymų?“, webhook nusiunčia pranešimą tą pačią sekundę, kai įvykis įvyksta. WooCommerce turi juos įmontuotus: WooCommerce → Nustatymai → Išplėstiniai → Webhooks. Ten galima pasirinkti įvykį (užsakymas sukurtas, atnaujintas, produktas pakeistas) ir adresą, kuriuo siųsti duomenis. Kiekvienas pranešimas pasirašomas slaptu raktu, todėl gavėjas gali patikrinti, kad jis tikrai atėjo iš jūsų parduotuvės.

Paprastoje WordPress svetainėje be WooCommerce tokio meniu nėra. Ten pranešimas siunčiamas per formų įskiepio kabliuką arba nedidelį kodą, kuris po formos pateikimo išsiunčia duomenis į CRM. Du dalykai, kurių dažniausiai trūksta savadarbiuose sprendimuose:

  1. Siuntimas fone. Jei CRM atsako lėtai ar neatsako, lankytojas neturi laukti. Užduotis dedama į eilę (WooCommerce turi įmontuotą Action Scheduler) ir vykdoma atskirai.
  2. Pakartojimas ir žurnalas. Jei išorinė sistema buvo nepasiekiama, siuntimas kartojamas, o nepavykę įrašai matomi administravime. Kitaip užklausos dingsta be pėdsakų ir apie tai sužinote tik iš supykusio kliento.

Kada WordPress API integracija reikalauja kodo, o kada užtenka Make ar Zapier?

Make, Zapier ar n8n — tai platformos, kuriose srautą sujungiate pele: „nauja formos užklausa → sukurti kontaktą CRM → pranešti komandai“. Jų palyginimą rasite straipsnyje apie darbų automatizavimą su n8n, Make ir Zapier. Klausimas yra ne kuris įrankis geresnis, o kur baigiasi jų prasmė.

SituacijaMake / ZapierIndividualus kodas
Forma → CRM, viena kryptisTinka puikiaiPerteklinis
Iki kelių šimtų įvykių per mėnesįTinka, kaina nedidelėAtsiperka lėtai
Tūkstančiai produktų, likučiai kas valandąBrangu ir lėtaTinka
Dvikryptis sinchronizavimasTrapu, lengva sukurti cikląTinka
Sistema be viešo API (tik XML ar CSV)RibotaiTinka
Jautrūs duomenys, kurių nenorite leisti per trečiąją šalįPapildomas BDAR klausimasDuomenys lieka tarp jūsų sistemų

Platformų kainos priklauso nuo operacijų skaičiaus: yra nemokami planai su ribotu kiekiu, o mokami prasideda nuo maždaug 10–30 € per mėnesį (orientaciniai skaičiai, tikslinkite tiekėjo svetainėje). Mažam srautui tai pigiau nei programuotojo darbas. Bet kai scenarijus per mėnesį apdoroja dešimtis tūkstančių operacijų, metinis mokestis greitai viršija vienkartinę individualaus įskiepio kainą.

Mano patarimas paprastas: pradėkite nuo Make ar Zapier, jei srautas vienas ir paprastas. Kai pamatysite, kad scenarijų daugėja, jie lūžta ar kainuoja daugiau, nei sutaupo, laikas pereiti prie kodo. Kaip tvarkingai rašomas toks kodas ir kodėl jis negyvena temos faile, aprašiau straipsnyje custom kodas WordPress svetainėje.

Individualus endpoint'as: kai standartinio API neužtenka

Kartais išorinei sistemai reikia ne įrašų ar užsakymų, o kažko specifinio: laisvų rezervacijos laikų, kainos su kliento nuolaida, likučio keliuose sandėliuose. Tam WordPress leidžia registruoti savo maršrutą (register_rest_route) — pavyzdžiui, /wp-json/imone/v1/laisvi-laikai. Jis gyvena atskirame įskiepyje, turi savo teisių patikrą ir grąžina tik tuos duomenis, kurių reikia.

Tokio maršruto privalumas — aiški sutartis. Išorinės sistemos programuotojas gauna vieną adresą ir duomenų formatą, o ne prieigą prie visos svetainės.

Saugumo kontrolinis sąrašas

  • Visas ryšys — tik per HTTPS.
  • Atskiras vartotojas ir raktas kiekvienai sistemai, minimalios teisės.
  • Raktai laikomi wp-config.php ar aplinkos kintamuosiuose, ne temos faile ir ne Git saugykloje.
  • Uždaryta vieša vartotojų sąsaja /wp/v2/users, jei jos nereikia — ji atskleidžia prisijungimo vardus.
  • Webhook'ų parašas tikrinamas gavėjo pusėje.
  • Užklausų žurnalas su klaidomis, bet be slaptažodžių ir asmens duomenų.

Šie punktai atrodo smulkmenos, kol neateina pirmas atvejis. Ne vienoje nulaužtoje svetainėje raktą su administratoriaus teisėmis radau tiesiog įrašytą temos kode.

Kaip galiu padėti

Kuriu WordPress ir WooCommerce integracijas su CRM, naujienlaiškių, ERP, buhalterijos ir rezervacijų sistemomis. Nedidelė funkcija, pavyzdžiui, formos užklausų siuntimas į CRM su pakartojimu ir žurnalu, kainuoja nuo 300 €, pilna integracija su išorine sistema — nuo 600 €, esamos integracijos taisymas — 40 €/val. Techninis vertinimas nemokamas: jei pakaks Make ar Zapier scenarijaus, taip ir pasakysiu. Daugiau — individualių įskiepių kūrimo puslapyje.

Dažniausiai užduodami klausimai

Ar kiekviena WordPress svetainė turi REST API?

Taip. WordPress REST API yra branduolio dalis nuo 4.7 versijos, todėl jis veikia adresu /wp-json/ be jokių papildomų įskiepių. WooCommerce prideda savo sąsają /wp-json/wc/v3/ su užsakymais, produktais ir klientais.

Kuo skiriasi API ir webhook?

Per API kita sistema pati klausia svetainės duomenų arba juos siunčia. Webhook veikia atvirkščiai: įvykus įvykiui, pavyzdžiui, sukūrus užsakymą, svetainė pati nusiunčia pranešimą nurodytu adresu. Dažniausiai integracijoje naudojami abu.

Ar WordPress API integracija nesulėtins svetainės?

Jei padaryta teisingai — ne. Siuntimai į išorines sistemas vykdomi fone per užduočių eilę, o ne tuo metu, kai lankytojas spaudžia mygtuką. Lėtėja tada, kai užklausa į CRM siunčiama sinchroniškai ir laukiama jos atsakymo.

Ar saugu atverti svetainės API kitoms sistemoms?

Saugu, jei kiekviena sistema gauna atskirą prisijungimą tik su būtinomis teisėmis, ryšys vyksta per HTTPS, o raktai laikomi ne kode. Nereikalingas sąsajas, pavyzdžiui, viešą vartotojų sąrašą, verta uždaryti.

Ar galiu svetainės integraciją su CRM pasidaryti pats per Make ar Zapier?

Paprastam srautui — taip: forma, naujas kontaktas CRM, pranešimas komandai. Kai reikia dvikrypčio sinchronizavimo, didelių duomenų kiekių ar sudėtingos logikos, mėnesinis mokestis ir trapumas paprastai nusveria, ir tada geriau rašyti kodą.

Kiek kainuoja WordPress integracija su kita sistema?

Mano įkainiai: nedidelė funkcija, pavyzdžiui, formos siuntimas į CRM, — nuo 300 €, pilna integracija su išorine sistema — nuo 600 €, esamos integracijos taisymas — 40 €/val. Techninis vertinimas nemokamas.

Norite pradėti?

Paverskime jūsų idėjas realybe

Papasakokite apie projektą — pirmoji konsultacija nemokama. Atsakau per vieną darbo dieną.

  1. Atsakau per 1 d. d.El. paštu arba skambučiu — kaip jums patogiau
  2. 20 min pokalbisIšsiaiškiname tikslus, apimtį ir terminus
  3. Pasiūlymas raštuFiksuota kaina ir terminas, be įsipareigojimų
Be įsipareigojimų
☎ Skambinti Kaina Užklausa