Weelay

Crypto payment webhook: how a website knows an order is paid

A payment webhook helps a website receive a crypto payment event automatically and update an order without manual checks.

Article Published: 2026-06-17 ~6 min read

When a buyer pays an order with USDT TRC20, the website needs to know about it. The seller can check the payment manually, the website can keep refreshing the status, or the system can receive an automatic notification. This is usually done with a payment webhook.

A webhook helps the website understand that the payment was found, verified, and the order can be updated.

What a payment webhook is

A webhook is a notification sent by a payment system or checkout to your website. When an important event happens, such as a successful payment, the service sends event data to your website.

For crypto payments, a webhook is usually needed so the website knows that an invoice was paid and can update the order, deliver a product, or activate a service.

For the seller, this is much more convenient than opening an admin panel, wallet, or blockchain explorer every time.

Why webhooks matter for crypto payments

Crypto payment flow is not the same as card payments. The buyer sends a transfer from a wallet, and the website needs to understand that the payment really belongs to the order.

Without a webhook, there are two options: check the payment manually or make the website constantly request payment status. Both can work, but they are less convenient.

A webhook makes the process simpler: when the payment is confirmed, the website receives an event and can continue processing the order automatically.

How it works for an online store

A simple flow looks like this:

  1. The buyer creates an order.
  2. The website creates a payment invoice.
  3. The buyer opens the payment page.
  4. The buyer sends USDT TRC20.
  5. The checkout verifies the payment.
  6. The checkout sends a webhook to the website.
  7. The website changes the order status to paid.
  8. The buyer receives the product, access, or confirmation.

The buyer does not need to think about webhooks. For the buyer, it is just a payment page. The webhook is needed by the website and the seller.

What a webhook usually contains

A payment webhook should contain enough data for the website to understand what happened.

Usually it includes:

  • invoice or order identifier;
  • payment status;
  • amount;
  • currency;
  • network;
  • tx_hash;
  • event time;
  • technical event identifier.

The website should not blindly trust every incoming request. Proper webhook handling requires checking that the notification really belongs to your checkout and is not random or repeated.

Why you should not update orders from any request

If a website accepts webhooks, it must handle them carefully. You should not allow any request to a webhook URL to mark an order as paid.

The website needs to consider:

  • where the notification came from;
  • which order it belongs to;
  • whether the order was already paid;
  • whether the event was already received;
  • whether the payment status matches;
  • whether there is a tx_hash;
  • whether this transaction was used before.

Without these checks, you can get wrong statuses, duplicate processing, or disputes.

A webhook does not replace payment verification

A webhook informs the website about the result, but payment verification is still important.

Before sending a successful payment event, the checkout should make sure the payment is valid: correct network, USDT token, correct receiver address, sufficient amount, and unique tx_hash.

If a webhook is built on weak verification, it will simply deliver a wrong decision faster. Reliable verification should come first, then the notification.

What if the webhook fails

Sometimes a webhook may not reach the website. The website may be temporarily down, the server may return an error, the network may fail, or the webhook handler may be configured incorrectly.

A good system should be able to retry webhook delivery or allow the seller to check payment status manually.

The website should also handle repeated notifications safely. If the same webhook arrives twice, the order should not break and should not trigger dangerous repeated actions.

Can you build webhooks yourself?

Yes. If you have your own backend for crypto payments, you can build your own webhook system. It can verify payments, create events, and send them to your website.

But this requires careful design. You need to handle statuses, retries, website errors, duplicate protection, tx_hash verification, edge cases, and safe incoming request handling.

If the goal is simply to accept USDT TRC20 on a website and know when an order is paid, a ready-made checkout is often simpler than building and maintaining the whole webhook system yourself.

Where Weelay can help

Weelay helps accept USDT TRC20 through a payment page and notify the website after a successful payment. The buyer pays to the seller’s wallet, while the checkout helps match the payment with the order and send the result to the website.

Weelay does not hold funds on its side. This can be useful for sellers who need a low-cost crypto payment checkout without KYC, without manually checking every payment, and without building a separate webhook system from scratch.

Summary

A crypto payment webhook helps a website automatically know that an order was paid.

It does not replace payment verification, but it helps deliver the result to the website quickly. For reliable work, the website should handle order status, tx_hash, repeated notifications, webhook security, and payment-to-order matching.

When done carefully, webhooks reduce manual work and make accepting USDT TRC20 payments on a website much easier.

Support

Need help?

Contact Weelay support if this page does not answer your question.