Jak eksportować zamówienia WooCommerce do Arkuszy Google w czasie rzeczywistym?

Opublikowany: 2019-07-17

Jeśli chodzi o integrację z usługami stron trzecich, w ekosystemie WooCommerce dostępnych jest wiele wtyczek, które umożliwiają przesyłanie informacji do i z wszelkiego rodzaju systemów bezpośrednio od Zapier do ConstantContact do systemów pomocy technicznej, takich jak Help Scout.

W Tyche w przeszłości integrowaliśmy niektóre nasze wtyczki z Kalendarzem Google, ponieważ kilka z naszych wtyczek obejmuje rezerwacje lub obsługę dat dostawy zamówień. Właśnie w ten sposób pomyślałem o zbadaniu pomysłu integracji zamówień WooCommerce z arkuszami Google. Oznaczałoby to, że każde zamówienie WooCommerce, które nadejdzie, zostanie również dodane do arkusza Google w czasie rzeczywistym.

Zanim zacząłem o tym pisać, przyglądałem się, co jest dostępne do bezpośredniego dodawania informacji o zamówieniach WooCommerce do arkusza Google. Było kilka artykułów i wtyczek.

Pierwszy artykuł mówi o zapisywaniu nowych zamówień WooCommerce w arkuszach Google za pośrednictwem rozszerzenia WooCommerce Zapier. Jak zapewne wiesz, Zapier zapewnia integrację z ponad 1500 usługami w chmurze. To nie jest to, czego szukałem, ponieważ próbuję osiągnąć tę integrację bez użycia wtyczki.

I chociaż Woocommerce zapewnia wiele funkcji po wyjęciu z pudełka, zamówienia Woocommerce nie mogą być domyślnie eksportowane do arkusza Google w WooCommerce.

Dlatego w kolejnych kilku krokach przyjrzymy się, jak eksportować zamówienia WooCommerce do arkusza Google w czasie rzeczywistym za pomocą WooCommerce Webhooks & Apps Script dostarczonego przez Google.

Przewodnik krok po kroku dotyczący eksportowania zamówień Woocommerce do arkusza Google

Krok 1: Tworzenie Arkusza Google

Najpierw musisz utworzyć nowy Arkusz Google, do którego zostaną wyeksportowane wszystkie Twoje zamówienia WooCommerce. Po utworzeniu możesz dodać pola, które chcesz wyeksportować do Arkusza Google.

WooCommerce export Orders starting with a blank Google Sheet

Do arkusza dodałem 5 pól:

  1. Data dodania — data dodania tego rekordu w arkuszu Google
  2. Numer zamówienia – jest to numer zamówienia WooCommerce
  3. Data zamówienia – Data złożenia zamówienia
  4. Status zamówienia – status zamówienia po jego złożeniu
  5. Link do zamówienia – Link do strony Edytuj zamówienie WooCommerce

Krok 2: pisanie skryptu Google Apps

Po utworzeniu arkusza musimy utworzyć skrypt Google Apps Script, który będzie odpowiedzialny za dodawanie danych do arkusza. Skrypt pobierze dane z webhooków WooCommerce (które zobaczymy w późniejszym kroku), a dane te zostaną przeanalizowane i dodane do arkusza.

Możesz przejść do menu Narzędzia i kliknąć Edytor skryptów.

Google Sheets Script Editor for woocommerce order information exports

Po otwarciu edytora skryptów zobaczysz poniższy ekran.

Google Script Editor Blank View

Google ma tę funkcję, dzięki której skrypt może zostać opublikowany jako aplikacja internetowa, jeśli spełnia określone warunki. Wymagania to:

  • Zawiera funkcję doGet(e) lub doPost(e) .
  • Funkcja zwraca obiekt HtmlOutput usługi HTML lub obiekt TextOutput usługi treści.

Gdy zewnętrzna aplikacja wysyła żądanie HTTP GET, Apps Script wywołuje funkcję doGet(e), natomiast gdy zewnętrzna aplikacja wysyła żądanie HTTP POST, Apps Script wywołuje funkcję doPost(e). Szczegółowe wyjaśnienie aplikacji internetowych Google Scripts i powyższych funkcji można znaleźć tutaj.

Poniżej znajdują się 2 funkcje, które stworzyłem w moim skrypcie:

Po dodaniu powyższego kodu mój skrypt Google wygląda teraz tak, jak pokazano poniżej:

Google apps script editor code for fetching woocommerce order information

Krok 3: Wdrażanie skryptu jako aplikacji internetowej

Po napisaniu powyższego kodu spełniliśmy wymagania, aby został on wdrożony jako aplikacja internetowa; co oznacza, że ​​skrypt do eksportowania naszych zamówień Woocommerce w czasie rzeczywistym jest już gotowy.

Uwaga: Wdrożenie tego skryptu jako aplikacji internetowej jest konieczne, aby mógł on nasłuchiwać zewnętrznych żądań GET i POST.

Aby wdrożyć skrypt jako aplikację internetową, należy wybrać opcję Publikuj -> Wdróż jako aplikację internetową .

Setting up Woocoomerce export order: Google script deployed as web app

Kliknięcie „Wdróż jako aplikację internetową” spowoduje wyświetlenie poniższego wyskakującego okienka:

Setting up Woocoomerce export order: Google script deployed as web app

Podczas wdrażania jako aplikacji sieci Web ważne jest, aby przy każdym wdrożeniu wybrać opcję „Nowy” w opcji Wersja projektu . Dopiero po wybraniu "Nowy" wszelkie zmiany wprowadzone w tej iteracji zaczną obowiązywać.

Musisz wybrać „Ja” w opcji „Wykonaj aplikację jako”. A „Kto ma dostęp do aplikacji” powinien być ustawiony na „Każdy, nawet anonimowy”.

