simpay-api (1.0.0)
https://docs.simpay.pl/_mock/apis/
https://api.simpay.pl/
- Mock server
https://docs.simpay.pl/_mock/apis/payment
https://api.simpay.pl/payment
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
https://docs.simpay.pl/_mock/apis/payment \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>'
{ "success": true, "data": [ { … } ], "pagination": { "total": 1, "count": 1, "per_page": 15, "current_page": 1, "total_pages": 1, "links": { … } } }
- Mock server
https://docs.simpay.pl/_mock/apis/payment/{serviceId}
https://api.simpay.pl/payment/{serviceId}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://docs.simpay.pl/_mock/apis/payment/{serviceId}' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>'
{ "success": true, "data": { "id": "d151e4f9", "name": "Usługa testowa", "status": "service_active", "created_at": "2021-11-08T18:19:16+01:00" } }
- Mock server
https://docs.simpay.pl/_mock/apis/payment/{serviceId}/channels
https://api.simpay.pl/payment/{serviceId}/channels
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://docs.simpay.pl/_mock/apis/payment/{serviceId}/channels' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>'
{ "success": true, "data": [ { … }, { … } ] }
- Mock server
https://docs.simpay.pl/_mock/apis/payment/{serviceId}/transactions
https://api.simpay.pl/payment/{serviceId}/transactions
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://docs.simpay.pl/_mock/apis/payment/{serviceId}/transactions' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>'
Id transakcji
Status transakcji
{ "success": true, "data": [ { … }, { … } ], "pagination": { "total": 2, "count": 2, "per_page": 15, "current_page": 1, "total_pages": 1, "links": { … } } }
Opis transakcji nadany przez partnera, prezentowany na bramce płatności
W tym polu można przesłać Id kanału, wtedy płacący zostanie przekierowany od razu na stronę podanego kanału np. przy podaniu blik
zostanie przekierowany od razu na bramkę płatności BLIK. Wymagane jest wtedy przesłanie antifraud.useragent
oraz customer.ip
.
Tablica z Id kanałów płatności, które zostaną wyświetlone płacącemu na bramce po przekierowaniu na url transakcji
Listę dostępnych kanałów wraz z ich Id możemy uzyskać tutaj Pobieranie listy kanałów dla usługi
Obiekt w którym możemy zdefiniować które typu kanłów mają być dostępne na bramce płatności
- Mock server
https://docs.simpay.pl/_mock/apis/payment/{serviceId}/transactions
https://api.simpay.pl/payment/{serviceId}/transactions
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
'https://docs.simpay.pl/_mock/apis/payment/{serviceId}/transactions' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"amount": 1,
"currency": "PLN",
"description": "string",
"control": "string",
"customer": {
"name": "string",
"email": "user@example.com",
"ip": "string",
"countryCode": "PL"
},
"antifraud": {
"useragent": "string",
"steamid": 0,
"mcusername": "string",
"mcid": "string"
},
"billing": {
"name": "string",
"surname": "string",
"street": "string",
"building": "string",
"flat": "string",
"city": "string",
"region": "string",
"postalCode": "string",
"country": "string",
"company": "string"
},
"shipping": {
"name": "string",
"surname": "string",
"street": "string",
"building": "string",
"flat": "string",
"city": "string",
"region": "string",
"postalCode": "string",
"country": "string",
"company": "string"
},
"cart": [
{
"name": "string",
"quantity": 1,
"price": 0.01,
"producer": "string",
"category": "string",
"code": "string"
}
],
"returns": {
"success": "string",
"failure": "string"
},
"directChannel": "string",
"channels": [
"string"
],
"channelTypes": {
"blik": true,
"transfer": true,
"cards": true,
"ewallets": true,
"paypal": true,
"paysafe": true,
"latam": true
},
"referer": "string"
}'
{ "success": true, "data": { "transactionId": "1d87a1b3-18f8-4146-bcb1-c0c9f293b04f", "redirectUrl": "https://pay.simpay.pl/1d87a1b3-18f8-4146-bcb1-c0c9f293b04f" } }
- Mock server
https://docs.simpay.pl/_mock/apis/payment/{serviceId}/transactions/{transactionId}
https://api.simpay.pl/payment/{serviceId}/transactions/{transactionId}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://docs.simpay.pl/_mock/apis/payment/{serviceId}/transactions/{transactionId}' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>'
Id transakcji
Identyfikator transakcji udostępniony płacącemu
Status transakcji
{ "success": true, "data": { "id": "328bd42d-d08b-43f6-9463-869e5bd32b4", "payer_transaction_id": "477YDX14", "status": "transaction_paid", "amount": { … }, "channel": "nest", "control": null, "description": null, "redirect": { … }, "customer": { … }, "billing": { … }, "shipping": { … }, "cart": null, "paid_at": "2023-12-07T05:21:50+01:00", "expires_at": null, "created_at": "2023-12-07T05:20:30+01:00", "updated_at": "2023-12-07T05:21:50+01:00" } }
- Mock server
https://docs.simpay.pl/_mock/apis/payment/{serviceId}/currencies
https://api.simpay.pl/payment/{serviceId}/currencies
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://docs.simpay.pl/_mock/apis/payment/{serviceId}/currencies' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>'
{ "success": true, "data": [ { … }, { … }, { … } ] }
- Mock server
https://docs.simpay.pl/_mock/apis/payment/{serviceId}/blik/level0/{transactionId}
https://api.simpay.pl/payment/{serviceId}/blik/level0/{transactionId}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
'https://docs.simpay.pl/_mock/apis/payment/{serviceId}/blik/level0/{transactionId}' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"ticket": {
"T6": "123123"
}
}'
Request
PONIŻSZY TEKST PRZEDSTAWIA IPN V1, KTÓRE ZOSTANIE USUNIĘTE 1 LUTEGO 2026. ZOBACZ IPN V2:
https://docs.simpay.pl/notifications/payment
Sygnatura
Obliczanie sygnatury przy odbieraniu notyfikacji
Sygnature generujemy za pomocą zestawienia ze sobą wszystkich odebranych parametrów (oprócz signature) do API w kolejności z dostępnej powyżej tabli oddzielając je seperatorem | i dodając na końcu klucz dostępny w panelu klienta w usłudze.
Hashowanie musi odbyć się za pomocą sha256.
Przykład dla opłaconej transakcji przy pomocy zadeklarowanej waluty:
dc261d4f-31ef-4728-bfd6-97bbe2a5ef0a|e14f8074|transaction_paid|10|PLN|9.9|88643ada8857f25a1f391395f922f7db|blik|production|klucz
Przykład dla opłaconej transakcji za pomocą innej waluty niż zadeklarowanej:
dc261d4f-31ef-4728-bfd6-97bbe2a5ef0a|e14f8074|transaction_paid|4.31|PLN|0.06|88643ada8857f25a1f391395f922f7db|blik|production|1.00|EUR|4.3123|klucz
Notyfikacja wysyłana jest metodą POST
i wymaga od Ciebie odpowiedzi w body OK
oraz Http Code 200
.
Id transakcji
Status transakcji
Obiekt rozliczeniowy
Informacje o oryginalnej walucie i kwocie. Obiekt wysyłany tylko wtedy, gdy płacący zmienił walutę na bramce płatności.
Sygnatura notyfikacji. Wyliczanie sygnatury pokazane wyżej.
Partner ma obowiązek weryfikować sygnaturę przy otrzymaniu powiadomienia, można też wykonać request do endpointu Pobieranie szczegółów transakcji
- Mock server
https://docs.simpay.pl/_mock/apis/paymentTransactionNotification
https://api.simpay.pl/paymentTransactionNotification
{ "id": "dc261d4f-31ef-4728-bfd6-97bbe2a5ef0a", "service_id": "e14f8074", "status": "transaction_paid", "amount": { "value": 10, "currency": "PLN", "commission": 9.9 }, "control": "88643ada8857f25a1f391395f922f7db", "channel": "blik", "environment": "production", "signature": "a3116cf4f1e960223c2cc3088bf387278b6675255209bdeaf96a2f316a2fadc1" }
OK