Files
carei.pagedev.pl/docs/rent-api-03-rezerwacje-i-platnosci.md
2026-03-23 12:32:36 +01:00

423 lines
11 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Softra Rent API - Transkrypcja: Rezerwacje i p?atno?ci
> ?r?d?o: "Oferta 37 Softra_Rent_API - zaaczni k Specyfikacja_Rent_RESTAPI_1_15.pdf"
9. Utworzenie rezerwacji
Opis: Rezerwacja wstępna pojazdu na X minut dla wybranej kategorii pojazdu, okresu najmu,
określonych warunków klienta ewentualnie podanej marki i modelu pojazdu, wraz podaną
listą dodatków wyposażenia. Zwraca numer rezerwacji.
URL : /rent/makebooking
Typ metody : POST
Nagłówki:
"Authorization: Bearer [token]"
Parametry JSON Object
Nazwa Opis pola Typ danych Wymagalność
dateFrom data początku najmu YYYY-
MM-DDTHH24:MI:SS
String TAK
dateTo data końca najmu YYYY-MM-
DDTHH24:MI:SS
String TAK
customerId identyfikator klienta String TAK
payerId identyfikator płatnika String NIE
pickUpLocation Miejsce/adres wydania
pojazdu
RentLocation TAK
pickUpComments uwagi dot. podstawienia String(50) NIE
pickUpCommentsEx uwagi dot. faktycznego
podstawienia
String(255) NIE
returnLocation Miejsce/adres odbiotu
pojazdu
RentLocation TAK
returnComments uwagi dot. odbioru String(50) NIE
returnCommentsEx uwagi dot. faktycznego
odbioru
String(255) NIE
carParameters Parametry pojazdu CarParameters TAK
priceListId identyfikator cennika String TAK
depositValue wysokość kaucji BigDecimal NIE
validTime ilość minut określająća czas
po którym rezerwacja
zostanie anulowana w
systuacji gdy nie zostanie
dokonana płatność (nie
nastąpi wywołanie meotdy
rent/confirm). API cyklicznie
(co 5 minut) sprawdza i
anuluje nie opłacone
rezerwacje po przekroczeniu
limitu określonego przez
parametr valid_time
Integer TAK
priceItems lista usług dodatkowych List<BookingPriceItem> NIE
drivers lista kierowców List<DriverItem> NIE
agreementItems lista zgód
marketingowych/oświadczeń
zaznaczonych przez klienta
List<AgreementItem> NIE
comments Uwagi do rezerwacji String(500) NIE
Obiekt RentLocation:
Nazwa pola Opis pola Typ danych Uwagi
branchName Symbol oddziału String(10) TAK
outOfBranch jedna z wartości: [N, A, P]
'N' - brak podstawienia/zwrotu pod
adres,
String(1) TAK
'A' podstawienie/zwrot pod
adres,
'P' - punkt z listy oddziałów
address Podstawienei/zwrot pod adres String(100) TAK/NIE
pointName Podstawienie/zwrot do puktu.
Punkt
String(10) TAK/NIE
Obiekt CarParameters:
Nazwa pola Opis pola Typ danych Wymagalność
brand Marka pojazdu String(40) NIE
model Model pojazdu String(40) NIE
categoryName Klasa pojazdu String(10) TAK
gearBoxType Rodzaj skrzyni biegów String(10) NIE
bodyType Rodzaj nadwozia String(10) NIE
seatCount Ilość miejsc Integer NIE
doorCount Ilość drzwi Integer NIE
bagCount Ilość walizek Integer NIE
drivingGearType Rodzaj napędu String(10) NIE
fuelType Rodzaj paliwa String(10) NIE
group Grupa modelowa pojazdu String(10) NIE
Obiekt BookingPriceItem:
Nazwa pola Opis pola Typ danych Wymagalność
id idetyfikator elementu usługi
dodatkowej
String TAK
name nazwa usługi dodatkowej String(50) TAK
unit jednostka miary usługi
dodatkowej
String(10) TAK
amount ilość BigDecmial TAK
priceBeforeDiscount cena przed rabatem BigDecmial TAK
discount wysokosc rabatu BigDecmial TAK
priceAfterDiscount cena po rabacie BigDecmial TAK
Obiekt DriverItem:
Nazwa pola Opis pola Typ danych Wyamgalność
firstName imię String(20) TAK
lastName nazwisko String(30) TAK
address adres DriverAddress TAK
pesel PESEL String(11) TAK
phone telefon String(60) NIE
phoneMobile telefon kom. String(60) NIE
email e-mail String(50) NIE
idCard dane dot.
dowodu os.
CustomerIdDoc NIE
passportNo numer paszportu String(20) NIE
driveLicence dane dot prawa
jazdy
CustomerDriveLicence NIE
country kraj String(10) NIE
birthDate data urodzenia
format YYYY-
MM-DD
HH24:MI:SS
String NIE
birthCity miejsce
urodzenia
String(30) NIE
Obiekt DriverAddress:
Nazwa pola Opis pola Typ danych Uwagi
city miejscowość String(30) TAK
zipCode kod pocztowy String(10) TAK
street ulica String(60) TAK
Obiekt AgreementItem:
Nazwa pola Opis pola Typ danych Uwagi
id dentyfiaktor oświadczenia (patrz
metoda GetAgreementsDefList)
String TAK
value Zgoda /brak zgody Boolean TAK
Odpowiedź : Obiekt typu BookingResult
Obiekt BookingResult
Nazwa pola Opis pola Typ danych Uwagi
success Sukces/Bąd Boolean
rejectReason Przyczyna niepowodzenia String CAR_NOT_FOUND
reservationId identyfikator rezerwacji String
reservationNo numer rezerwacji String
grossValue wartość brutto rezerwacji wraz z
kaucją
BigDecimal
10. Dodanie klienta do istniejącej rezerwacji
Opis: Dodaje klienta do istniejącej rezerwacji ( przypadek z rezerwacją na klienta
anonimowego)
URL : /customer/addToReservation
Typ metody : POST
Nagłówki:
"Authorization: Bearer [token]"
Parametry JSON Object
Nazwa Opis pola Typ danych Wymagalność
customerId identyfikator klienta z systermu
Flota. Parametr customer_id
otrzymujemy metodą GetCustomer
lub AddCustomer
String TAK
reservationId identyfikator rezerwacji String TAK
Odpowiedź :
Nazwa pola Opis pola Typ danych Uwagi
success Sukces/Błąd Boolean
rejectReason Przyczyna niepowodzenia String
11. Potwierdzenie rezerwacji
Opis: Zmienia rezerwację na potwierdzoną
URL : /rent/confirm
Typ metody : POST
Nagłówki:
"Authorization: Bearer [token]"
Parametry JSON Object
Nazwa Opis pola Typ danych Wymagalność
reservationId identyfikator rezerwacji String TAK
Odpowiedź : Obiekt typu ConfirmResult
Nazwa pola Opis pola Typ danych Uwagi
success Sukces/Błąd Boolean
rejectReason Przyczyna niepowodzenia String
12. Anulowanie rezerwacji
Opis: Anuluje rezerwację dla podanego identyfikatora rezerwacji
URL : /rent/cancel
Typ metody : POST
Nagłówki:
"Authorization: Bearer [token]"
Parametry JSON Object
Nazwa pola Opis pola Typ danych Wymagalność
reservationId id wynajmu/rezerwacji String TAK
reason przyczyna anulowania String(255) TAK
Odpowiedź : Obiekt typu CancelBookingResponse
Obiekt CancelBookingResponse
Nazwa pola Opis pola Typ danych Uwagi
success Sukces/Błąd Boolean
rejectReason Przyczyna niepowodzenia String
19. Podsumowanie opłat przed złożeniem rezerwacji
Opis: Metoda zwraca podsumowanie rezerwacji z elementami wyceny. W zwróconej
odpowiedzi mogą pojawiać się elementy dodatkowe - np. doliczona opłata za zwrot w innym
oddziale, opłata za obsługę po godzinach pracy itp.
URL : /rent/princingSummary
Typ metody : POST
Nagłówki:
"Authorization: Bearer [token]"
Parametry JSON Object
Przyjmowane parametry:
Nazwa Opis pola Typ danych Wymagalność
dateFrom data początku najmu String TAK
dateTo data końca najmu String TAK
customerId identyfikator klienta String TAK
payerId identyfikator płatnika String NIE
pickUpLocation Miejsce/adres
wydania pojazdu
RentLocation TAK
returnLocation Miejsce/adres odbiotu
pojazdu
RentLocation TAK
carParameters Parametry pojazdu CarParameters TAK
priceListId identyfikator cennika String TAK
depositValue wysokość kaucji BigDecimal NIE
priceItems lista usług
dodatkowych
List<BookingPriceItem> NIE
Obiekt BookingPriceItem:
Nazwa pola Opis pola Typ danych Wymagalność
id idetyfikator elementu usługi
dodatkowej
String TAK
name nazwa usługi dodatkowej String(50) TAK
unit jednostka miary usługi dodatkowej String(10) TAK
amount ilość BigDecmial TAK
priceBeforeDiscount cena przed rabatem BigDecmial TAK
dicount wysokosc rabatu BigDecmial TAK
priceAfterDiscount cena po rabacie BigDecmial TAK
Odpowiedź : Obiekt typu SummaryResponse
Obiekt SummaryResponse
Nazwa pola Opis pola Typ danych Uwagi
totalNetValue wartość netto rezerwacji BigDecimal
totalVatValue wartość vat rezerwacji BigDecimal
totalGrossValue wartość brutto rezerwacji BigDecimal
pricelist lista elementów wyceny List<PriceItem>
Obiekt PriceItem
Nazwa pola Opis pola Typ danych Uwagi
id id opłaty String
name nazwa opłaty String(50)
code symbol opłaty String
unit jednostka miary String(10)
amount ilość BigDecmial
priceBeforeDiscount cena przed rabatem BigDecmial
dicount wysokosc rabatu % BigDecmial
priceAfterDiscount cena po rabacie BigDecmial
netValue wartosc netto BigDecmial
vatRate stopa vat "23%" String
vatValue wartość vat BigDecmial
grossValue wartość brutto BigDecmial
addedBySystem true oznacza że jest to dodatkowa
opłata doliczona przez system z
automatu
Boolean
systemItemType rodzaj doliczonej automatycznie
opłaty:
1 - opłata za zwrot w innym
oddziale,
2 - wydanie auta po godzinach
pracy
3 - wydanie auta w godzinach
pracy
4 - zdanie auta po godzinach pracy
5 - zdanie auta w godzinach pracy
Integer
23. Dodawanie wpłat i kaucji do rezerwacji
Opis: Pozwala na dodawanie wpłat i kaucji do zamówienia/rezerwacji
URL : /rent/payment/add
Typ metody : POST
Nagłówki:
"Authorization: Bearer [token]"
Parametry JSON Object
Nazwa pola Opis pola Typ danych Wymagalność
reservationId id zamówienia/rezerwacji String TAK
paymentDate data płatności String TAK
paymentMethod sposób płatności ['GOTÓWKA',
'PRZELEW', 'KARTA PŁ.', 'PREAUTORYZ',
'INNE']
String TAK
paymentType rodzaj płatności
['wpłata','kaucja','preautoryzacja','zaliczka
częściowa','zaliczka całkowita']
String TAK
currency symbol waluty String(3) TAK
grossValue kwota wpłaty w walucie BigDecimal TAK
paymentNo numer płatności String(20) NIE
paymentState „Do pobrania”, „Pobrano”, „Zwrócono” TAK
Odpowiedź : Obiekt typu PaymentAddResponse
Nazwa pola Opis pola Typ danych Uwagi
paymentId Id utworzenego obiektu płatności
String
24. Pobieranie listy opłat dodatkowych dla podanej rezerwacji /
wynajmu
Opis: Zwraca listę opłat dodatkowych dla podanego id wynajmu/rezerwacji
URL : /rent/pricelist/list
Typ metody : GET
Nagłówki:
"Authorization: Bearer [token]"
Parametry JSON Object
Nazwa Opis pola Typ danych Wymagalność
rentId id wynajmu/rezerwacji String TAK
Odpowiedź : Obiekt typu List< RentAdditionalPriceItem>
Obiekt RentAdditionalPriceItem
Nazwa pola Opis pola Typ danych Uwagi
itemId id opłaty dodatkowej String
name nazwa opłaty dodatkowej String
nameCode symbol nazwy String
vatRate stopa va BigDecimal
symbolVat symbol vat String
amount ilość String
currency waluta String
netPrice cena netto BigDecimal
grossPrice cena brutto BigDecimal
unit jednostka miary String
discountValue wartość rabatu BigDecimal
discountPercent procent rabatu BigDecimal
netValue wartość netto BigDecimal
vatValue wartość vat BigDecimal
grossValue wartość brutto BigDecimal
payerShortName symbol płatnika String
25. Pobieranie listy wpłat dla podanej rezerwacji / wynajmu
Opis: Zwraca listę wpłat dla podanego id wynajmu/rezerwacji
URL : /rent/payment/list
Typ metody : GET
Nagłówki:
"Authorization: Bearer [token]"
Przyjmowane parametry:
Nazwa Opis pola Typ danych Wymagalność
rentId id wynajmu/rezerwacji String TAK
Odpowiedź : Obiekt typu List< RentPaymentItem>
Obiekt RentPaymentItem
Nazwa pola Opis pola Typ danych Uwagi
itemId Id wpłaty String
rentId id wynajmu/rezerwacji Integer
type rodzaj wpłat/kaucja/zaliczka itp String
comments uawgi String
date data wpłaty String
grossValue wartość brutto w walucie BigDecimal
paymentMethod metoda płatności String
paymentDirection Pobrano/Zwrócono/Do pobrania String
currency waluta String
grossPlnValue wartość brutto PLN BigDecimal
payerShortName symbol płatnika String
26. Dodawanie płatnika
Opis: Dodaje klienta (będącego płatnikiem) do kartoteki klientów w systemie Flota Rent
URL : /payer/add
Typ metody : POST
Nagłówki:
"Authorization: Bearer [token]"
Parametry JSON Object
Przyjmowane parametry:
jak dla metody customer/add
Odpowiedź : taka jak dla metody customer/add