Po kliknięciu „Aktualizuj” pojawi się poniższy komunikat wskazujący, że projekt został pomyślnie wdrożony jako aplikacja internetowa. Wraz z nim wyświetli również adres URL w polu „Aktualny adres URL aplikacji internetowej”. Musisz skopiować ten adres URL, ponieważ jest to adres URL, który będzie używany w następnym kroku w ustawieniach eksportu zamówień Woocommerce za pomocą webhooka WooCommerce.

Setting up Woocoomerce export order: Google script deployed as web app

Krok 4: Tworzenie webhooka WooCommerce

Teraz, gdy skrypt Google Apps jest skonfigurowany i wdrożony jako aplikacja internetowa, musimy dodać webhook WooCommerce, który będzie uruchamiany przy każdym utworzeniu zamówienia.

Możesz dodać webhooka z menu WooCommerce -> Ustawienia -> Zaawansowane -> Webhooki . Po kliknięciu przycisku „Dodaj webhooka” musisz wypełnić pola, jak pokazano poniżej:

creating woocommerce webhook to enable woocommerce orders to be exported to google sheet

Adres URL skopiowany w poprzednim kroku z pola „Aktualny adres URL aplikacji internetowej” należy umieścić w polu „Adres URL dostawy” webhooka. Spowoduje to, że po utworzeniu zamówienia informacje o zamówieniu zostaną wysłane na adres URL dostawy, gdzie nasz skrypt Google Apps jest skonfigurowany do nasłuchiwania wszelkich przychodzących żądań GET lub POST. W obecnym przypadku wszystkie informacje o zamówieniu przekazywane są za pośrednictwem HTTP POST.

Po utworzeniu webhooka pojawi się on na liście webhooków ze statusem Aktywny:

creating woocommerce webhook to enable woocommerce orders to be exported to google sheet

Możesz mieć dodatkowe webhooki w swojej konfiguracji lub nie. Mam skonfigurowanego innego webhooka, który wysyła powiadomienie na Slack, gdy zamówienie jest aktualizowane.

Krok 5: Czas na działanie

Po złożeniu zamówienia w sklepie WooCommerce w ciągu 1 lub 2 minut informacje o zamówieniu pojawią się w arkuszu Google w ostatnim wierszu.

WooCommerce Order Placed

Po złożeniu powyższego zamówienia minęło około 2 minut, zanim odpowiednie informacje pojawiły się w arkuszu Google:

Google sheet with WooCommerce orders information exported from WordPress

W miarę otrzymywania zamówień w sklepie WooCommerce arkusz Google automatycznie dołączy informacje o zamówieniu poniżej ostatniego wypełnionego wiersza. Złożyłem 4 zamówienia po powyższym numerze zamówienia 1166:

WooCommerce Order information page

Po złożeniu każdego zamówienia arkusz Google był wypełniany informacjami o zamówieniu w ciągu 10 sekund do 1 minuty:

Google sheet with WooCommerce exported orders

Kolumna Link do zamówienia jest obecnie pusta, ponieważ nie umieściłem w niej żadnych danych. Możesz jednak analizować informacje o zamówieniu według własnego uznania i wypełniać dowolne informacje z zamówień, takie jak suma zamówienia, metoda płatności, produkty itp.

Zamów metadane

Gdy akcja order.created jest uruchamiana przez WooCommerce, wysyła garść meta-informacji o zamówieniu. Poniżej znajdziesz wszystkie informacje, które zostały zaczerpnięte z jednego z moich przykładowych zamówień. Ta meta zawiera również pole Data dostawy i opłaty za dostawę, które są dodawane z naszej wtyczki Data dostawy zamówienia w celu zautomatyzowania dostaw do sklepu. Zamówienie zawiera 2 produkty, jeden prosty i zmienny:

Pobieranie pełnych informacji o zamówieniach Woocommerce

Jak widać, powyższe informacje, które uzyskałem, są bardzo ograniczone. Poniższy przykład pokazuje, jak pobrać szczegółowe informacje o zamówieniu, które zawierają następujące pola:

Numer zamówienia
Data zamówienia
Status zamówienia
Nazwa produktu
Ilość produktu
Produkt Razem
Suma zamówienia
E-mail rozliczeniowy
Płatności Imię
Nazwisko rozliczeniowe
Metoda płatności
Sposób wysyłki
Koszty wysyłki

Mój arkusz Google wygląda teraz tak:

Exporting Woocommerce orders to Google sheet with detailed order information

Mój skrypt Aplikacji Google służący do pobierania wszystkich powyższych informacji jest teraz zmodyfikowany w sposób pokazany poniżej (pamiętaj o Wdrażaniu jako nowej aplikacji internetowej za każdym razem, gdy wprowadzasz zmiany w skrypcie Aplikacji Google):

Po złożeniu zamówienia arkusz zacznie się wypełniać, jak pokazano poniżej:

Oto zamówienia, które złożyłem:

Woocommerce orders getting exported directly to Google sheet in real time (as they come in))

Na podstawie powyższego zamówienia nr 1214, 1217 i 1220 możesz zobaczyć, jak wszystkie te zamówienia są tworzone poniżej z dodatkowymi informacjami. Google sheet containing all order information from WooCommerce

W ten sposób, za pomocą kilku prostych modyfikacji, udało nam się uzyskać pełne informacje o zamówieniu w arkuszu Google.

Jest to najłatwiejsza i najprostsza metoda, której możesz użyć do wyeksportowania zamówień Woocommerce do WordPress. Zamówienia są eksportowane w czasie rzeczywistym i nie ma żadnego dodatkowego wysiłku z Twojej strony za każdym razem, gdy składane jest nowe zamówienie.