{"id":8824,"date":"2026-10-20T09:32:00","date_gmt":"2026-10-20T07:32:00","guid":{"rendered":"https:\/\/www.1pay.ch\/docs\/webhooks-notifications\/"},"modified":"2026-11-06T09:08:53","modified_gmt":"2026-11-06T08:08:53","password":"","slug":"webhooks-notifications","status":"publish","type":"docs","link":"https:\/\/www.1pay.ch\/en\/docs\/webhooks-notifications\/","title":{"rendered":"Webhooks: notifying your system of every payment"},"content":{"rendered":"<p>A webhook is an automatic message that 1pay.ch sends to your system when something happens: a confirmed payment, a renewed subscription, a payout starting. This way your shop or management software updates by itself, with no manual checks.<\/p>\n<p>If you use the <a href=\"https:\/\/www.1pay.ch\/en\/docs\/woocommerce-shop-plugin\/\">WooCommerce<\/a> plugin, follow its instructions: the webhook you need is already provided for there.<\/p>\n<h2>Creating a webhook<\/h2>\n<ol>\n<li>In the menu, open <strong>Webhooks<\/strong> and click the option to add a webhook.<\/li>\n<li><strong>Name (optional)<\/strong>: a name to recognise it by, such as \u00abManagement software\u00bb.<\/li>\n<li><strong>Webhook URL<\/strong>: the address of your system that receives the messages. Copy it exactly, with <code>https<\/code>.<\/li>\n<li><strong>Webhook type<\/strong>: Normal (PHP-Post) or JSON, as your system requires.<\/li>\n<li><strong>Webhook version<\/strong>: the one stated in your system&#8217;s instructions or by your developer.<\/li>\n<li><strong>Retry on error<\/strong>: activate it only if your system requires it.<\/li>\n<li><strong>Events<\/strong>: choose when to send the message:\n<ul>\n<li><strong>Transaction<\/strong>: when a payment is created or its status changes;<\/li>\n<li><strong>Subscription<\/strong>: when something important happens to a subscription;<\/li>\n<li><strong>Payout<\/strong>: when a payout to your account starts.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Link to integration (optional)<\/strong>: links the webhook to one API key only, so it receives only the events created with that key. With no integration it receives all events.<\/li>\n<li>Click <strong>Add<\/strong>.<\/li>\n<\/ol>\n<h2>Security<\/h2>\n<p>Each webhook has its own secret signature, sent with every message. Your system can check it to be sure the message really comes from 1pay.ch. Your developer will know how to use it.<\/p>\n<h2>Technical contact<\/h2>\n<p>On the same page, enter the name and e-mail of the <strong>technical contact<\/strong>: this person receives alerts when a webhook or API request fails.<\/p>\n<h2>If something does not work<\/h2>\n<p>Under <strong>Log<\/strong> you can see every message sent and your system&#8217;s response. The most common causes:<\/p>\n<ul>\n<li>the URL is not written exactly as your system wants it (an extra slash, <code>http<\/code> instead of <code>https<\/code>);<\/li>\n<li>the format or version chosen does not match what is expected;<\/li>\n<li>your server is refusing or blocking the request.<\/li>\n<\/ul>\n<p>If you cannot find the problem, write to us with your account name and the time of the payment concerned.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A webhook is an automatic message that 1pay.ch sends to your system when something happens: a confirmed payment, a renewed subscription, a payout starting. This way your shop or management software updates by itself, with no manual checks. If you use the WooCommerce plugin, follow its instructions: the webhook you need is already provided for [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"doc_category":[204],"doc_tag":[],"class_list":["post-8824","docs","type-docs","status-publish","hentry","doc_category-integrations"],"acf":[],"year_month":"2026-11","word_count":338,"total_views":0,"reactions":{"happy":0,"normal":0,"sad":0},"author_info":{"name":"1pay.ch","author_nicename":"1pay_admin","author_url":"https:\/\/www.1pay.ch\/en\/author\/1pay_admin\/"},"doc_category_info":[{"term_name":"Integrations","term_url":"https:\/\/www.1pay.ch\/en\/docs-category\/integrations\/"}],"doc_tag_info":[],"knowledge_base_info":[],"knowledge_base_slug":[],"_links":{"self":[{"href":"https:\/\/www.1pay.ch\/en\/wp-json\/wp\/v2\/docs\/8824","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.1pay.ch\/en\/wp-json\/wp\/v2\/docs"}],"about":[{"href":"https:\/\/www.1pay.ch\/en\/wp-json\/wp\/v2\/types\/docs"}],"author":[{"embeddable":true,"href":"https:\/\/www.1pay.ch\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.1pay.ch\/en\/wp-json\/wp\/v2\/comments?post=8824"}],"version-history":[{"count":5,"href":"https:\/\/www.1pay.ch\/en\/wp-json\/wp\/v2\/docs\/8824\/revisions"}],"predecessor-version":[{"id":9668,"href":"https:\/\/www.1pay.ch\/en\/wp-json\/wp\/v2\/docs\/8824\/revisions\/9668"}],"wp:attachment":[{"href":"https:\/\/www.1pay.ch\/en\/wp-json\/wp\/v2\/media?parent=8824"}],"wp:term":[{"taxonomy":"doc_category","embeddable":true,"href":"https:\/\/www.1pay.ch\/en\/wp-json\/wp\/v2\/doc_category?post=8824"},{"taxonomy":"doc_tag","embeddable":true,"href":"https:\/\/www.1pay.ch\/en\/wp-json\/wp\/v2\/doc_tag?post=8824"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}