Skip to main content

Callback

Webhook 

To promptly inform merchants about changes in the status of processed orders, we send POST requests with order data to the merchant's endpoint. We include a control signature in the headers, api-notification-sign (SHA512), to safeguard the security and authenticity of the data received. See how to configure callback.

Request

Body

    data object
    id integerrequired

    The internal unique identifier of the order within the system. Used for referencing the order when contacting technical support in case of any issues.

    shopId integerrequired

    The unique identifier of the shop initiating the order.

    orderNumber stringrequired

    A unique identifier for the order, generated by the merchant, and specific to each shopId.

    orderStatus stringrequired

    Possible values: [in_progress, failed, completed, rejected, canceled, refunded]

    Status of the order. Description of Statuses

    cost objectrequired

    Container for cost-related information.

    amount stringrequired

    Total cost of the order, formatted as a decimal string with a period (.) as the decimal separator.

    Please note that the final amount may differ from the original value specified during order creation, as some providers allow customers to modify the payment amount or may adjust the order amount slightly themselves. This field always reflects the most up-to-date order amount."

    currency stringrequired

    Specifies the currency in ISO 4217 alphabetic code format, consisting of 3 uppercase letters.

    timeLimit date-timerequired

    Payment timelimit for the order in RFC 3339 format including the UTC zone.

    orderCreatedAt date-timerequired

    Date and time the order was created, in RFC 3339 format including the UTC zone.

    orderPaidAt date-timenullable

    Date and time the order was paid, in RFC 3339 format including the UTC zone.

    autoCapture booleanrequired

    true for one-stage payments where funds are automatically captured. false for two-stage payments requiring manual capture. How to work with two-stage payments

    payments object[]required

    An array of payment objects related to the order. If the array is empty, it indicates that no payments have been made for the order yet. If an order is paid with multiple payments, there will be one object per payment in the array. If a refund has been issued for a payment, the array will include an object with paymentType set to refund

  • Array [
  • paymentId stringrequired

    Identifier for the specific payment assigned by our system.

    paymentType stringrequired

    Possible values: [payment, refund, registered]

    The type of operation. payment for payments, refund for refunds (🚧 refund in development), registered is a service status used only in webhooks and does not signify anything.

    parentPayment string

    Used only for refunds: refers to the original paymentId that was refunded. This field is not needed for paymentType == payment.

    cost objectrequired

    Financial details of the payment or refund.

    amount stringrequired

    The amount of the transaction. For refunds (paymentType == refund), this will be the refund amount. Formatted as a decimal string with a period (.) as the decimal separator.

    currency stringrequired

    Specifies the currency in ISO 4217 alphabetic code format, consisting of 3 uppercase letters.

    acquirer objectrequired

    Information about the acquirer for this payment.

    code string

    Acquirer code.

    instrumentType stringrequired

    Possible values: [card, wallet, bank_transfer]

    Specifies the payment instrument. See available payment instruments

    paymentStatus objectrequired

    Contains the status of the payment, including detailed information in case of payment failure.

    status stringrequired

    Possible values: [in_progress, completed, cancelled, failed]

    The current state of the payment. Description of Statuses

    details objectnullable

    Provides additional error details if the payment fails.

    errorId stringnullable

    A unique identifier for the error generated by the system, used for tracking and troubleshooting.

    providerMessage stringnullable

    An error message provided by the payment provider, offering insight into the reason for the failure.

    code integernullable

    An internal error code used by the system to categorize the type of error that occurred.

    paymentDetails object nullable

    Describes the details of the payment, which vary according to the instrumentType selected.

    oneOf
    paymentSystem stringnullable

    Possible values: [visa, mastercard, jcb, amex, dсi, unionpay, upi, mir, discover, redcompra, elo, hipercard]

    Brand of the card used in the transaction.

    visa - "Visa"

    mastercard - "MasterCard"

    jcb - "JCB"

    amex - "American Express"

    dci - "Diners Club International"

    unionpay - "UnionPay"

    upi - "UnionPay International"

    mir - "Mir"

    discover - "Discover"

    redcompra - "Redcompra"

    elo - "Elo"

    hipercard - "Hipercard"

    authCode stringnullable

    Authorization code for the payment

    rrn stringnullable

    Retrieval Reference Number for the payment.

    maskedCardNumber stringnullable

    This field displays a partially obscured version of the card number to maintain security and privacy. Depending on the provider, the masked card number might show:

    • The first 6 and last 4 digits, with the intervening digits replaced by asterisks (e.g., 123456******1234)
    • Only the last 4 digits (e.g., **** **** **** 1234)
    providerPaymentId stringnullable

    Identifier for the specific payment assigned by the payment provider.

  • ]
  • customer objectnullable

    Container for customer-specific information.

    customerId stringrequired

    An identifier for the customer provided when creating the order or payout. If customerId was not specified during order/payout creation but name and surname were provided, the system will generate a customerId in the format of a GUID (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx) and return it here.

    firstName stringnullable

    First name of the customer.

    lastName stringnullable

    Last name of the customer.

    middleName stringnullable

    Middle name of the customer, if applicable.

    phone stringnullable

    Customer's phone number, in international format.

    email emailnullable

    Email address of the customer.

Loading...