Jak zautomatyzować zakupy w sklepie Shopify — część 3

Wcześniej w tej serii przeszliśmy przez kroki wymagane do zbudowania zautomatyzowanego systemu zaopatrzenia od podstaw.

W naszym pierwszym artykule o automatyzacji zamówień pokazaliśmy, jak sprawdzić poziom zapasów za pomocą prostej integracji Shopify i Airtable.

Następnie wprowadziliśmy rozwiązania, które wysyłają informacje o produktach i dostawcach do QuickBooks, gdy poziomy zapasów osiągną wstępnie zdefiniowane poziomy.

Dzisiaj nadszedł czas, aby pokazać, jak automatycznie tworzyć zamówienia zakupu i wysyłać je do odpowiedniego dostawcy, gdy ilość produktu osiągnie określony poziom i status.

Zanim zaczniemy, rzućmy okiem na to, co tu napotkasz.

Automatyzacja zamówień zakupu: przegląd procesu

W tym samouczku zbudujemy scenariusz Integromat, który tworzy zamówienia zakupu i automatycznie wysyła je do odpowiednich dostawców.

system automatyzacji zamówień

W tym celu opieramy się na następujących modułach Integromatu:

  • Airtable > Szukaj rekordów
  • Agregator tablic
  • Iterator
  • Quickbooks > Utwórz zamówienie zakupu
  • Quickbooks > Wykonaj wywołanie API
  • Podręczniki > Zdobądź dostawcę
  • Gmail > Wyślij e-mail
  • Airtable > Zaktualizuj rekord

Scenariusz działa w dość prosty sposób.

Pierwszy moduł przeszukuje tabelę inwentarza pod kątem pozycji spełniających określone kryteria.

Jeśli kryteria są spełnione, dostawcy tego produktu są agregowani i iterowani, dzięki czemu możemy wyszukać wszystkie produkty tego dostawcy, których należy zamówić. Ma to na celu uniknięcie wysyłania wielu zamówień zakupu do tego samego dostawcy.

Następnie tworzone jest i wysyłane e-mailem zamówienie zakupu ze wszystkimi pozycjami wymaganymi od dostawcy.

Pamiętaj, że samouczek nie kończy się tutaj. W kolejnej i ostatniej części tej serii zbudujemy scenariusz, który otrzymuje faktury od dostawców, wysyła je do finansów i aktualizuje tabelę zapasów po otrzymaniu towarów.

A teraz zabierzmy się do pracy: jesteśmy bliżej niż kiedykolwiek stworzenia zautomatyzowanego systemu zaopatrzenia z codziennymi aplikacjami.

Krok 1: Odzyskiwanie przedmiotów, które osiągnęły określony poziom zapasów

W części 2 każdemu przedmiotowi przypisałeś częstotliwość rotacji, która odgrywa tutaj ważną rolę.

Przypominamy, że częstotliwości (i wartości procentowe) używane w tym demo to: częstotliwości z ich wartościami procentowymi używane w tym demo:

  • Wysoki – zamówienie jest wysyłane, gdy ilość towaru spadnie poniżej 50% maksymalnej ilości
  • Średnia – zamówienie jest wysyłane, gdy ilość towaru spadnie poniżej 20% maksymalnej ilości
  • Niski — żadne zamówienie nie jest wysyłane automatycznie (możesz wysłać je ręcznie, zmienić częstotliwość lub ostatecznie usunąć przedmiot ze sklepu)

Teraz nadszedł czas, aby zobaczyć, jak pobrać elementy o wysokiej lub średniej częstotliwości, które należy zamówić, a które jeszcze nie zostały zamówione (więcej o polu Zamówione później).

Aby rozpocząć, musisz utworzyć nowy scenariusz Integromatu z pulpitu nawigacyjnego.

W kreatorze wizualnym dodaj moduł „ Airtable > Search Records ”.

W polu konfiguracji wybierz bazę „ Shopify Inventory ” i tabelę „ Inventory ”.

Wklej poniższy wzór, aby wyszukać elementy spełniające wymagane kryteria wymienione powyżej:

