Skip to content

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 which can only be used server side.

Client side payments must be enabled

This payment notification method does not require any authentication and is disabled by default. Product cost cannot be notified by using this notification method. Contact Apptus Support if there is a need to enable non-authenticated payment notifications.

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

Method

POST

URL format

/api/v2/notifications/payment?esales.market={market}&esales.customerKey={customerKey}&esales.sessionKey={sessionKey}

Parameters

Name Type Description Example
esales.sessionKey string A unique id. UUID / GUID 2F75A...EAFA6
esales.customerKey string Visitor id. UUID / GUID. 5G7HJ...R77T1
esales.market string Visitor Market Sweden
lines array[ ] Array with payment information. productKey: P1, quantity: 2, sellingPrice: 20.0
productKey string The unique key of the product. shirt_79709
variantKey string The unique key of the variant. shirt_red_7980
quantity int The quantity of the purchased product. 2
sellingPrice double The selling price of the purchased product. 20

Request body

{
    "lines": [
        {
            "productKey": "string",
            "variantKey": "string",
            "quantity": "int",
            "sellingPrice": "double"
        } 
    ]
}

Request content-type

application/json

Response content-type

HTTP response code

Responses

Response Description
204 Notifications was received successfully.
400 There were no order lines in the payment notification, missing or invalid required arguments
403 Client side payment notifications has been disabled for this cluster.
5xx Server error such as cluster unavailable or busy. The response body may contain more information about the error.

Examples

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

Request

request-body.json

{
    "lines": [
        {
            "productKey":"P1",
            "quantity": 1,
            "sellingPrice": 10.35,
            "variantKey": "V2"
        }
    ]
}

cURL

#!/bin/bash
curl -i \
-X POST \
-d @request-body.json \
-H "Content-Type: application/json" \
"https://{CLUSTER-ID}.api.esales.apptus.cloud/api/v2/notifications/payment?esales.market=UK&esales.sessionKey=b106299c-eac0-4f6f-96d2-93e57c255784&esales.customerKey=d9528030-509c-4e0f-b585-7168f1e9feca"

Response

HTTP/1.1 204 No Content
×