Furgonetka Mapa
Mapa Furgonetka umożliwia wyświetlenie interaktywnej mapy punktów odbioru na Twojej stronie internetowej. Dzięki niej klienci Twojego sklepu mogą wygodnie wybrać punkt odbioru przesyłki spośród wielu dostępnych przewoźników.
Dostęp do mapy
Aby wyświetlać mapę Furgonetka na swojej stronie, potrzebujesz klienta mapy z przypisanym kluczem API. Dodaj klienta ręcznie, podając dozwolone domeny, na których mapa będzie działać. Klienci powiązani z integracją sklepową są tworzeni automatycznie - nie można nimi zarządzać z tego poziomu.
Dla klientów dodanych ręcznie możesz wygenerować nowy token API oraz dezaktywować dostęp. Token jest wyświetlany tylko raz po wygenerowaniu - zapisz go w bezpiecznym miejscu.
Instalacja i uruchomienie
Integracja mapy z Twoją stroną wymaga dwóch kroków: załadowania skryptu mapy oraz wywołania jej w odpowiednim momencie, np. po kliknięciu przycisku przez użytkownika.
Skrypt mapy należy umieścić w sekcji <head> strony z atrybutem async - dzięki temu nie blokuje on ładowania pozostałej zawartości. Ponieważ skrypt ładuje się asynchronicznie, przed wywołaniem mapy należy upewnić się, że obiekt window.Furgonetka jest już dostępny.
Poniższy przykład przedstawia kompletną, minimalną implementację - od załadowania skryptu po obsługę wybranego punktu:
<!DOCTYPE html>
<html lang="pl">
<head>
<meta charset="UTF-8">
<script src="https://furgonetka.pl/js/dist/map/map.js" async></script>
</head>
<body>
<button id="show-map">Wybierz punkt odbioru</button>
<script>
document.getElementById('show-map').addEventListener('click', () => {
if (!window.Furgonetka) {
console.error('Skrypt mapy nie został jeszcze załadowany.');
return;
}
new window.Furgonetka.Map({
apiKey: 'TWOJ_KLUCZ_API',
courierServices: ['inpost', 'poczta'],
callback: (params) => {
console.log('Wybrany punkt:', params.point.code, params.point.name);
},
}).show();
});
</script>
</body>
</html>
Dostępne usługi kurierskie
Poniższe identyfikatory usług kurierskich służą jako wartości parametrów courierServices i courierServicesFilter:
- allegro - Allegro One Punkt
- dhl - DHL Parcelshop
- dpd - DPD Pickup
- fedex - FedEx Punkt
- furgonetkaPunkt - Furgonetka Punkt
- gls - GLS
- inpost - InPost Paczkomaty
- meest - Meest
- orlen - ORLEN Paczka
- poczta - Poczta Polska
- ups - UPS Access Point
Parametry wejściowe
| Parametr | Typ | Dostępne wartości | Domyślna wartość | Wymagany | Opis |
|---|---|---|---|---|---|
| apiKey | string | - | - | tak | Klucz API uzyskany podczas rejestracji klienta mapy. |
| callback | function | - | - | tak | Funkcja wywołania zwrotnego, wywoływana po wybraniu punktu. Jako argument otrzymuje parametry wyjściowe. |
| courierServices | string[] | Identyfikatory z listy dostępnych usług kurierskich. | ['dhl', 'dpd', 'fedex', 'gls', 'inpost', 'orlen', 'poczta', 'ups'] | nie | Usługi kurierskie, których punkty mają być wyświetlane na mapie. |
| courierServicesFilter | string[] | Identyfikatory z listy dostępnych usług kurierskich. | [ ] | nie | Domyślnie zaznaczone filtry usług kurierskich. |
| city | string | - | - | nie | Miasto, w obrębie którego mają być wyświetlone punkty. |
| street | string | - | - | nie | Ulica lub dzielnica, w obrębie której mają być wyświetlone punkty. |
| postcode | string | - | - | nie | Kod pocztowy, w obrębie którego mają być wyświetlone punkty. |
| pointTypesFilter | string[] | cod_only (tylko punkty obsługujące pobranie), no_orlen (ukrycie punktów Orlenu dla Poczty Polskiej) |
[ ] | nie | Dodatkowe filtry określające rodzaj punktów wyświetlanych na mapie. |
| availableServiceTypes | string[] | parcel_machine (automat paczkowy), service_point (punkt z obsługą) |
['parcel_machine', 'service_point'] | nie | Dostępne rodzaje punktów w filtrze. Pozwala ograniczyć wybór w filtrze rodzajów punktów do wskazanych wartości. |
| countryCodesFilter | string[] | Kody krajów w formacie ISO 3166-1 alpha-2. | [ ] | nie | Filtrowanie punktów według kodów krajów. |
| pointId | string | number | - | - | nie | Identyfikator konkretnego punktu do wyróżnienia na mapie. |
| mapBounds | string | pl (Polska), pl_ua (Polska i Ukraina), eu (Europa) |
pl | nie | Obszar geograficzny widoczny na mapie. |
| limit | integer | - | 2000 | nie | Maksymalna liczba punktów pobieranych z API. |
| showServiceTypeFilter | boolean | true, false | true | nie | Wyświetlanie filtra rodzajów punktów (automat paczkowy / punkt z obsługą). |
| env | string | sandbox, production | production | nie | Środowisko API. Tryb sandbox używa testowego API. |
| container | string | - | - | nie | Selektor CSS elementu, w którym mapa ma być osadzona. Jeśli nie podano, mapa wyświetla się w oknie modalnym. |
| coordinatesCallback | function | - | - | nie | Funkcja wywoływana przy zmianie współrzędnych widoku mapy. Jako argument otrzymuje obiekt z polami latitude i longitude. |
| closeModalCallback | function | - | - | nie | Funkcja wywoływana przy zamknięciu okna mapy. |
| zoom | integer | od 13 do 18 | 14 | nie | Poziom zbliżenia mapy. |
Parametry wyjściowe
Po wybraniu punktu przez użytkownika, poniższe parametry przekazywane są jako obiekt JavaScript do funkcji podanej w parametrze callback.
| Parametr | Typ | Opis |
|---|---|---|
| point.code | string | Kod wybranego punktu. Format kodu zależy od przewoźnika - szczegóły w sekcji Kody punktów. |
| point.name | string | Pełna nazwa wybranego punktu. |
| point.type | string | Identyfikator usługi kurierskiej wybranego punktu (np. inpost, dhl). |
| point.country_code | string | Kod kraju punktu (np. PL). |
| point.furgonetka_point | boolean | Informacja, czy punkt należy do sieci Furgonetka. |
| point.cod | boolean | Informacja, czy punkt obsługuje pobranie (COD). |
| point.original_point_id | string|null | Oryginalny identyfikator punktu u przewoźnika. Wartość null, jeśli nie dotyczy. |
Kody punktów
Kod wybranego punktu z mapy w parametrze point.code zawiera wartości właściwe dla wybranego typu punktów zgodnie z tabelą poniżej:
| Przewoźnik | Nomenklatura przewoźnika | Nazwa parametru zwracanego przez przewoźnika | Przykładowa wartość |
|---|---|---|---|
| Allegro One Punkt | Identyfikator punktu | id | AL007NOL |
| DHL | Numer SAP | sap | 1020384 |
| DPD | Identyfikator punktu | PUDO_ID | PL11033 |
| FedEx | - | code | 331535 |
| Furgonetka Punkt | Identyfikator punktu | - | WAW781FP |
| GLS | Unikalny identyfikator ParcelShop'u | id | 6160127597 |
| InPost | Identyfikator punktu | name | ADA01N |
| Meest | - | key | NOVA_POSHTA__00004f90-e21c-11e9-b48a-005056b24375 |
| ORLEN Paczka | Nr PSD (6 znaków) | PSD | 106088 |
| Poczta Polska | Identyfikator placówki, tzw. PNI. | id | 116744 |
| UPS | Access Point ID | id | U00032786 |