# Receiving information about online payment transactions # THE TEXT BELOW PRESENTS IPN V1, WHICH WILL BE REMOVED ON FEBRUARY 1, 2026. SEE IPN V2: https://docs.simpay.pl/en/notifications/payment # Signature ## Calculating the signature when receiving a notification We generate the signature by combining all the parameters received (except for the signature) to the API in the order from the table above, separating them with a | separator and adding at the end the key available in the customer panel in the service. Hashing must be done using sha256. Example for a paid transaction using the declared currency: Example for a paid transaction using a different currency than declared: The notification is sent using the method and requires you to respond in the body with and Http Code . Endpoint: POST paymentTransactionNotification Version: 1.0.0 ## Request fields (application/json): - `id` (string, required) Transaction ID - `service_id` (string, required) Service ID - `status` (string, required) Transaction status Enum: "transaction_new", "transaction_confirmed", "transaction_generated", "transaction_paid", "transaction_failure", "transaction_expired", "transaction_canceled", "transaction_refunded" - `amount` (object, required) Billing object Example: {"value":10,"currency":"PLN","commission":9.9} - `amount.value` (number, required) Transaction amount (in paid currency) Example: 10 - `amount.currency` (string, required) Transaction currency paid by the buyer Example: "PLN" - `amount.commission` (number, required) SimPay's commission amount (in PLN or EUR) Example: 9.9 - `control` (string) Field for use by the partner Example: "88643ada8857f25a1f391395f922f7db" - `channel` (string, required) Payment channel Example: "blik" - `environment` (string, required) Enum: "production", "test" - `originalAmount` (object) Information about the original currency and amount. Object sent only when the payer changed the currency on the payment gateway. - `originalAmount.value` (number, required) Transaction amount in the currency that was sent when generating. - `originalAmount.currency` (string, required) Transaction currency that was sent when generating - `originalAmount.rate` (number, required) Currency exchange rate according to NBP exchange rates from the transaction generation period. - `signature` (string, required) Notification signature. Signature calculation shown above. The partner is obliged to verify the signature upon receiving the notification, you can also make a request to the endpoint [Retrieving transaction details](#tag/Payment/operation/paymentGetTransaction) Example: "a3116cf4f1e960223c2cc3088bf387278b6675255209bdeaf96a2f316a2fadc1"