1. Wprowadzenie
Niniejsza dokumentacja opisuje proces pobierania danych z platformy e-commerce IdoSell w ramach systemu aplikacji Data Octopus. Integracja obejmuje pozyskiwanie danych z kilku kluczowych endpointów, ich przetwarzanie oraz składowanie w strukturach BigQuery, co umożliwia dalszą analizę i wykorzystanie w procesach biznesowych.
2. Źródła danych
W ramach integracji z platformą IdoSell, pobieramy dane z następujących endpointów:
3. Proces przetwarzania danych
Dane pobrane z IdoSell przechodzą przez wieloetapowy proces przetwarzania, który obejmuje:
Pobieranie surowych danych z API IdoSell
Transformację danych dla analiz biznesowych
Wzbogacanie danych dodatkowymi wskaźnikami i metrykami
Składowanie danych w docelowych tabelach w BigQuery
4. Tabela Orders - struktura danych
Tabela zawiera połączone dane z endpoint'ów orders i products.
Nazwa kolumny | Typ danych | Opis |
client_id | STRING | Identyfikator klienta |
order_id | INTEGER | Identyfikator zamówienia |
has_invoice | BOOLEAN | Informacja czy do zamówienia została wystawiona faktura |
courier_name | STRING | Nazwa kuriera |
dropshipping_order_status | STRING | Status zamówienia dropshippingowego |
order_add_date | DATE | Data dodania zamówienia |
order_add_year | INTEGER | Rok dodania zamówienia |
order_add_month | INTEGER | Miesiąc dodania zamówienia |
order_add_week | INTEGER | Tydzień dodania zamówienia |
order_dispatch_date | DATE | Data wysyłki zamówienia |
order_source_type | STRING | Typ źródła zamówienia |
order_source_name | STRING | Nazwa źródła zamówienia |
order_source | STRING | Źródło zamówienia |
shop_id | STRING | Identyfikator sklepu |
stock_id | STRING | Identyfikator magazynu |
order_status | STRING | Status zamówienia |
order_base_billing_currency | STRING | Podstawowa waluta rozliczeniowa zamówienia |
currency_id | STRING | Identyfikator waluty |
purchase_date | DATE | Data zakupu |
basket_position | INTEGER | Pozycja w koszyku |
bundle_id | STRING | Identyfikator pakietu |
id | STRING | Unikalny identyfikator |
item_group_id | STRING | Identyfikator grupy produktów |
size_id | STRING | Identyfikator rozmiaru |
product_size_code_external | STRING | Zewnętrzny kod rozmiaru produktu |
title | STRING | Nazwa produktu |
brand | STRING | Marka produktu |
category_name | STRING | Nazwa kategorii |
category_1 | STRING | Pierwsza kategoria w hierarchii |
category_2 | STRING | Druga kategoria w hierarchii |
category_3 | STRING | Trzecia kategoria w hierarchii |
category_4 | STRING | Czwarta kategoria w hierarchii |
category_5 | STRING | Piąta kategoria w hierarchii |
product_age_days | INTEGER | Wiek produktu w dniach |
order_base_currency_order_products_cost | FLOAT | Koszt produktów w walucie podstawowej zamówienia |
billing_currency_rate | STRING | Kurs waluty rozliczeniowej |
order_currency_order_products_cost | FLOAT | Koszt produktów w walucie zamówienia |
product_vat | STRING | Stawka VAT produktu |
product_quantity | FLOAT | Ilość produktu |
product_order_price | FLOAT | Cena brutto produktu w zamówieniu |
product_order_price_net | FLOAT | Cena netto produktu w zamówieniu |
gross_revenue | FLOAT | Przychód brutto |
net_revenue | FLOAT | Przychód netto |
product_order_price_base_currency | FLOAT | Cena brutto produktu w walucie podstawowej |
product_order_price_net_base_currency | FLOAT | Cena netto produktu w walucie podstawowej |
client_delivery_address_street | STRING | Ulica adresu dostawy klienta |
client_delivery_address_city | STRING | Miasto adresu dostawy klienta |
client_delivery_address_zip_code | STRING | Kod pocztowy adresu dostawy klienta |
client_delivery_address_country | STRING | Kraj adresu dostawy klienta |
client_delivery_address_country_id | STRING | Identyfikator kraju adresu dostawy klienta |
client_delivery_address_type | STRING | Typ adresu dostawy klienta |
5. Tabela Products - struktura danych
Tabela zawiera dane, które są przetwarzane z endpoint'u products.
Nazwa kolumny | Typ danych | Opis |
id | STRING | Unikalny identyfikator produktu |
item_group_id | STRING | Identyfikator grupy produktów |
product_is_deleted | STRING | Informacja czy produkt został usunięty |
product_is_visible | STRING | Informacja czy produkt jest widoczny |
size | STRING | Rozmiar produktu |
title | STRING | Nazwa produktu |
brand | STRING | Marka produktu |
category_name | STRING | Nazwa kategorii produktu |
category_path | STRING | Ścieżka kategorii produktu |
category_1 | STRING | Pierwsza kategoria w hierarchii |
category_2 | STRING | Druga kategoria w hierarchii |
category_3 | STRING | Trzecia kategoria w hierarchii |
category_4 | STRING | Czwarta kategoria w hierarchii |
category_5 | STRING | Piąta kategoria w hierarchii |
product_minimal_price | FLOAT | Minimalna cena produktu |
product_wholesale_price | FLOAT | Cena hurtowa produktu |
product_retail_price | FLOAT | Cena detaliczna produktu |
product_purchase_price_net_last | FLOAT | Ostatnia cena zakupu netto produktu |
product_purchase_price_gross_last | FLOAT | Ostatnia cena zakupu brutto produktu |
product_purchase_price_net_average | FLOAT | Średnia cena zakupu netto produktu |
product_purchase_price_gross_average | FLOAT | Średnia cena zakupu brutto produktu |
currency | STRING | Waluta produktu |
vat_rate | FLOAT | Stawka VAT produktu |
product_adding_time | DATE | Data dodania produktu |
product_age_days | INTEGER | Wiek produktu w dniach |
product_price_changed_time | DATE | Data ostatniej zmiany ceny produktu |
product_availability_management_type | STRING | Typ zarządzania dostępnością produktu |
6. Tabela Clients - struktura danych
Tabela zawiera dane o klientach na podstawie połączonych danych z tabeli orders i products.
Nazwa kolumny | Typ danych | Opis |
client_email | STRING | Adres email klienta |
client_phone | STRING | Numer telefonu klienta |
client_first_name | STRING | Imię klienta |
client_last_name | STRING | Nazwisko klienta |
hashed_client_email | BYTES | Zaszyfrowany adres email klienta |
hashed_client_phone | BYTES | Zaszyfrowany numer telefonu klienta |
hashed_client_first_name | BYTES | Zaszyfrowane imię klienta |
hashed_client_last_name | BYTES | Zaszyfrowane nazwisko klienta |
client_delivery_address_zip_code | STRING | Kod pocztowy adresu dostawy klienta |
client_delivery_address_country_code | STRING | Kod kraju adresu dostawy klienta |
days_since_first_order | INTEGER | Liczba dni od pierwszego zamówienia klienta |
days_since_last_order | INTEGER | Liczba dni od ostatniego zamówienia klienta |
min_product_net_price | FLOAT | Minimalna cena netto produktu zakupionego przez klienta |
max_product_net_price | FLOAT | Maksymalna cena netto produktu zakupionego przez klienta |
has_invoice | BOOLEAN | Informacja czy klient kiedykolwiek prosił o fakturę |
order_count | INTEGER | Liczba zamówień klienta |
unique_item_count | INTEGER | Liczba unikalnych produktów zakupionych przez klienta |
total_net_revenue | FLOAT | Całkowity przychód netto wygenerowany przez klienta |
recency_score | INTEGER | Ocena aktualności (RFM) |
frequency_score | INTEGER | Ocena częstotliwości (RFM) |
monetary_score | INTEGER | Ocena wartości monetarnej (RFM) |
customer_segment | STRING | Segment klienta (np. 'Champions', 'Loyal Customers', 'At Risk') |
quantity_of_purchased_brands | INTEGER | Liczba różnych marek zakupionych przez klienta |
purchased_brands | STRING | Lista zakupionych marek |
quantity_of_purchased_categories | INTEGER | Liczba różnych kategorii zakupionych przez klienta |
purchased_categories | STRING | Lista zakupionych kategorii |
7. Tabela Returns - struktura danych
Tabela jest w przygotowaniu. Zostanie dodana do aplikacji Data Octopus 1 czerwca 2025 roku.
9. Cykl aktualizacji danych
Dane są pobierane codziennie w nocy pomiędzy 00:00 a 2:00.
10. Podsumowanie
Integracja z platformą IdoSell umożliwia kompleksową analizę danych e-commerce, obejmującą:
Śledzenie zamówień i ich statusów
Analizę zachowań klientów i ich segmentację
Analizę zwrotów
Monitorowanie wydajności produktów i kategorii
Analizę przychodów i trendów sprzedażowych
System Data Octopus przetwarza te dane do postaci pozwalającej na głębokie analizy biznesowe, które mogą wspierać decyzje strategiczne i operacyjne.