Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Yes. Payment providers may deliver a webhook more than once, so a handler must be safe to run repeatedly. Duplicate delivery does not by itself mean a customer was charged twice; it means your application could repeat a consequence—such as fulfillment, account credits, email, or a ledger update—if it treats every receipt as new.

Why payment webhooks can be duplicated

Webhook delivery is designed to survive temporary failures. A provider may retry when it does not receive the response it expects, and a delivery can reach your endpoint even when the provider did not receive your earlier acknowledgement. Stripe says an endpoint may occasionally receive the same event more than once; PayPal describes at-least-once delivery in its invoicing webhook guidance; and Adyen warns that duplicate notifications can occur. Stripe, PayPal, and Adyen all document duplicate handling.

There is no universal retry count or deduplication field: behavior depends on the provider and the product or webhook flow. For example, Stripe documents live-mode retries for up to three days with exponential backoff, plus manual resends from the Dashboard for up to 15 days and the CLI for up to 30 days. PayPal’s REST integration guide says unsuccessful deliveries may be retried up to 25 times over three days; that policy is distinct from the invoicing guide’s duplicate-event advice. Check the current documentation for the specific webhook product you use.

What identity should you use to detect a duplicate?

Use a stable identifier that matches the provider’s event model and the business effect you need to protect. Do not assume a field that works for one provider—or one type of duplicate—works everywhere.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
#1 Best Overall
Elebase USB to USB C Adapter for iPhone 18 Pro Max,USBC Car Charger Adapter
  • Read Before You Buy — No Video Output: These adapters support charging and USB 2.0 data transfer, but cannot transmit video signals. Except for standard USB webcams (which use USB data only), they are not compatible with HDMI/DisplayPort cables, video-capable USB-C hubs, or docking stations with video output.
  • Convert USB-A Ports to USB-C: Designed to connect USB-C earphones, cables, flash drives, card readers, and other USB-C accessories to standard USB-A ports. Plug-and-play with no drivers or software required.
  • Aluminum Alloy Housing: Built with a sturdy aluminum alloy shell that aids in heat dissipation and protects against daily wear and scratches. Designed to maintain a stable and secure connection.
  • Compact & Travel-Friendly: The ultra-compact design allows the adapter to stay plugged into your device without blocking adjacent ports or adding bulk, reducing wear and tear on your original USB ports.
  • 12-Month Warranty: Backed by a 12-month manufacturer warranty for peace of mind. Designed to meet strict quality control standards for reliable everyday performance.
Provider and scope Duplicate identity guidance Delivery or ordering detail
Stripe Track the event ID to identify repeat deliveries of the same Event. Stripe notes that separate Event objects can sometimes represent duplicates; for that case it recommends the object ID in data.object together with event.type. Live-mode retries run for up to three days with exponential backoff. Manual Dashboard resends are available for up to 15 days and CLI resends for up to 30 days. Stripe does not guarantee event order. Stripe documentation
Adyen Notifications with the same eventCode and pspReference can be duplicates, even if eventDate or other fields differ. Adyen advises using the latest webhook event details. Adyen says it queues a webhook for retry if it does not receive a response within 10 seconds. Some webhooks include a sequenceNumber; check timestamps and sequence where available. Adyen documentation
PayPal invoicing webhooks The event id is a unique identifier that can be used for deduplication. The invoicing guide describes at-least-once delivery. PayPal’s broader REST integration guide separately documents retries for unsuccessful deliveries. Invoicing guide; REST integration guide

These are provider-specific examples, not interchangeable rules. A payload hash is generally a poor substitute for a documented identity: a legitimate event can have changed fields, while distinct events can describe related states. For Stripe, deduplicating only by event ID will not catch the separate-Event case it describes; whether to also use object ID and event type depends on the business action being protected.

