Aby utworzyć płatność w imoje, należy wysłać żądanie metodą POST lub GET na adres {server}/payment z poniższymi parametrami.

Do autoryzacji zapytania wykorzystywana jest sygnarura, którą również należy zamieścić w zapytaniu. Sposób wyliczenia sygnatury znajdziesz tutaj.

Parametry zapytania

Parametr Typ Parametr wymagany Opis
serviceId string(36) TAK Identyfikator sklepu klienta jako UUID v4
merchantId string(20) TAK Identyfikator klienta
amount string TAK Kwota transakcji w najmniejszej jednostce waluty np. grosze
currency string(3) TAK Waluta transakcji w standardzie ISO 4217
orderId string(100) TAK Numer zamówienia
Dopuszczalne znaki: A-Za-z0-9#_-./ oraz znak spacji(0x20) i znaki z zakresu UNICODE 00C0 - 02C0 (m.in. polskie znaki diakrytyczne)
customerFirstName string(100) TAK Imię osoby składającej zamówienie
Dopuszczalne znaki: A-Za-z0-9-,. oraz znak spacji(0x20) i znaki z zakresu UNICODE 00C0 - 02C0 (m.in. polskie znaki diakrytyczne), 0400 - 04FF (cyrylica)
customerLastName string(100) TAK Nazwisko osoby składającej zamówienie
Dopuszczalne znaki: A-Za-z0-9-,. oraz znak spacji(0x20) i znaki z zakresu UNICODE 00C0 - 02C0 (m.in. polskie znaki diakrytyczne), 0400 - 04FF (cyrylica)
signature string TAK Wyliczona sygnatura
customerEmail string(200) NIE Adres e-mail w formacie zgodnym ze standardem RFC 5322 oraz RFC 6531
customerPhone string(20) NIE Numer telefonu osoby składającej zamówienie
Dopuszczalne znaki: -+0-9 oraz spacja.
Wartość parametru zawierać może maksymalnie 20 znaków
orderDescription string(255) NIE Tytuł transakcji
Dopuszczalne znaki: A-Za-z0-9#&_-,.\/ oraz znak spacji(0x20) i znaki z zakresu UNICODE 00C0 - 02C0 (m.in. polskie znaki diakrytyczne)
additionalDescription string NIE Szczegóły zamówionych produktów lub usług
urlSuccess string(300) NIE Adres URL, na który użytkownik będzie przekierowany po pomyślnie zakończonej transakcji.
Adres musi być zgodny ze standardem RFC 3986 i zawierać hosta.
Nazwa domeny nie może być absolutna (FQDN).
urlFailure string(300) NIE Adres URL, na który użytkownik będzie przekierowany po błędnie dokonanej transakcji.
Adres musi być zgodny ze standardem RFC 3986 i zawierać hosta.
Nazwa domeny nie może być absolutna (FQDN).
urlReturn string(300) NIE Adres URL, na który użytkownik będzie przekierowany po dokonaniu transakcji.
Adres musi być zgodny ze standardem RFC 3986 i zawierać hosta.
Nazwa domeny nie może być absolutna (FQDN).
urlNotification string(300) NIE Dynamiczny adres notyfikacji, możliwość ustawienia konkretnego adresu dla pojedynczej transakcji.
visibleMethod string NIE Metody płatności widoczne na bramce płatności
Dostępne wartości:
card
wallet
pbl
blik
imoje_paylater
wt
lease
imoje_installments
Jeśli tego pola nie ma lub jest puste to są wyświetlane wszystkie włączone w sklepie klienta metody płatności.
Istnieje wiele konfiguracji wyświetlanych metod płatności. Należy je zawsze rozdzielać przecinkiem (np. card,pbl)
validTo string NIE Data ważności linku jako timestamp w sekundach.
Brak realizacji płatności do tego czasu spowoduje jej anulowanie.
Jeżeli nie jest przekazane to link ważny jest do czasu ustawionego w parametrze Aktywność płatności w Panelu Administracyjnym imoje (ustawienia sklepu) lub po upływie 15 miesięcy.
Przekazanie parametru validTo= NULL powoduje brak wygaśnięcia linku z pominięciem ustawień w parametrze Aktywność płatności na Panelu Administracyjnym imoje (ustawienia sklepu).
Minimalny czas ważności linku to 60 sekund.
preselectMethodCode string(20) NIE Kanał płatności ustawiony jako domyślny i automatycznie wybrany po otwarciu bramki płatności.
Jeśli tego pola nie ma to bramka otwiera się bez wybranego zaznaczonego kanału płatności.
Pole nie może być zdefiniowane i pozostawione bez wartości.
billing string NIE Dane płatnika - zobacz tabelę poniżej
shipping string NIE Dane dostawy - zobacz tabelę poniżej
isKsef string NIE Czy generować identyfikator płatności KSeF (IPKSeF).
Dopuszczalne znaki: 1 - tak, 0 - nie

