Skip to main content
Skip table of contents

[POST] Send Webhooks

Request description

The webhooks are sent when triggered by the events.

Request contains:

Request Specification:

  • Request Method: POST

  • Data Transfer Format: JSON

  • Encoding: UTF-8

Header Parameters

content-type

string

required

MIME-type

It must be equal to "application/json".

signature

string

required

Webhook signature

Webhook signature verification allows you to rest assured that the webhooks received are from Noventiq

Format: hash, hash, generated with algorithm SHA-512, from string:

CODE
[secret key];[event];[order_id];[create_date];[payment_method];[currency];[customer.email]

where:

See the signature generation example.

Body Parameters

event

string

required

Notification-triggering event
For the value options, see the reference guide.

event_date

string

required

Date and time of event
The system send a webhook on this event.

Format: YYYY-MM-DDThh:mm:ss±hh:mm.

order_id

number

required

Payment identifier
You also receive this identifier in response to the request used for creating payment object (order_id) or auto-payment processing (order_id).

order_name

string

required

Extended payment identifier
In such a format prefixes can be added to identifiers.

status

string

required

Payment status
More details on payment statuses.

Value options:

  • not paid

  • paid - payment successfully completed

  • deleted (the status is also used if a full refund has been made)

external_id

string

required

Payment identifiers on your end
This identifier you transferred when creating a payment (payment_id) or processing an auto-payment (payment_id).

create_date

string

required

Date and time of creation for payment object
If a webhook is sent on the order.created event, the date and time values in this parameter will be equal to the values transferred in event_date.

Format: YYYY-MM-DDThh:mm:ss±hh:mm.

pay_date

string

Date and time of successful payment completion
If a webhook is sent on the order.payment.succeeded, the date and time values in this parameter will be equal to the values transferred in event_date.

  • Format: YYYY-MM-DDThh:mm:ss±hh:mm.

  • If no payment has been made, the parameter is transferred having an empty value ("").

currency

string

required

Currency code of payment

  • Format: ISO 4217 alpha-3, 3 characters

  • For the value options, see the reference guide

locale

locale

required

Payment form interface language
For the value options, see the reference guide.

order_detail_url

string

required

Link leading to the payment form page
When receiving webhooks in the test environment - links will be intended for the test environment (links will have the .demoslweb.com suffix added).

customer

object

required

Customer data

customer / country

string

required

Customer's country code

customer / type

string

required

Customer type

Value options:

  • physical - natural person

  • juridical - legal person

customer / email

string

required

Customer's email
This is the value that you passed in the parameter customer.email when creating the payment.

customer / first_name

string

required

Customer's name
This is the value that you passed in the parameter customer.first_name when creating the payment.

customer / last_name

string

required

Customer's last name
This is the value that you passed in the parameter customer.last_name when creating the payment.

customer / phone

string

Customer's phone number
This is the value that you passed in the parameter customer.phone when creating the payment. If the parameter contains no value on our end, it is transferred empty ("").

customer / vat_number

string

Taxpayer identification number
This is the value that you passed in the parameter customer.vat_number when creating the payment. If the parameter contains no value on our end, it is transferred empty ("").

customer / company_name

string

Company name
This is the value that you passed in the parameter customer.company_name when creating the payment. If the parameter contains no value on our end, it is transferred empty ("").

customer / company_billing_address

string

Company's registered office address
This is the value that you passed in the parameter customer.company_billing_address when creating the payment. If the parameter contains no value on our end, it is transferred empty ("").

customer / company_delivery_address

string

Company’s physical address
This is the value that you passed in the parameter customer.company_delivery_address when creating the payment. If the parameter contains no value on our end, it is transferred empty ("").

product

object

required

Payment data

product / id

string

required

It is not applicable (a technical value is transferred).

product / vendor_code

string

It is not applicable (an empty value (NULL) or a technical value is transferred).

product / sku

string

