Skip to content

Secure Payment Notification

Multiple payment notification methods

Apptus eSales RESTful API includes two different payment notification methods. The recommended notification method to use is Secure Payment Notification. Using this method also allows the cost of a product to be notified.

Server side operation only

Secure payment notifications can not be made as client side operations.

Authentication required

The HTTP header Api-Key must be present in the request.

The secure payment notification is to be sent when the visitor has placed an order of one or more products and completed payment.



URL format



Name Type Description Example
esales.sessionKey string A unique id. UUID / GUID 2F75A...EAFA6
esales.customerKey string Visitor id. UUID / GUID. 5G7HJ...R77T1 string Visitor Market Sweden
lines array[ ] Array with payment information. productKey: P1, quantity: 2, sellingPrice: 20.0, cost: 15.2
productKey string The unique key of the product. Not mandatory when variantKey is set. shirt_79709
variantKey string The unique key of the variant. Not mandatory when productKey is set. shirt_red_7980
quantity int The quantity of the purchased product. 2
sellingPrice double The selling price of the purchased product. 20.0
cost double The cost of the purchased product. If the cost is not available, cost should not be included in the notification. 15.2

Request body

    "lines": [
            "productKey": "string",
            "variantKey": "string",
            "quantity": "int",
            "sellingPrice": "double",
            "cost": "double"

Request content-type


Response content-type

HTTP response code


Response Description
204 Notifications was received successfully.
400 There were no order lines in the payment notification. Missing or invalid required arguments.
403 A Api-Key was used, but it could not be validated.
5xx Server error such as cluster unavailable or busy. The response body may contain more information about the error.


Try out the API at the Apptus API Playground with your eSales Playground and API credentials.



    "lines": [
            "quantity": 1,
            "sellingPrice": 10.35,
            "cost": 5.1,
            "variantKey": "V1"


curl -i \
-T request-body.json \
-H "Content-Type: application/json" \


HTTP/1.1 204 No Content