Interfejs zdalnej wyceny przesyłek

Transkrypt

Interfejs zdalnej wyceny przesyłek
Interfejs zdalnej wyceny przesyłek
ver. 1.1
14.08.2013
www.globkurier.pl
Opis usługi:
Interfejs pozwala na wysłanie żądania z parametrami przesyłki. W odpowiedzi otrzymywane są
zserializowane dane w formacie JSON opisujące przesyłki pasujące do kryteriów żądania. Wyniki są
odwzorowaniem tych wyników, które wyświetlają się na stronie www.globkurier.pl po przeprowazeniu
wyceny przez formularz Szybka wycena. Dane do skryptu można przekazad metodami POST lub GET.
Metoda POST ma wyższy priorytet i nadpisuje dane GET, jeśli próbowano by przekazad dane z obu źródeł.
Parametry wejściowe:
Nazwa
Opis
parametru
weight
length
width
height
client_id
import
Wymagany
wartości
Waga przesyłki [kg]
Długośd przesyłki [cm]
Szerokośd przesyłki [cm]
Wysokośd przesyłki [cm]
Numer identyfikacyjny klienta. Jeśli zostanie podany zwrócone ceny będą
dotyczyły cen wskazanego w parametrze klienta, na podstawie jego
przypisania do grupy rabatowej. Działa to podobnie, jakby klient był
zalogowany na stronie i przeprowadzał wycenę.
Kraj importu w przypadku przesyłek międzynarodowych. Parametr wyklucza
się z parametrem export.
export
Kraj eksportu w przypadku przesyłek międzynarodowych. Parametr wyklucza
się z parametrem import.
count
Liczba przesyłek. Jeśli niezostanie podany system naliczy cenę pojedynczego
produktu.
Kod pocztowy miejsca dostawy. Konieczny jeśli chcemy ustalid dokładną
cenę przesyłki w przypadku przewoźnika Globkurier / UPS.
delivery
Typ
float
integer
integer
integer
integer
TAK
TAK
TAK
TAK
NIE
2 literowy
kod kraju
ISO-3166-1
alfa-2
2 literowy
kod kraju
ISO-3166-1
alfa-2
integer
NIE
integer
NIE
NIE
NIE
Dane wyjściowe opisujące pojedynczy produkt:
Nazwa
Opis
Typ wartości
symbol
string
courier
product
service
area
Symbol produktu, wykorzystywany do identyfikacji produktu w systemie
Globkurier EDI do zamówienia produktu
Nazwa przewoźnika
Nazwa produktu
Wewnętrzny kod usługi przewoźnika
Obszar dostawy
product_price
Cena bazowa produktu
[no_standard]
Cena za pojedynczy element niestandardowy ewentualnie doliczony do
przesyłki. Klucz opcjonalny, pojawia się jeśli przesyłka jest niestandardowa.
string
string
string
string („domestic“ |
„international“)
string(separator liczbowy
„.“, 2 miejsca dziesiętne)
string(separator liczbowy
„.“, 2 miejsca dziesiętne)
[discount]
price_plus_fuel
price_net
Procent rabatu naliczonego dla przesyłki. Klucz pojawia się w zleceniach
międzynarodowych.
Cena bazowa produktu z naliczoną opłatą paliwową za dany miesiąc
fuel_surcharge
Cena netto (cena produktu + opłata paliwowa z danego miesiąca + dopłata
za elem. niestandardowy – rabat dla niektórych przesyłek
międzynarodowych)
Cena brutto (cena produktu + opłata paliwowa z danego miesiąca +
dopłata za elem. niestandardowy – rabat dla niektórych przesyłek
międzynarodowych) * VAT
Stawka procentowa opłaty paliwowej dla produktu
category
Kategoria produktu
producent
vat
Id producenta w systemie Globkurier
Stawka VAT obowiązująca dla produktu. Dla przesyłek krajowych,
importowych oraz eksportowych do krajów Unii Europejskiej obowiązuje
stawka 23%, eksport poza kraje Unii obowiązuje stawka 0%.
Krótki opis produktu. Znaki specjalne zakodowane są w postaci encji.
Szacowany czas dostawy przesyłki jako przedział dni
Jeśli większe od 0 oznacza przesyłkę terminową, wartośd oznacza godzinę,
do której przesyłka będzie dostarczona
Metoda transportu: drogowa lub lotnicza
price_gross
description
delivery_time
timely_delivery
delivery_method
string(separator liczbowy
„.“, 2 miejsca dziesiętne)
string(separator liczbowy
„.“, 2 miejsca dziesiętne)
string(separator liczbowy
„.“,2 miejsca dziesiętne)
string(separator liczbowy
„.“,2 miejsca dziesiętne)
string (wartośd całkowita
ozn. procent)
string(package |
long_package | pallet)
string (liczba całkowita)
string (wartośd całkowita
ozn. procent)
string
string
int
string [road/air]
Możliwe błędy:
Symbol
Opis
DB_ERROR
Problem z bazą danych, problem wewnętrzny serwisu, nie leżący po stronie klienta. Może
pojawid się w przypadku problemów komunikacyjnych z serwerem np. podczas prac
konserwacyjnych etc.
Nie przekazano numeru klienta w parametrze
Konto klienta nie istnieje, zostało zablokowane lub jest nieaktywne.
Przekazano błędny numer klienta, np zawiera nieodpowiednie znaki
Nie przekazano kodu kraju w parametrze
Podano kraj w nieodpowiednim formacie, np. 3-literowym.
Nieznany kod kraju
Wybrano jednocześnie import oraz eksport
Podano liczbę przesyłek spoza przedziału 1-10.
Podano błędne wymiary lub wagę przesyłki
Podano nieobsługiwany parametr
Nieustawiono wszystkich wymaganych parametrów. Wymagane to
waga/dlugosc/szerokośd/wysokośd przesyłki
MISSING_CLIENT_ID
UNKNOWN_CLIENT_ID
WRONG_CLIENT_ID
MISSING_COUNTRY_CODE
WRONG_COUNTRY_CODE
UNKNOWN_COUNTRY_CODE
WRONG_DELIVERY_OPTION
WRONG_PACKAGES_COUNT
WRONG_PACKAGE_DIMENSIONS
UNKNOWN_PARAM
MISSING_PARAMS
Przykłady wywołania:
1. Generujemy link z parametrami dla przesyłki krajowej waga 60 kg, 130x80x100 [dł x szer x wys]
https://www.globkurier.pl/wycen.php?length=130&width=80&height=100&weight=60
Otrzymujemy wynik w postaci zserializowanych danych JSON (widok sformatowany dla lepszego czytania):
{"products":[
{
"symbol":"S316",
"courier":"K-EX",
"area":"domestic",
"product":"Paleta EURO do 150kg",
"service":"LT",
"timely_delivery":0,
"delivery_time":"1",
"delivery_method":"road",
"category":"pallet“,
"description":" \r\n\r\nPaleta o wadze do 150kg, dor\u0119czenie
w pierwszym mo\u017cliwym dniu roboczym",
"producent":"3",
"product_price":"139.79",
"price_plus_fuel":"164.95",
"fuel_surcharge":"18",
"vat":"23",
"no_standard":"79.00",
"price_net":"243.95",
"price_gross":"300.06"
},
"symbol":"S113",
"courier":"DHL",
"area":"domestic",
"product":"Paleta EURO do 300kg",
"service":"AH",
"timely_delivery":0,
"delivery_time":"1",
"delivery_method":"road",
"category":"pallet“,
"description\r\nPaleta o wadze do 300kg, dor\u0119czenie w pierwszym
mo\u017cliwym dniu roboczym",
"producent":"1",
"product_price":"278.80",
"price_plus_fuel":"323.41",
"fuel_surcharge":"15",
"vat":"23",
"no_standard":"122.90",
"price_net":"446.31",
"price_gross":"548.96"
{
},
{
"symbol":"S410",
"courier":"Globkurier",
"area":"domestic",
"product":"PALETA NSTR",
"service":"",
"timely_delivery":0,
"delivery_time":"1",
"delivery_method":"road",
"category":"pallet“,
"descriptionPaleta Niestandardowa\r\nmax wymiary:
240x120x180cm\r\nwysoko\u015b\u0107 powy\u017cej 180cm - wymaga indywidualnych
ustale\u0144\r\ndor\u0119czenie do 48 godzin",
"producent":"4",
"product_price":"269.79",
"price_plus_fuel":"329.14",
"fuel_surcharge":"22",
"vat":"23",
"no_standard":"329.14",
"price_net":"404.84",
}
]}
2. Generujemy link dla przesyłki międzynarodowej eksportowej do Norwegii. 10kg 30x30x30.
https://www.globkurier.pl/wycen.php?length=30&width=30&height=30&weight=10&export=no
Wyniki:
{"products":[
{
"symbol":"S128",
"courier":"Globkurier",
"area":"domestic",
"product":"paczka drogowa 10kg",
"service":"AH",
"timely_delivery":0,
"delivery_time":"5-7",
"delivery_method":"road",
"category":"package“,
"description: "Paczka o wadze do 10kg mi\u0119dzynarodowa, transport
drogowy ",
"producent":"1",
"product_price":"165.50",
"price_plus_fuel":"191.98",
"fuel_surcharge":"15",
"vat":"0",
"discount":"1",
"price_net":"190.06",
"price_gross":"190.06"
},
{
"symbol":"S316",
"courier":"K-EX",
"area":"domestic",
"product":"Paleta EURO do 150kg",
"service":"LT",
"timely_delivery":0,
"delivery_time":"1",
"delivery_method":"air",
"category":"package“,
"description":"Paczka o wadze do 10kg mi\u0119dzynarodowa, transport
lotniczy",
"producent":"1",
"product_price":"548.66",
"price_plus_fuel":"641.93",
"fuel_surcharge":"17",
"vat":"0",
"price_net":"641.93",
"price_gross":"641.93"
}
]}
3. Błędy wywołao.
W przypadku błędnego żądania wynikiem będzie struktura opisująca błędy:
https://www.globkurier.pl/wycen.php?length=120&width=80&height=80
Wyniki:
{"errors":
{
"MISSING_PARAMS":"Nie ustawiono wszystkich wymaganych parametr\u00f3w:
weight\/length\/width\/height"
}
}