PS PrestaShop Początkujący

Zamówienia w Kalendarzu Google (dfordercalendar)

Instalacja i konfiguracja automatycznego wysyłania zamówień PrestaShop do Kalendarza Google: dane Google Cloud, połączenie OAuth 2.0, personalizacja wydarzeń i rozwiązywanie problemów.

Zaktualizowano Wersja modułu 1.0.0

Wprowadzenie

Zamówienia w Kalendarzu Google (dfordercalendar) automatycznie tworzy wydarzenie w Twoim kalendarzu Google przy każdym zatwierdzonym zamówieniu w sklepie PrestaShop 8 lub 9. Wydarzenie zawiera numer, klienta, sumę, metodę płatności, przewoźnika, listę produktów i adres dostawy. Połączenie wykorzystuje OAuth 2.0 z Twoimi własnymi danymi Google Cloud: żadne dane nie przechodzą przez serwer zewnętrzny.

Instalacja

  1. W back-office otwórz Moduły, a następnie Menedżer modułów.
  2. Kliknij Prześlij moduł i wybierz plik dfordercalendar.zip.
  3. Po instalacji kliknij Konfiguruj.

Wymagania: PrestaShop 8.0 do 9.x, PHP 7.4 do 8.3 z aktywnym rozszerzeniem cURL (dostępne na niemal wszystkich hostingach).

Tworzenie danych dostępowych Google (Google Cloud Console)

Moduł łączy się z API Google Calendar za pomocą danych OAuth 2.0, które tworzysz jednorazowo, w około dziesięć minut.

1. Utworzenie projektu i włączenie API

  1. Otwórz console.cloud.google.com i zaloguj się na konto Google, do którego należy kalendarz docelowy.
  2. Utwórz projekt (na przykład „Sklep PrestaShop”).
  3. W menu otwórz Interfejsy API i usługi, następnie Biblioteka, wyszukaj „Google Calendar API” i kliknij Włącz.

2. Konfiguracja ekranu zgody

  1. Otwórz Interfejsy API i usługi, następnie Ekran zgody OAuth.
  2. Wybierz typ Zewnętrzny (lub Wewnętrzny, jeśli korzystasz z Google Workspace), wpisz nazwę aplikacji i swój e-mail, po czym zapisz.

Dopóki aplikacja pozostaje w statusie „Testowanie”, Google wygasza połączenie po 7 dniach. Dwa rozwiązania: opublikuj aplikację (przycisk Opublikuj aplikację, ten rodzaj użycia nie wymaga żadnej weryfikacji) albo dodaj własne konto do listy użytkowników testowych i opublikuj później. Do pracy produkcyjnej opublikuj aplikację.

3. Utworzenie danych OAuth 2.0

  1. Otwórz Interfejsy API i usługi, następnie Dane logowania, kliknij Utwórz dane logowania, a potem Identyfikator klienta OAuth.
  2. Typ aplikacji: Aplikacja internetowa.
  3. W polu „Autoryzowane identyfikatory URI przekierowania” wklej dokładnie adres URL wyświetlany w panelu Połączenie z Google w konfiguracji modułu (kończy się na controller=oauth).
  4. Zatwierdź: Google wyświetli Twój Client ID i Client Secret.

URI przekierowania musi być skopiowany znak w znak, łącznie z protokołem https. To najczęstsza przyczyna błędu redirect_uri_mismatch.

Łączenie modułu

  1. W konfiguracji modułu wklej Client ID i Client Secret, po czym zapisz.
  2. Kliknij Połącz konto Google: Google poprosi o zgodę na dostęp do Twoich kalendarzy.
  3. Zatwierdź: komunikat potwierdzi połączenie, wróć do konfiguracji.
  4. W polu Kalendarz docelowy wybierz kalendarz, który będzie otrzymywał zamówienia (wyświetlane są wszystkie kalendarze z prawem zapisu, w tym współdzielone), po czym zapisz.

Token dostępu odnawia się automatycznie, więc połączenie wykonuje się tylko raz. Przycisk Odłącz usuwa tokeny w dowolnym momencie.

Konfiguracja wydarzeń

Szablon tytułu

Tytuł wydarzenia komponujesz dowolnie z następujących zmiennych:

  • {reference}: numer zamówienia
  • {customer}: imię i nazwisko klienta
  • {total}: suma brutto sformatowana w walucie zamówienia
  • {payment}: metoda płatności
  • {carrier}: przewoźnik
  • {shop}: nazwa sklepu

Przykład: Zamówienie {reference} - {customer} ({total})

Typ i zawartość wydarzenia

  • Typ wydarzenia: z godziną w dacie i godzinie zamówienia (czas trwania regulowany w minutach, strefa czasowa sklepu) lub całodniowe.
  • Dołącz listę produktów: dodaje każdą pozycję z ilością do opisu.
  • Dołącz adres dostawy: dodawany do opisu i do pola lokalizacji wydarzenia.
  • Dołącz e-mail i telefon klienta: dane kontaktowe dodawane do opisu.
  • Aktualizuj wydarzenie przy zmianie statusu zamówienia: dodaje aktualny status do tytułu przy każdej zmianie.

Codzienna praca

Gdy tylko zamówienie zostanie zatwierdzone, wydarzenie jest tworzone w kalendarzu docelowym. Na karcie zamówienia w back-office panel Google Calendar pokazuje bezpośredni link do wydarzenia albo status synchronizacji w razie problemu.

Przycisk „Utwórz testowe wydarzenie z ostatniego zamówienia” pozwala sprawdzić cały łańcuch bez czekania na prawdziwe zamówienie.

Błędy i ponowienie

Nieudane wywołanie API Google nigdy nie blokuje zatwierdzenia zamówienia. Błąd jest zapisywany z dokładnym komunikatem zwróconym przez Google i pojawia się w panelu Nieudane synchronizacje w konfiguracji. Przycisk Ponów nieudane wydarzenia odtwarza wszystkie brakujące wydarzenia jednym kliknięciem. Błędy są też rejestrowane w logach PrestaShop (Zaawansowane, następnie Logi).

Rozwiązywanie problemów

redirect_uri_mismatch

URI przekierowania zadeklarowany w Google Cloud Console nie odpowiada dokładnie temu, który wyświetla moduł. Skopiuj go ponownie z konfiguracji, bez brakujących znaków i spacji, i sprawdź https.

access_denied lub połączenie wygasające po 7 dniach

Twoja aplikacja OAuth ma status „Testowanie”. Opublikuj ją z ekranu zgody OAuth (patrz wyżej), po czym połącz konto ponownie.

Błąd 403: Google Calendar API has not been used

Google Calendar API nie jest włączone w projekcie. Wróć do Biblioteki, włącz je, odczekaj minutę i ponów nieudane wydarzenia.

Kalendarz nie pojawia się na liście

Wyświetlane są tylko kalendarze, do których połączone konto ma prawo zapisu. W przypadku kalendarza współdzielonego poproś właściciela o uprawnienie „Wprowadzanie zmian w wydarzeniach”.

Dane i odinstalowanie

Tokeny OAuth i rejestr synchronizacji są przechowywane w bazie danych sklepu. Dane zamówień przepływają wyłącznie między Twoim serwerem a API Google, przez HTTPS. Odinstalowanie modułu usuwa tokeny, konfigurację i tabelę rejestru; utworzone już wydarzenia pozostają w Twoim kalendarzu Google.

Czy ta strona była pomocna?

Nadal utknąłeś? Napisz do wsparcia