Gniazda rozszerzeń
W module - Gniazda rozszerzeń
, dostępne są funkcjonalności pozwalające na przekazywanie danych z serwisów zewnętrznych i ich wykorzystywanie do rozszerzenia funkcjonalności naszego Systemu.
Usługa Gniazd rozszerzeń jest dostępna w katalogu usług dodatkowych (płatnych). By umożliwić zapoznanie się z funkcjonalnością, czasowo udostępniona została bezpłatnie, w trybie testowym. Docelowe korzystanie z funkcjonalności Gniazd rozszerzeń wymagać będzie jej wykupienia. |
W celu śledzenia poprawności działania połączenia z Gniazdem rozszerzeń w module Audyt udostępniono zakładkę Audyt komunikacji przez gniazda rozszerzeń z informacjami o statusach poszczególnych zapytań.
W celu skonfigurowania należy dodać Gniazdo rozszerzeń, podając jego Nazwę, wybierając Typ gniazda, podając Adres URL serwisu zewnętrznego oraz Metodę HTTP (GET lub POST). Można również dodać maksymalnie dziesięć Nagłówków składających się z Klucza i Wartości.
Dostępne są Typy gniazd:
-
Koszty dostawy - pozwalające na wyliczanie ogólnych kosztów dla niesystemowych Metod dostawy - patrz: Koszty dostawy
-
Dodatkowe koszty dostawy - pozwalające na wyliczanie opłaty dodatkowej do standardowych kosztów wynikających z Metody dostawy - patrz: Dodatkowe koszty dostawy;
Do podanego serwisu przesyłane będą dane Zamówienia w formacie json. Przykładowy komunikat:
{
"additionalData": {},
"clientExternalId": "XSmart",
"contractorExternalId": "XSmart",
"createDate": "2024-10-15T12:35:36.373Z",
"currencyRate": 1,
"deliveryAddress": null,
"deliveryCost": {
"currency": "PLN",
"gross": 12.00,
"metadata": null,
"net": 12.00,
"vat": 0.00
},
"deliveryDate": "2024-10-21T10:42:23.227Z",
"deliveryType": "ADDRESS_DELIVERY",
"id": 63,
"invoiceAddress": null,
"number": null,
"orderCurrency": "PLN",
"orderPositions": [
{
"additionalData": {
"attributes": [
{
"attribute": {
"attributeExternalId": null,
"attributeId": 3,
"attributeName": "Waga opakowania [kg]",
"type": "NUMBER"
},
"values": [
"2"
]
},
{
"attribute": {
"attributeExternalId": null,
"attributeId": 5,
"attributeName": "Wysokość opakowania [cm]",
"type": "NUMBER"
},
"values": [
"15"
]
},
{
"attribute": {
"attributeExternalId": null,
"attributeId": 6,
"attributeName": "Głębokość opakowania [cm]",
"type": "NUMBER"
},
"values": [
"25"
]
},
{
"attribute": {
"attributeExternalId": null,
"attributeId": 4,
"attributeName": "Szerokość opakowania [cm]",
"type": "NUMBER"
},
"values": [
"21"
]
}
],
"labels": [
{
"id": 1008,
"name": "WODA",
"type": "CUSTOM"
}
],
"mainCategory": {
"id": 5,
"name": "WODA"
},
"otherCategories": []
},
"id": 559,
"offerPositionId": 21010,
"ordinalNo": 1,
"positionHash": "1",
"product": {
"externalId": "XYZ12345/G",
"productId": null
},
"quantity": 5,
"saleUnitPrice": {
"currency": "PLN",
"gross": 2.56,
"net": 2.08,
"vat": 23
},
"saleUnitsInfo": [
{
"baseUnit": true,
"baseUnitRate": 1,
"clientUnit": true,
"externalId": "szt",
"qty": 5,
"shortcut": "szt",
"unitId": 1061
}
]
}
],
"pickupAddress": null,
"storeDTO": {
"externalId": "T1H",
"id": 1002,
"name": "T1H"
},
"voucherCode": ""
}
Daty przekazywane są w formacie: yyyy-MM-dd’T’HH:mm:ss.SSSXXX |
Atrybuty powiązane z zamawianym Produktem o ile m i/lub Porównywarki zewnętrzne; |
W celu prawidłowego działania gniazda konieczne jest odesłanie wartości kosztów dostawy:
-
net - wartość netto;
-
vat - informacja liczbowa o zastosowanej stawce VAT;
-
gross - wartość brutto;
-
currency - trzyliterowy skrót określający walutę, w której podano wartości.
Dodatkowo umożliwiono przetwarzanie komunikatów zwrotnych z metadanymi z komentarzem do naliczanej opłaty/opłaty dodatkowej. Komentarz taki prezentowany będzie w Podsumowaniu zamówienia w Koszyku w Sklepie.
Przykładowy fragment komunikatu zwrotnego, przy korzystaniu z Gniazda rozszerzeń typu Dodatkowe koszty dostawy:
{
"currency": "PLN",
"gross": 4.10,
"metadata": {
"comment": "Opłata dodatkowa"
},
"net": 4.10,
"vat": 0
}
Koszty dostawy
Po skonfigurowaniu Gniazda rozszerzeń należy połączyć je z wybraną Metodą dostawy
. W tym celu dla wybranej własnej Metody dostawy należy w zakładce Koszty dostawy zmienić Typ kosztów dostawy na Zewnętrzny oraz wybrać odpowiednie Gniazdo rozszerzeń w polu Źródło danych.
Dodatkowe koszty dostawy
Zastosowanie Gniazda rozszerzeń - Dodatkowe koszty dostawy pozwala na dodawanie do dowolnej Metody dostawy dodatkowych opłat, które można wyliczyć zewnętrznie na podstawie przekazywanych danych.
Po skonfigurowaniu Gniazda rozszerzeń o typie Dodatkowe koszty dostawy należy połączyć je z wybraną Metodą dostawy
. W tym celu dla wybranej własnej Metody dostawy należy w zakładce Koszty dostawy dodać w opcji: Dodatkowe koszty dostawy (zewnętrzne) skonfigurowane Gniazdo rozszerzeń.