LUB((ORAZ(({Ilość} < {Maksymalna ilość dla pozycji} * 0.5 ), ({Zamówione} = 0), ({Obrót} = 'Wysoka'))),
(ORAZ(({Ilość} < {Maksymalna ilość dla pozycji} * 0.2 ), ({Zamówione} = 0), ({Obrót} = 'Średni'))))

Możesz dostosować wartości procentowe na czerwono do swoich potrzeb (0,5 odnosi się do sytuacji, gdy poziom zapasów spada poniżej 50% maksymalnej ilości, 0,2, gdy spada poniżej 20%).

Nie zapomnij też o zwiększeniu liczby rekordów pobieranych w polu Limit podczas wykonywania scenariusza (domyślnie jest to 10, lepiej 100+).

airtable-search-records-moduł-1-konfiguracja

Po pobraniu rekordów pozycji należy również pobrać dostawców tych pozycji.

Często zdarza się, że sprzedawca dostarcza więcej niż jeden przedmiot do Twojego sklepu. W takich przypadkach chcesz wysłać pojedyncze zamówienie zakupu ze wszystkimi potrzebnymi towarami od tego dostawcy zamiast zamówienia dla każdego towaru.

Przykład:

Dostawca 1 – Zamówienie zakupu produktu A, produktu B.

Dostawca 2 – Zamówienie zakupu produktu C.

Proces, który zastosujemy, aby to osiągnąć, działa tak, jak opisano poniżej:

  • Pobrane identyfikatory dostawców są najpierw agregowane (poszczególne dane są scalane w jeden pakiet)
  • Pozycje są następnie iterowane (dzielone na różne części w celu przetworzenia)
  • Poprzez iterację danych każdy dostawca jest dopasowywany do wszystkich jego produktów, które u niego zamawiasz
  • Pozycje są następnie agregowane, aby można je było wysłać w jednym zamówieniu zakupu do dostawcy

Krok 2: Agregacja danych

Otwórz menu Narzędzia na dole kreatora wizualnego i dodaj do scenariusza moduł „Array Aggregator”.

W polu konfiguracji po prostu zaznacz pole „ Identyfikator dostawcy Quickbooks ”, aby je zagregować, tak jak pokazano poniżej:

array-aggregator-quickbooks-vendor-id-field

Po zakończeniu kliknij „ OK ” i przejdź do następnego kroku.

Krok 3: Dodawanie filtrów

Podobnie jak w przypadku poprzednich scenariuszy, które stworzyliśmy, również tutaj wymagane są filtry. Cel jest taki sam: zatrzymanie przetwarzania scenariusza, gdy nie zostaną znalezione żadne rekordy.

Kliknij więc mały znak klucza między modułem Airtable a agregatorem tablic, aby dodać filtr.

W polu konfiguracji dodaj „ Całkowita liczba wiązek ” jako warunek, wybierz „ Większe niż ” jako operator danych na liście rozwijanej i „ 0 ” w kolejnym polu.

Po zakończeniu kliknij przycisk „ OK ”.

filtr-pomiędzy-modułem-airtable-a-agregator-tablicy

Krok 4: Iteracja danych

Teraz nadszedł czas, aby dodać moduł „Iterator ”, aby podzielić dane na oddzielne części do przetwarzania.

Aby to zrobić, wybierz go z menu Narzędzia na dole kreatora, tak jak w przypadku agregatora tablic.

Czemu? Proste: ponieważ może istnieć wiele elementów z tym samym dostawcą (pobranym w pierwszym module), ten identyfikator dostawcy będzie również pojawiał się wiele razy w tablicy.

W rezultacie musimy usunąć te zduplikowane identyfikatory, aby dostawca nie otrzymał kilka razy tego samego zamówienia zakupu.

W tym celu użyjemy funkcji „ deduplikuj ”, którą znajdziesz w menu „ Funkcje do pracy z tablicami ”.

Zmapuj element Array[] i wprowadź identyfikator dostawcy Quickbooks w nawiasach, jak pokazano poniżej:

konfiguracja-iteratora

Następnie kliknij przycisk „ OK ” i przejdź do następnego kroku.

Krok 5: Dopasowanie dostawców do ich przedmiotów

Dzięki iteratorowi identyfikatory dostawców będą przechodzić przez scenariusz pojedynczo.

Za pomocą tych identyfikatorów możemy teraz dopasować dostawców do zamawianych przedmiotów.