How to build a duplicate-safe webhook handler

  1. Receive the request and verify its signature. Validate the provider’s signature using its documented method before trusting the payload or making business changes. Preserve the raw request body if the provider’s signature verification requires it. See Stripe’s webhook guidance and Adyen’s handling sequence.
  2. Derive the right identity. Record the provider and relevant account or environment scope along with the provider-specific event identity. If you protect a business effect that can be represented by more than one event, define a second business-level uniqueness rule deliberately rather than assuming every event ID is equivalent to that effect.
  3. Claim the event atomically. Insert a durable inbox record under a unique constraint, or use an equivalent atomic claim. A plain “look up whether it exists, then insert” can race: two simultaneous deliveries may both see no record and both proceed. PayPal’s invoicing guide illustrates unique event storage and transaction-based processing as duplicate mitigations.
  4. Make acceptance recoverable before acknowledging. In the same transaction as the event claim, enqueue work or record a state from which a worker can reliably resume. A transactional inbox/outbox pattern helps prevent a crash between acknowledging the provider and saving the work. Adyen documents the sequence verify, store in a database or queue, acknowledge, then process business logic; Stripe advises responding promptly and deferring complex work. Follow the exact status-code and timing contract for your endpoint—one provider’s deadline or accepted response is not universal.
  5. Process asynchronously and protect side effects. A worker should process only a successfully claimed event. Make downstream operations—such as issuing a credit, sending a fulfillment request, or recording a ledger entry—idempotent where possible, and persist processing outcomes so failures can be retried without repeating completed work.
  6. Monitor and reconcile. Keep enough identity, status, attempt, and error information to diagnose a stuck event. Reconcile important payment state against the provider’s authoritative object or API rather than assuming that one webhook receipt is the entire history.

A practical inbox record

A webhook inbox table commonly stores provider and account scope, event identity, event type, received time, processing status, and the result or error of processing. Put the chosen identity under a database uniqueness constraint. This is an implementation pattern, not a schema mandated by every provider. Retain deduplication records for at least as long as your system can receive retries or manual replays; the appropriate retention depends on provider behavior and your own recovery window.

Rank #2
Anker USB-C Hub, 5-in-1 USB Hub for Laptops, 4K HDMI Multiport Adapter
  • 5-in-1 USB-C Hub: Experience comprehensive connectivity featuring a Power Delivery input, two USB-A 2.0 ports, a USB-A 3.0 port, and an HDMI port. (Note: The USB-C power delivery input port is only for connecting an external wall charger to power your laptop and cannot power peripheral devices.)
  • 90W Pass-Through Charging: Achieve optimal charging with 90W pass-through power to your laptop, supported by a total input of 100W, with the hub reserving 10W for operational efficiency. (Note: Wall charger not included.)
  • Quick Data Transfers: Accelerate your productivity with rapid data transfers using a high-speed 5Gbps USB 3.0 port and two 480Mbps USB 2.0 ports.
  • 4K HDMI Display: Enhance your visual experience with a hub capable of delivering 4K resolution at 30Hz in both mirror and extend modes. Please note that this hub is compatible with MacBook (macOS 12 and newer), Windows 10 and 11, ChromeOS, and laptops equipped with DP Alt Mode and Power Delivery. Note: This device is not compatible with Linux.
  • What You Get: Anker USB-C Hub (5-in-1, 4K HDMI), welcome guide, 18-month warranty, and our friendly customer service.

Duplicates, repeated business events, and outbound retries are different

Three situations are easy to confuse, but require separate controls:

  • Same event delivered again: The provider retransmits one event. Prevent repeat processing with its stable event identity.
  • Distinct events describe related or repeated state: The provider emits separate event objects, perhaps for the same underlying object. Decide whether each event represents a new action or merely a state update; use event type, object identity, and current state as appropriate.
  • Your application retries an outbound payment request: This is a request from your system to the provider, not an inbound webhook replay. An outbound API idempotency key can prevent the same API operation from being performed twice, but it does not replace webhook inbox deduplication.

Adyen documents reusing an idempotency-key on an outbound POST to make a retried payment request safe. Its API documentation says keys remain valid for 7 to 14 days after first submission and apply account-wide at company-account level, with regional caveats. Those limits concern outbound API requests—not how long to retain webhook event records. Adyen API idempotency documentation

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #3
Sale
Anker USB C Hub, 7in1 Multi-Port USB Adapter, 4K@60Hz USBC to HDMI Splitter
  • Sleek 7-in-1 USB-C Hub: Features an HDMI port, two USB-A 3.0 ports, and a USB-C data port, each providing 5Gbps transfer speeds. It also includes a USB-C PD input port for charging up to 100W and dual SD and TF card slots, all in a compact design.
  • Flawless 4K@60Hz Video with HDMI: Delivers exceptional clarity and smoothness with its 4K@60Hz HDMI port, making it ideal for high-definition presentations and entertainment. (Note: Only the HDMI port supports video projection; the USB-C port is for data transfer only.)
  • Double Up on Efficiency: The two USB-A 3.0 ports and a USB-C port support a fast 5Gbps data rate, significantly boosting your transfer speeds and improving productivity.
  • Fast and Reliable 85W Charging: Offers high-capacity, speedy charging for laptops up to 85W, so you spend less time tethered to an outlet and more time being productive.
  • What You Get: Anker USB-C Hub (7-in-1), welcome guide, 18-month warranty, and our friendly customer service.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Can payment webhooks arrive out of order?

