Open templates: letting an agent draft crypto payment requests that a human signs (MCP, Claude Desktop, Cursor, n8n) Send21 updated its webhook documentation so the V2 signature covers the timestamp, delivery id and raw body, preventing a copied delivery from being replayed, while the body-only signature remains for existing integrations. The company also published a durable SQLite webhook receiver example that stores the X-Send21-Delivery header and applies the order update in a single transaction, returning 2xx only after the commit. Send21 asked developers whether they keep delivery ids in the same transaction as the business write or in a separate store with its own cleanup. @capitaharlock https://discuss.huggingface.co/u/capitaharlock A follow-up on keeping the two jobs apart. The webhook docs now state the split: the V2 signature covers the timestamp, the delivery id and the raw body, so a copied delivery can’t be replayed. The body-only signature stays only for existing integrations send21 webhooks: events, payloads and signatures https://send21.io/docs/webhooks . We also added a durable receiver to the examples, because a dedupe set in memory forgets everything on restart. It stores X-Send21-Delivery and applies the order update in one SQLite transaction, and returns 2xx only after the commit: send21-examples/examples/webhook-receiver-sqlite at main · send21io/send21-examples · GitHub https://github.com/send21io/send21-examples/tree/main/examples/webhook-receiver-sqlite When you added the timestamp and delivery id on your side, did you keep delivery ids in the same transaction as the business write, or in a separate store with its own cleanup? - send21