Aby to zrobić, najpierw dodaj moduł „ Airtable > Search Records ”.

W polu konfiguracji wklej następującą formułę i zamapuj element „ Quickbooks Vendor ID ” wyprowadzany przez iterator w cudzysłowie („”) .

LUB((ORAZ(({Ilość} < {Maksymalna ilość dla przedmiotu} * 0.5 ), ({Zamówione} = 0), ({Obrót} = 'Wysoki'), ({Identyfikator dostawcy Quickbooks} = ""))) ,
(ORAZ(({Ilość} < {Maksymalna ilość dla przedmiotu} * 0.2 ), ({Zamówione} = 0), ({Obrót} = 'Średni'), ({Identyfikator dostawcy Quickbooks} = ""))))

W razie potrzeby nie zapomnij też zmienić wartości procentowych, tak jak w poprzedniej formule.

airtable-search-records-moduł-2-konfiguracja

Krok 6: Tworzenie zamówienia zakupu i agregowanie pozycji

Dotarłeś do głównej części całej serii przypadków użycia: Automatyczne tworzenie zamówienia zakupu .

W poprzednim module pobrano sprzedawców z ich przedmiotami.

Teraz celem jest agregacja towarów w jednym zamówieniu zakupu, co ma kluczowe znaczenie w przypadku zamawiania wielu towarów od tego samego dostawcy.

Aby to zrobić, dodaj kolejny agregator tablic do swojego scenariusza i wybierz „ Airtable > Search Records ” jako moduł źródłowy .

Ważne jest, aby struktura tablicy była zgodna ze strukturą zamówienia. Pozwoli nam to zmapować dane w kolejnym module.

Jednak w sekcji „ Typ struktury docelowej ” dostępna jest tylko opcja Niestandardowa , która nie jest tą, której potrzebujemy.

agregator-tablic-2-niestandardowa-opcja-w-celu-typu-struktury

Aby na liście pojawiła się właściwa struktura, musisz najpierw dodać i skonfigurować moduł „ Podręczne książki > Utwórz zamówienie zakupu ”, a następnie ponownie otworzyć menu „ Typ struktury docelowej ”.

Więc zróbmy to. Za chwilę wrócimy do agregatora tablic!

Po dodaniu modułu „ Podręczniki > Utwórz zamówienie zakupu ” za drugim agregatorem tablic, skonfiguruj go w następujący sposób:

  • Wybierz konto AP
  • Włącz przełączniki mapy w dwóch poniższych polach
  • Zamapuj element „ Quickbooks Vendor ID ” na pole „ Vendor
  • Zamapuj element „ Array[] ” na pole „ Lines ”, które zawiera wszystkie dane dla zamówienia, które wkrótce utworzymy w agregatorze tablicy

quickbooks-utwórz-konfigurację-zamówień-zamówienia

Gdy to zrobisz, kliknij przycisk „ OK ” i otwórz drugi moduł agregatora tablic.

W polu konfiguracji wybierz opcję „ Podręczne książki > Utwórz wiersze zamówienia zakupu ”, która teraz pojawi się na liście.

agregator-tablic-2-szybkie-podręczniki-opcja-pod-docelową-typ-struktury

Teraz zmapujmy dane do pól, które pojawią się poniżej.

Aby obliczyć kwotę, użyj funkcji „ suma ” z „ Funkcje matematyczne ”. Następnie musisz wykonać następujące czynności:

  • Mapuj element „ Maksymalna ilość dla towaru ” (wyprowadzany przez poprzedni moduł „ Szukaj rekordów ”)
  • Odejmij ilość pod ręką, używając operatora „odejmowanie ” i zmapuj element „Ilość”
  • Po nawiasie pomnóż ją przez cenę jednostkową za pomocą operatora „ mnożenie ” i zmapuj element „ Cena jednostkowa ”

Ponadto zmapuj „Nazwa wariantu ” na pole „ Opis ” i wybierz „ Oparte na pozycji ” w sekcji „ Typ ”.

Jeszcze nie skończyliśmy, ale zobacz poniższy obrazek w celach informacyjnych:

agregator-tablic-2-mapowanie-1

