At a glance
- Answer fastSet the Webhook node's Respond option to Immediately, so the sender gets a 200 at once and has no reason to retry.
- Remember what you have handledAdd a Remove Duplicates node right after the webhook.
- Check it worksSend the same test payload twice.
Answer fast
- Set the Webhook node's Respond option to Immediately, so the sender gets a 200 at once and has no reason to retry.
- Only answer at the end of the workflow if the sender needs data back.
Remember what you have handled
- Add a Remove Duplicates node right after the webhook.
- Set the operation to remove items processed in previous executions, keeping items where the value is new.
- Dedupe on the event's own ID: Stripe's event id, Shopify's X-Shopify-Webhook-Id header, or an order number. Not on a timestamp.
- n8n keeps the history in its own database, so nothing else is needed. Set the history size to cover a few days of events.
Check it works
- Send the same test payload twice. The second run should stop at Remove Duplicates with no items.
- If two copies arrive within the same second, both may pass before either is recorded. For money or stock, also make the final step an upsert, so a rare double still lands on one record.
Updated 2026-11-01. General guidance, not advice for your situation; we scope each project in writing before any work starts.
Questions people ask first
Does the history survive a restart?
Yes. It is stored in n8n's database, not in memory.
Can I clear the history?
Yes. The node has an operation to clear deduplication history, useful after testing.
Does this work on n8n Cloud?
Yes. It is a built-in node.
Tell us what you need built.
Tell us the process and the tools involved, or call. We reply with questions or a written scope.
hello@pushbuild.com