It is not applicable (an empty value ("") or a technical value is transferred).

product / business_segment

string

It is not applicable (an empty value ("") or a technical value is transferred).

product / name

string

required

Payment descriptions
This description is filled with values of the payment_description parameter when creating a payment object (payment_description) or processing an auto-payment (payment_description).

product / price

string

required

Payment amount excluding VAT

Format: String contains numerals; value separating by point, with two decimal places.

product / quantity

number

required

It is not applicable. "1" is always transferred.

product / discount_percent

string

It is not applicable. Empty value ("") is always transferred.

product / discount_amount

string

It is not applicable. Empty value ("") is always transferred.

product / vat_percent

string

required

VAT percentage

product / vat_amount

string

required

VAT amount in payment currency

Format: String contains numerals; value separating by point, with two decimal places.

product / amount

string

required

Total payment amount in payment currency

  • Including VAT

  • Format: String contains numerals; value separating by point, with two decimal places

product / margin

string

required

Your profit margin from sales in payment currency

Format: String contains numerals; value separating by point, with two decimal places.

payment

object

required

Payment data

payment / payment_method

string

required

Payment method code
For the value options, see the reference guide.

payment / payment_system_name

string

required

Payment method name (technical value)

payment / payment_error_code

string

required*

Payment error code

* - Required if a webhook is sent on the order.payment.failed event. Otherwise, it is not transferred.

payment / payment_error_description

string

required*

Payment error description

* - Required if a webhook is sent on the order.payment.failed event. Otherwise, it is not transferred.

payment / card_type

string

Сard type
Example: Visa, MASTERCARD.

The value can be transferred if the customer has paid with a bank card. Otherwise, the parameter is transferred having an empty value ("").

payment / card_last_4

string

Last 4 digits of card number

The value can be transferred if the customer has paid with a bank card. Otherwise, the parameter is transferred having an empty value (null).

payment / card_expiration_date

string

Card expiration date

The value can be transferred if the customer has paid with a bank card. Otherwise, the parameter is transferred having an empty value ("").

Format: MM/YYYY. Example: 12/2026.

payment / is_card_expired

boolean

required

It is not applicable. False value is always transferred.

payment / is_installment_payment

boolean

required

It is not applicable. False value is always transferred.

additional_data

array [objects]

Additional parameters
These parameters can be filled out when creating payment objects (additional_data) or during processing. More details on additional parameters. Please note that the time for storing additional parameters in payments is limited.

additional_data / [object] / name

string

required*

Parameter name

* - Required, if the additional_data parameter is transferred.

additional_data / [object] / value

string

required*

Parameter value

* - Required, if the additional_data parameter is transferred.

return

object

Refund data

It is transferred if a webhook is sent on the product.returned event. Otherwise, it is not transferred.

return / type

string

required*

Action type

* - Required, if the return parameter is transferred.

Value options:

  • returned - refund/chargeback

  • removed - not used in Noventiq Payments

return / date

required*

Date and time of event.
If a webhook is sent on the product.returned event, the date and time values in this parameter will be equal to the values transferred in event_date.

  • * - Required, if the return parameter is transferred

  • Format: YYYY-MM-DDThh:mm:ss±hh:mm

return / reason

string

required*

Reason description for event

* - Required, if the return parameter is transferred.

document_part

string

required

It is not applicable. "1-of-1" is always transferred.

Response

If a webhook is successfully received, your web service should return a response to the received webhook. Response time: 1 minute.

Possible responses:

  • HTTP/1.1 200 OK - webhook successfully received

  • Any other response or no response - webhook not received

If no webhook has been received, then:

  • Sending is repeated according to the following schedule: once every 20 minutes

  • Retries continue until the HTTP/1.1 200 OK response code is received or 10 attempts are made

  • When re-sending, webhook data is not updated. If an order/payment object changes when a webhook is being sent, the contents of the webhook are not changed


Noventiq Payments

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.