Skip to main content

Payment Notification

The payment notification is used to notify the business partner that the customer has paid the transaction.

It is a plain text POST request sent to your pnURL, which is specified in createDisposition.

  • Payment notification is only delivered if the customer entered a PIN on the payment panel and the transaction is ready to be executed.

  • In case of technical errors, for example socket timeout, or application errors, for example HTTP 500 response, the payment notification is resubmitted at a regular interval until one of the following criteria is fulfilled:

    • The payment notification is successfully delivered, meaning an HTTP 200 response is received from the payment server.

    • The maximum number of retry attempts has been reached. This is currently configured at 5 retries.

    • The payment has been closed successfully without answering the payment notification, independent of the transaction status.

    • The payment status changes to X.

  • Included parameters are: mtid, eventType always ASSIGN_CARDS, serialNumbers, currency, disposition amount, and cardTypeID, which is the country code plus the ID of the card, for example AT_classic.

  • The business partner must respond with HTTP 200 upon receiving the payment notification.

  • The payment notification will be sent from one of the following IP addresses.

IP addresses​

18.197.120.90
18.158.237.76
3.64.155.76
3.76.4.148
3.127.123.143
176.34.172.250
54.228.173.185
52.48.213.182
18.200.202.144

Example​

mtid=3516-6s4dfsad41&eventType=ASSIGN_CARDS&serialNumbers=1888540789315005%3BEUR%3B1.00%3BAT00002%3B

JSON payment notification​

A JSON version with all possible parameters is also available.

Example​

{
"body": {
"timestamp": 1601916702012,
"eventType": "ASSIGN_CARDS",
"version": "1",
"data": {
"mid": "1090002661",
"customer": {
"id": "kfoLkCq3RBIIJiF6sJWBeYA4tnfsCms2"
},
"payment_id": "3516-6s4dfsad41",
"payment_instrument": "paysafecard",
"payment_instrument_subtype": "code",
"card_details": [
{
"serial": "1888540789315005",
"currency": "EUR",
"amount": 1,
"type": "00002",
"country": "AT"
}
]
}
}
}

JSON payment notification response objects​

ParameterTypeDescription
timestampUnix timestamp in msThe time of the card assign event.
eventTypeStringThe event type that triggered the payment notification.
versionStringAPI version number.
dataArrayContains the data of the transaction.
midStringThe 10-digit Merchant ID.
customerArrayContains the customer data.
idStringThe unique customer identifier provided by the business partner.
submerchant_idStringThe sub-merchant ID. Also known as reporting criteria. Only returned if provided during payment request.
payment_idStringThe PaysafeCard transaction ID. Unique identifier for a payment.
payment_instrumentStringThe payment method used. Possible values are paysafecard, paysafecash, giftcard, pagoefectivo, or safetypay. Contact PaysafeCard if you want this parameter.
payment_instrument_subtypeStringThe subtype of the payment method used. Possible values are: for giftcard, cvspharmacy, dollargeneral, openbuckscard; for safetypay and pagoefectivo, cash or online; for PaysafeCard, code or account. Contact PaysafeCard if you want this parameter.
card_detailsArrayContains the details of the card used for the transaction, up to 10 iterations, which is the maximum number of cards that can be used in a single transaction, with the card information.
serialStringThe serial number that identifies the card.
currencyStringThe currency code of the card in ISO 4217 3-digit format.
amountfloatThe amount used from the card, with 2 decimal numbers.
typeStringThe 5-character code that identifies the card type.
countryArrayThe country code of the card in ISO 3166-1 2-digit format.
note

The business partner must contact the PaysafeCard integration team at integration@paysafecard.com if this version is preferred.