Parametry dla tablicy billing:

Parametr Typ Parametr wymagany Opis
firstName string(100) TAK Imię klienta,
dopuszczalne znaki: A-Za-z0-9#&_-"',.\/ oraz znak spacji(0x20) i znaki z zakresu UNICODE 00C0 - 02C0 (m.in. polskie znaki diakrytyczne), 0400 - 04FF (cyrylica)
lastName string(100) TAK Nazwisko klienta,
dopuszczalne znaki: A-Za-z0-9#&_-"',.\/ oraz znak spacji(0x20) i znaki z zakresu UNICODE 00C0 - 02C0 (m.in. polskie znaki diakrytyczne), 0400 - 04FF (cyrylica)
company string(200) NIE Nazwa firmy,
dopuszczalne znaki: A-Za-z0-9 oraz znak spacji (0x20)
street string(200) NIE Ulica,
dopuszczalne znaki: A-Za-z0-9 oraz znak spacji (0x20)
city string(100) NIE Miasto,
dopuszczalne znaki: A-Za-z0-9 oraz znak spacji (0x20)
region string(100) NIE Region,
Dopuszczalne znaki: A-Za-z0-9 oraz znak spacji (0x20)
postalCode string(30) NIE Kod pocztowy
countryCodeAlpha2 string(20) NIE Kod kraju Alpha2
taxId string(12) NIE Numer identyfikacji podatkowej

Parametry dla tablicy shipping:

Parametr Typ Parametr wymagany Opis
firstName string(100) TAK Imię klienta,
dopuszczalne znaki: A-Za-z0-9#&_-"',.\/ oraz znak spacji(0x20) i znaki z zakresu UNICODE 00C0 - 02C0 (m.in. polskie znaki diakrytyczne), 0400 - 04FF (cyrylica)
lastName string(100) TAK Nazwisko klienta,
dopuszczalne znaki: A-Za-z0-9#&_-"',.\/ oraz znak spacji(0x20) i znaki z zakresu UNICODE 00C0 - 02C0 (m.in. polskie znaki diakrytyczne), 0400 - 04FF (cyrylica)
company string(200) NIE Nazwa firmy,
dopuszczalne znaki: A-Za-z0-9 oraz znak spacji (0x20)
street string(200) NIE Ulica,
dopuszczalne znaki: A-Za-z0-9 oraz znak spacji (0x20)
city string(100) NIE Miasto,
dopuszczalne znaki: A-Za-z0-9 oraz znak spacji (0x20)
region string(100) NIE Region,
dopuszczalne znaki: A-Za-z0-9 oraz znak spacji (0x20)
postalCode string(30) NIE Kod pocztowy
countryCodeAlpha2 string(2) NIE Kod kraju Alpha2

Przykład zapytania jako formularz HTML

<input type="hidden" value="63f574ed-d90d-4abe-9cs1-39117584a7b7" name="serviceId">
<input type="hidden" value="6yt3gjtm9p1odfgx8491" name="merchantId">
<input type="hidden" value="100" name="amount">
<input type="hidden" value="PLN" name="currency">
<input type="hidden" value="yourOrderId" name="orderId">
<input type="hidden" value="yourDescription" name="orderDescription">
<input type="hidden" value="John" name="customerFirstName">
<input type="hidden" value="Doe" name="customerLastName">
<input type="hidden" value="johndoe@domain.com" name="customerEmail">
<input type="hidden" value="https://your-shop.com/success" name="urlSuccess">
<input type="hidden" value="https://your-shop.com/failure" name="urlFailure">
<input type="hidden" value="https://your-shop.com/return" name="urlReturn">
<input type="hidden" value="cd5024f5ce5e6ff47990fe60572758fbcbcd6e3c04895d6815932b2d14e04ffd;sha256" name="signature">


Każdy nieopłacony link wygaśnie automatycznie po upływie 15 miesięcy od daty jego utworzenia. Jeśli chcesz aby wygasał szybciej, skorzystaj z parametru validTo