Przejdźmy teraz do konfiguracji tego modułu. Kiedy przewijasz w dół:

  • Zamapuj element „ Quickbooks Inventory Item ID ” na pole „ Item
  • W polu „ Ilość ” ponownie zmapuj element „ Maksymalna ilość dla towaru ” i odejmij bieżącą „ Ilość
  • Na koniec zmapuj element „ Cena jednostkowa ” na pole „Cena jednostkowa”

agregator-tablic-2-mapowanie-2

Gratulacje!

Skonfigurowałeś już agregator tablic i moduły „Utwórz zamówienie zakupu ”.

W tym momencie należy wykonać scenariusz, aby identyfikator zamówienia mógł zostać wyprowadzony przez moduł „Utwórz zamówienie zakupu ”.

Jest to wymagane, aby następny moduł działał tak, jak zamierzamy. Wkrótce zobaczysz, jak jest używany!

Zmień ilość przedmiotu/ów na 0 w tabeli Zapasy i naciśnij „ Uruchom raz ”.

scenariusz-wykonanie-tworzenie-zlecenia

W następnym kroku zobaczymy, jak wysłać zamówienia zakupu do dostawców.

Krok 7: Pobieranie i wysyłanie e-mailem zamówień zakupu

Zamówienia zakupu utworzone w poprzednim module muszą zostać pobrane przed wysłaniem ich do dostawców.

Obecnie nie ma dedykowanego modułu QuickBooks do pobierania zamówień zakupu, więc do tego celu musimy użyć modułu „ Make an API call ” firmy Integromat.

Dodaj więc ten moduł do swojego scenariusza, a następnie w polu „ URLwklej: zamówienie//pdf

Następnie zmapuj identyfikator (który jest teraz dostępny po wykonaniu scenariusza), jak pokazano na poniższym zrzucie ekranu:

quickbooks-make-an-api-call-module-url-mapping

Plik jest plikiem PDF, więc w sekcji „ Nagłówki ” wprowadź następujące zmiany:

  • Zmień wartość klucza Content-Type na: application/pdf
  • Dodaj nowy przedmiot: Klucz – zaakceptuj
    Wartość – aplikacja/pdf

Zobacz obraz poniżej w celach informacyjnych:

quickbooks-make-an-api-call-module-headers

Zamówienia zakupu będą pobierane za pomocą tego modułu. Teraz wystarczy adres e-mail dostawcy, aby od razu wysłać zamówienie.
Dodaj moduł „Podręczniki > Uzyskaj dostawcę ” do swojego scenariusza i po prostu zmapuj element „ Dostawca: Wartość ” z modułu „ Podręczniki > Utwórz zamówienie zakupu ”.

quickbooks-get-a-vendor-module-mapping

Czas wysłać maila!

Aby to zrobić, dodaj do swojego scenariusza moduł Gmail (lub e-mail; oba działają tutaj) „ Wyślij e-mail”.

Ten moduł jest dość prosty w konfiguracji.

Najpierw należy przełączyć przełącznik mapy w polu „ Do ” i zmapować element „ Główny adres e-mail: adres ” z poprzedniego modułu (który jest adresem e-mail dostawcy).

Możesz również CC swój dział finansowy, aby mógł prowadzić rejestr zamówień zakupu.

W przypadku „ Wiersz tematu ” i „ Treści ” możesz dodać wszystko, co chcesz.

gmail-wyślij-e-mail-moduł

A najważniejsza część – dołączenie zamówienia – przewiń w dół do „ Załączniki ” i kliknij przycisk „ Edytuj ”.

Nadaj mu nazwę i upewnij się, że kończy się na .pdf .
Wskazówka dla profesjonalistów: użyj elementu „ Numer dokumentu ”, aby uczynić go wyjątkowym.

Następnie zmapuj element „ Body ” wygenerowany przez moduł „ Quickbooks > Make a API call ” na pole „ Data ”.

mapowanie-pola-załączników-gmail

Dobra robota!

Zamówienia zakupu zostaną utworzone i wysłane pocztą elektroniczną dokładnie tak, jak tego oczekujesz. Do ukończenia tej automatyzacji potrzebny jest jeszcze jeden krok. Spójrzmy.

Krok 8: Aktualizacja pola „Zamówienie”

Jeśli zastanawiasz się nad polem „ Zamówienie ” (które widzieliśmy w podanych wcześniej formułach), wyjaśnimy to teraz.

