FILTER BY TAG

Webhooks Support

Unified Checkout
supports webhooks. You can use webhooks to obtain the complete response from the
completeMandate
call. To receive a webhook notification, you must first subscribe to the webhook.

Prerequisite

Webhook payloads are encrypted. In order to receive a
Unified Checkout
webhook notification, you must enabled message-level encryption (MLE). For information about enabling MLE, see Enable Message-Level Encryption in the
Getting Started with REST Developer Guide
.

Integration

Follow these steps to set up your system to support the Webhooks REST API. Some of these steps are dependent on your system's security policy.
  1. Set up a server with a URL to receive webhook notifications.
  2. Configure your server security to receive webhooks notifications. For more information, see
    Set Up Your Security
    in the Webhooks Implementation Guide.
  3. Create a REST API security key that is compliant with your security policy. Security keys are used to authenticate the requests you send to
    National Australia Bank
    . You must create separate keys for the testing and production environments. For more information, see
    Create REST API Keys
    in the Webhooks Implementation Guide.
  4. Request a digital signature key from
    National Australia Bank
    . For more information, see
    Create a Digital Signature Key
    in the Webhooks Implementation Guide.
  5. Implement message-level encryption for those events. See
    Message-Level Encryption
    in the Webhooks Implementation Guide.
  6. If your system uses the
    OAuth
    or
    OAuth with JWT
    security policy, you must provide your OAuth credentials to
    National Australia Bank
    . OAuth is not required and Mutual Trust is the default. If you are not using OAuth, skip this step. For more information, see
    (Optional) Provide Your OAuth Credentials
    in the Webhooks Implementation Guide.
  7. Request a list of the products for which your organization is enabled to receive webhook notifications. For more information, see
    Retrieve a Lit of Products and Events
    in the Webhooks Implementation Guide.
    IMPORTANT
    You must enable message-level encryption (MLE) in order to access the webhook response. See
    Message-Level Encryption
    in the Webhooks Implementation Guide.
  8. Create your webhook subscription event notifications. For more information, see
    Create a Webhook Subscription
    in the Webhooks Implementation Guide.

Optional Set Up Tasks

You can complete these optional tasks after creating a webhook subscription.
  • Include a health check URL to enable
    National Australia Bank
    to monitor your server's status for reliability. For more information, see
    Webhook Health Check URL and Automatic Revalidation
    in the Webhooks Implementation Guide.
  • Customize the retry policy for unresponsive webhook and health check URLs. For more information, see
    Configure the Retry Policy
    in the Webhooks Implementation Guide.
  • Validate your digital signature. For more information, see
    Validating a Notification with the Digital Signature Key
    in the Webhooks Implementation Guide.

Webhook Events

Unified Checkout
Webhook Events
Product ID
Event Types
Description
unifiedCheckout
uc.orders.transactionresults
Full payload response from the payment service call made by
Unified Checkout

Set Up Webhook Subscriptions

For information on setting up a webhook for the
unifiedCheckout
product, see the How to Set Up Webhook Subscriptions section of the
Webhooks Implementation Guide
.

Example Webhook Payload

Example: Webhooks Request for
Unified Checkout
Events
{ "organizationId": "your_merchant_id", "webhookId": "2d55e648-d96c-d727-e063-3cb8d30a938e", "productId": "unifiedCheckout", "eventType": "uc.orders.transactionresults", "eventDate": "2025-03-27T08:44:55", "payload": { "id": "7435188899356405003091", "status": "AUTHORIZED", "outcome": "AUTHORIZED", "details": { "processorInformation": { "transactionId": "2016011808153910011808153AUTH" }, "paymentInformation": { "card": { "type": "001" } }, "riskInformation": { "score": { "result": "42" } } } } }
The
payload
field object contains the same fields as the response from a direct payment authorization request. Use the
id
field for capture requests or to look up a transaction.