Yes, for at least some provider flows, event order is not guaranteed. Stripe explicitly says events are not guaranteed to arrive in generation order. Adyen recommends checking timestamps and notes that some webhook types include a sequenceNumber. Avoid applying every notification as a blind overwrite: an older state can otherwise replace a newer one. Where order matters, compare a provider-supplied sequence or timestamp when available, or retrieve the current object state before applying a consequential transition.

Best Value
Anker USB C Hub, 5-in-1 USBC to HDMI Splitter with 4K Display
  • 5-in-1 Connectivity: Equipped with a 4K HDMI port, a 5 Gbps USB-C data port, two 5 Gbps USB-A ports, and a USB C 100W PD-IN port. Note: The USB C 100W PD-IN port supports only charging and does not support data transfer devices such as headphones or speakers.
  • Powerful Pass-Through Charging: Supports up to 85W pass-through charging so you can power up your laptop while you use the hub. Note: Pass-through charging requires a charger (not included). Note: To achieve full power for iPad, we recommend using a 45W wall charger.
  • Transfer Files in Seconds: Move files to and from your laptop at speeds of up to 5 Gbps via the USB-C and USB-A data ports. Note: The USB C 5Gbps Data port does not support video output.
  • HD Display: Connect to the HDMI port to stream or mirror content to an external monitor in resolutions of up to 4K@30Hz. Note: The USB-C ports do not support video output.
  • What You Get: Anker 332 USB-C Hub (5-in-1), welcome guide, our worry-free 18-month warranty, and friendly customer service.
Rank #4
Sale
UGREEN USB to USB C Adapter Combo 4-Pack, 10Gbps USB C Converter Space Gray
  • Dual Converters, Infinite Potential:Includes 2× USB C male to USB A female adapters and 2× USB A male to USB C female adapters. Perfect for a wide range of uses—tablets with Bluetooth keyboards, expand USB ports on macbook, and more. Two different converters for all your daily needs
  • Next-Level 10Gbps & 3A Charging: No more slow 480Mbps, this usb to usb c adapter has a transfer speed of up to 10Gbps, allowing you to do more transferring in less time. This usb adapter fits both USB A and USB C charger, supporting up to 3A fast charging
  • Upgraded Exquisite Craftsmanship: With an aluminum alloy housing and metal connector, the usbc to usb adapter is extremely durable and sturdy. Rigorously tested to withstand more than 10,000 times of plugging and unplugging, ensuring long-lasting performance
  • Broad Compatible: The usb c to usb adapter widely supports all USB C/ USB A devices like laptops, tablets, cellphones, car chargers, and phone chargers. Such as compatible with MacBook Pro/Air 2023/2022, Thunderbolt 4/3 Devices,Apple MagSafe Watch 9/8/7/SE/Ultra, iPad Pro 2022/2021, Samsung Galaxy S23/S20/S10, and iPhone 17/16/15 Pro. Plug and play
  • Please Note: To reach 10Gbps speed, keep the cable under 3.3 ft. For USB A Male to USB C adapters, try flipping the USB C connector. USB C Male to USB A adapters support bidirectional 10Gbps transfer within 3.3 ft

What to check when duplicates still cause problems

  • Confirm you verify signatures before accepting payload data as authoritative.
  • Check whether the deduplication key matches the provider’s documented identity and whether it includes account or environment scope.
  • Verify that uniqueness is enforced atomically in durable storage, not only in application-level check-then-act code.
  • Confirm a successful acknowledgement cannot occur before the event is saved or queued for recoverable processing.
  • Inspect downstream effects for their own retry behavior; a deduplicated webhook can still trigger a duplicate external action if the worker repeats that action after a timeout.
  • Review event timestamps, sequence information, and current provider object state when events appear to reverse one another.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.