To pole w tabeli jest bardzo ważne, ponieważ zapobiega wysyłaniu przez automatyzację zamówień zakupu, które zostały już wysłane, za każdym razem, gdy automatyzacja jest wykonywana.

Jeśli pole jest zaznaczone, nie zostaną utworzone żadne zamówienia dla odpowiedniej pozycji.

pole-zamówienia-w-tabeli

Po wysłaniu zamówienia zakupu towaru w scenariuszu należy zaktualizować pole zamówienia dla tego towaru.

Innymi słowy, musisz odznaczyć to pole dla tego przedmiotu w Airtable, gdy przedmioty zostaną odebrane w Twoim sklepie.

Aby to osiągnąć, dodaj do swojego scenariusza moduł „ Airtable > Search Records ”.

Użyj formuły, aby wyszukać towar, który właśnie został zamówiony u dostawcy. Zmapuj „ Identyfikator dostawcy ”, jak pokazano na zrzucie ekranu poniżej formuły.

LUB((ORAZ(({Ilość} < {Maksymalna ilość dla przedmiotu} * 0.5 ), ({Zamówione} = 0), ({Obrót} = 'Wysoki'), ({Identyfikator dostawcy Quickbooks} = ""))) ,
(ORAZ(({Ilość} < {Maksymalna ilość dla przedmiotu} * 0.2 ), ({Zamówione} = 0), ({Obrót} = 'Średni'), ({Identyfikator dostawcy Quickbooks} = ""))))

airtable-search-records-moduł-3-konfiguracja

Na koniec dodaj do swojego scenariusza moduł „ Airtable > Update a Record ”.

W polu konfiguracji zmapuj element „ID ” z poprzedniego modułu „Wyszukaj rekordy ” na pole „ Identyfikator rekordu ”, aby moduł wiedział, który rekord ma zostać zaktualizowany.

airtable-update-a-record-module-record-id

Przewiń do samego dołu i wybierz „ Tak ” w obszarze „ Zamówione ”.

Airtable-update-a-record-ordered-option

I to wszystko! Teraz upewnijmy się, że scenariusz działa zgodnie z założeniami.

Krok 9: Testowanie scenariusza

Po zapisaniu scenariusza przejdź do tabeli Airtable i zmień ilość kilku pozycji na liczbę poniżej zdefiniowanego poziomu zamawiania.

Na przykład, jeśli oznaczyłeś towar jako „Wysoki” obrót (co oznacza, że zamówienie zakupu zostanie utworzone, gdy zapasy dla tego towaru spadnie poniżej 50%), a poziom zapasów dla tego towaru wynosi powiedzmy 100, zmień ilość dla tego towaru na 20.

Następnie zmień adres e-mail w module Gmail na swój, aby dostawca nie otrzymał zamówienia testowego.

Pamiętaj, aby zmienić go z powrotem po zakończeniu testu!

Jeśli twój scenariusz jest poprawnie skonfigurowany, wykonanie powinno wyglądać tak:

pełna-scenariusz-wykonanie

Podsumowując, nie zapomnij zaplanować realizacji scenariusza tak często, jak uważasz to za konieczne (tj. raz dziennie, dwa razy dziennie i tak dalej).

I tak, przyjaciele, automatycznie wysyłamy zamówienia zakupu do dostawców, gdy poziom zapasów spadnie poniżej określonego progu.

Co dalej?

W końcowej części tej serii pokażemy, jak obserwować faktury od dostawców i wysyłać powiadomienia do zespołu finansowego (lub kogokolwiek tego potrzebujesz).

Szybka uwaga : Prawdopodobnie zauważyłeś na zamówieniach zakupu, że nie było podpisu elektronicznego i daty. Właściwie to jest coś, nad czym Quickbooks pracuje od jakiegoś czasu.

Jeśli chcesz je uwzględnić, sprawdź ten wątek na ich forum wsparcia: Jak mogę dodać podpis i datę do zamówienia?

Wreszcie, gdy zbliżamy się do mety, nadszedł czas, aby zastanowić się, co zrobisz z nowo zdobytą przewagą konkurencyjną. W końcu na to pozwala automatyzacja.

Miłej automatyzacji!