{"id":233287,"date":"2026-05-15T11:14:45","date_gmt":"2026-05-15T09:14:45","guid":{"rendered":"https:\/\/deinperfectday.de\/anbieter-shop-anbindung-woocommerce\/"},"modified":"2026-05-15T11:14:45","modified_gmt":"2026-05-15T09:14:45","slug":"anbieter-shop-anbindung-woocommerce","status":"publish","type":"page","link":"https:\/\/deinperfectday.de\/en\/anbieter-shop-anbindung-woocommerce\/","title":{"rendered":"LP Shop-Anbindung \u2014 WooCommerce"},"content":{"rendered":"<div class=\"pd-scope\">        <div class=\"pd-scope\">\n        <header id=\"site-header\">\n          <div class=\"container nav\">\n            <a href=\"https:\/\/deinperfectday.de\/en\/\" class=\"logo logo-image\" aria-label=\"Perfect Day Homepage\">\n              <img src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"Perfect Day \u2014 Enjoy your experience\" width=\"220\" height=\"50\" fetchpriority=\"high\" decoding=\"async\" class=\"lazyload\" data-src=\"https:\/\/deinperfectday.de\/wp-content\/plugins\/perfectday-pages-plugin\/assets\/images\/icons\/logo-dunkel.png\">\n            <\/a>\n\n            <button\n              type=\"button\"\n              class=\"mega-toggle\"\n              id=\"megaToggle\"\n              aria-expanded=\"false\"\n              aria-controls=\"mega-menu\"\n              aria-label=\"Open main menu\">\n              <span class=\"mega-toggle-text\">menu<\/span>\n              <span class=\"mega-toggle-icon\" aria-hidden=\"true\">\n                <svg width=\"22\" height=\"22\" viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M4 7h16M4 12h16M4 17h16\"\/><\/svg>\n              <\/span>\n            <\/button>\n\n            <div class=\"nav-cta\">\n              <a class=\"btn btn-ghost\" href=\"https:\/\/plattform.deinperfectday.de\/\">Register<\/a>\n              <a class=\"btn btn-primary\" href=\"https:\/\/deinperfectday.de\/en\/anbieter-werden\/\">Become a provider now <span class=\"arrow\" aria-hidden=\"true\">\u2192<\/span><\/a>\n            <\/div>\n          <\/div>\n\n          <!-- ============== MEGA MENU DRAWER ============== -->\n          <div class=\"mega-menu\" id=\"mega-menu\" hidden role=\"dialog\" aria-modal=\"false\" aria-label=\"Main Menu\">\n            <div class=\"container mega-grid\">\n\n              <!-- Spalte 1: F\u00fcr Anbieter -->\n              <div class=\"mega-col\">\n                <h3 class=\"mega-col-title\">For providers<\/h3>\n                <ul class=\"mega-list\">\n                                      <li>\n                      <a href=\"https:\/\/deinperfectday.de\/en\/stadtgutscheine\/\">\n                        <strong>City vouchers<\/strong>\n                        <span>Multi-provider vouchers, partial redemption, remaining balance automatically credited.<\/span>\n                      <\/a>\n                    <\/li>\n                                      <li>\n                      <a href=\"https:\/\/deinperfectday.de\/en\/online-ticketing\/\">\n                        <strong>Online ticketing<\/strong>\n                        <span>\u20ac0.49 per ticket. No booking fee for your guests.<\/span>\n                      <\/a>\n                    <\/li>\n                                      <li>\n                      <a href=\"https:\/\/deinperfectday.de\/en\/gutscheinbuecher\/\">\n                        <strong>Voucher books<\/strong>\n                        <span>Digital, 5 languages, instant updates. No printing costs.<\/span>\n                      <\/a>\n                    <\/li>\n                                      <li>\n                      <a href=\"https:\/\/deinperfectday.de\/en\/coupons\/\">\n                        <strong>Coupons<\/strong>\n                        <span>From \u20ac9.90\/month. Three tiers, fixed price, can be cancelled monthly.<\/span>\n                      <\/a>\n                    <\/li>\n                                    <li class=\"mega-list-divider\">\n                    <a href=\"https:\/\/deinperfectday.de\/en\/preise\/\">\n                      <strong>Prices &amp; Models<\/strong>\n                      <span>Transparent terms and conditions, 10 % bundle discount for three pillars.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/en\/buchen\/\">\n                      <strong>Book columns<\/strong>\n                      <span>Booking assistant: Select columns and make a binding booking.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/en\/anbieter-werden\/\" class=\"mega-link-highlight\">\n                      <strong>Providers will be \u2192<\/strong>\n                      <span>Register for free, get a quick response.<\/span>\n                    <\/a>\n                  <\/li>\n                <\/ul>\n              <\/div>\n\n              <!-- Spalte 2: Entdecken & Konzept -->\n              <div class=\"mega-col\">\n                <h3 class=\"mega-col-title\">Discover<\/h3>\n                <ul class=\"mega-list\">\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/en\/app\/\">\n                      <strong>Discover the app<\/strong>\n                      <span>How the end-user app works.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/en\/roi-rechner\/\">\n                      <strong>ROI calculator<\/strong>\n                      <span>Platform costs per year in 10 seconds.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/en\/app-versionen\/\">\n                      <strong>App versions<\/strong>\n                      <span>What&#039;s new in the app \u2014 the version history.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/en\/#prinzip\">\n                      <strong>The concept<\/strong>\n                      <span>Cross-pollination of the four pillars explained.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/en\/anbieter\/\">\n                      <strong>Provider Hub<\/strong>\n                      <span>Overview of all pillars with competitive comparison.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/en\/mitarbeiter-benefits\/\">\n                      <strong>Employee benefits<\/strong>\n                      <span>Corporate subscriptions: City vouchers automatically distributed to the team.<\/span>\n                    <\/a>\n                  <\/li>\n                <\/ul>\n\n                <h3 class=\"mega-col-title\" style=\"margin-top: 1.6rem;\">City voucher live in<\/h3>\n                <p class=\"mega-cities\">\n                  Garrel \u00b7 L\u00f6ningen \u00b7 Twistringen<br>\n                  <small>More cities will follow in 2026.<\/small>\n                <\/p>\n              <\/div>\n\n              <!-- Spalte 3: Service + Account -->\n              <div class=\"mega-col\">\n                <h3 class=\"mega-col-title\">service<\/h3>\n                <ul class=\"mega-list\">\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/en\/hilfe\/\">\n                      <strong>Help &amp; Features<\/strong>\n                      <span>All app functions explained step by step.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/en\/support\/\">\n                      <strong>Support<\/strong>\n                      <span>Help for suppliers and customers.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/plattform.deinperfectday.de\/\">\n                      <strong>Platform login<\/strong>\n                      <span>For active providers with an account.<\/span>\n                    <\/a>\n                  <\/li>\n                <\/ul>\n\n                                  <h3 class=\"mega-col-title\" style=\"margin-top: 1.6rem;\">Language<\/h3>\n                  <div class=\"mega-lang-switcher\"><div class=\"trp-shortcode-switcher__wrapper\"\r\n     style=\"--bg:#ffffff;--bg-hover:#0000000d;--text:#143852;--text-hover:#1d2327;--border:1px solid #1438521a;--border-width:1px;--border-color:#1438521a;--border-radius:5px;--flag-radius:2px;--flag-size:18px;--aspect-ratio:4\/3;--font-size:14px;--transition-duration:0.2s\"\r\n     role=\"group\"\r\n     data-open-mode=\"hover\">\r\n\r\n    \r\n        <!-- ANCHOR (in-flow only; sizing\/borders; inert) -->\r\n        <div class=\"trp-language-switcher trp-ls-dropdown trp-shortcode-switcher trp-shortcode-anchor trp-open-on-hover\"\r\n             aria-hidden=\"true\"\r\n             inert\r\n data-no-translation>\r\n                <div class=\"trp-current-language-item__wrapper\">\r\n        <a class=\"trp-language-item trp-language-item__default trp-language-item__current\" data-no-translation href=\"https:\/\/deinperfectday.de\/en\/wp-json\/wp\/v2\/pages\/233287\" title=\"English\"><img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" class=\"trp-flag-image lazyload\" alt=\"\" role=\"presentation\" loading=\"lazy\" data-src=\"https:\/\/deinperfectday.de\/wp-content\/plugins\/translatepress-multilingual\/assets\/flags\/4x3\/en_GB.svg\"><span class=\"trp-language-item-name\">English<\/span><\/a>                    <svg class=\"trp-shortcode-arrow\" width=\"20\" height=\"20\" viewbox=\"0 0 20 21\" fill=\"none\" aria-hidden=\"true\" focusable=\"false\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n                <path d=\"M5 8L10 13L15 8\" stroke=\"var(--text)\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n            <\/svg>\r\n            <\/div>\r\n            <\/div>\r\n\r\n        <!-- OVERLAY (positioned; interactive surface) -->\r\n        <div class=\"trp-language-switcher trp-ls-dropdown trp-shortcode-switcher trp-shortcode-overlay trp-open-on-hover\"\r\n             role=\"navigation\"\r\n             aria-label=\"Website language selector\"\r\n             data-no-translation\r\n>\r\n                <div class=\"trp-current-language-item__wrapper\">\r\n        <div class=\"trp-language-item trp-language-item__default trp-language-item__current\" data-no-translation role=\"button\" aria-expanded=\"false\" tabindex=\"0\" aria-label=\"Change language\" aria-controls=\"trp-shortcode-dropdown-6a0c0640cece3\"><img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" class=\"trp-flag-image lazyload\" alt=\"\" role=\"presentation\" loading=\"lazy\" data-src=\"https:\/\/deinperfectday.de\/wp-content\/plugins\/translatepress-multilingual\/assets\/flags\/4x3\/en_GB.svg\"><span class=\"trp-language-item-name\">English<\/span><\/div>                    <svg class=\"trp-shortcode-arrow\" width=\"20\" height=\"20\" viewbox=\"0 0 20 21\" fill=\"none\" aria-hidden=\"true\" focusable=\"false\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n                <path d=\"M5 8L10 13L15 8\" stroke=\"var(--text)\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n            <\/svg>\r\n            <\/div>\r\n    \r\n            <div class=\"trp-switcher-dropdown-list\"\r\n                 id=\"trp-shortcode-dropdown-6a0c0640cece3\"\r\n                 role=\"group\"\r\n                 aria-label=\"Available languages\"\r\n                 hidden\r\n inert\r\n>\r\n                                                            <a class=\"trp-language-item\" href=\"https:\/\/deinperfectday.de\/en\/wp-json\/wp\/v2\/pages\/233287\" title=\"German\">\r\n                            <img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" class=\"trp-flag-image lazyload\" alt=\"\" role=\"presentation\" loading=\"lazy\" data-src=\"https:\/\/deinperfectday.de\/wp-content\/plugins\/translatepress-multilingual\/assets\/flags\/4x3\/de_DE.svg\">                                                            <span class=\"trp-language-item-name\" data-no-translation>German<\/span>\r\n                                                                                <\/a>\r\n                                            <a class=\"trp-language-item\" href=\"https:\/\/deinperfectday.de\/en\/wp-json\/wp\/v2\/pages\/233287\" title=\"Spanish\">\r\n                            <img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" class=\"trp-flag-image lazyload\" alt=\"\" role=\"presentation\" loading=\"lazy\" data-src=\"https:\/\/deinperfectday.de\/wp-content\/plugins\/translatepress-multilingual\/assets\/flags\/4x3\/es_ES.svg\">                                                            <span class=\"trp-language-item-name\" data-no-translation>Spanish<\/span>\r\n                                                                                <\/a>\r\n                                            <a class=\"trp-language-item\" href=\"https:\/\/deinperfectday.de\/en\/wp-json\/wp\/v2\/pages\/233287\" title=\"Russian\">\r\n                            <img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" class=\"trp-flag-image lazyload\" alt=\"\" role=\"presentation\" loading=\"lazy\" data-src=\"https:\/\/deinperfectday.de\/wp-content\/plugins\/translatepress-multilingual\/assets\/flags\/4x3\/ru_RU.svg\">                                                            <span class=\"trp-language-item-name\" data-no-translation>Russian<\/span>\r\n                                                                                <\/a>\r\n                                            <a class=\"trp-language-item\" href=\"https:\/\/deinperfectday.de\/en\/wp-json\/wp\/v2\/pages\/233287\" title=\"Turkish\">\r\n                            <img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" class=\"trp-flag-image lazyload\" alt=\"\" role=\"presentation\" loading=\"lazy\" data-src=\"https:\/\/deinperfectday.de\/wp-content\/plugins\/translatepress-multilingual\/assets\/flags\/4x3\/tr_TR.svg\">                                                            <span class=\"trp-language-item-name\" data-no-translation>Turkish<\/span>\r\n                                                                                <\/a>\r\n                                                <\/div>\r\n        <\/div>\r\n\r\n    <\/div>\r\n<\/div>\n                \n                <h3 class=\"mega-col-title\" style=\"margin-top: 1.6rem;\">Download the app<\/h3>\n                                  <div class=\"app-badges mega-app-badges\">\n                                          <a href=\"https:\/\/apps.apple.com\/de\/app\/id1525409363\" class=\"app-badge\" target=\"_blank\" rel=\"noopener\" aria-label=\"Open Perfect Day in the Apple App Store\">\n                        <img src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"Im Apple App Store laden\" width=\"135\" height=\"40\" loading=\"lazy\" decoding=\"async\" class=\"lazyload\" data-src=\"https:\/\/deinperfectday.de\/wp-content\/plugins\/perfectday-pages-plugin\/assets\/images\/icons\/badge-app-store.png\">\n                      <\/a>\n                                                              <a href=\"https:\/\/play.google.com\/store\/apps\/details?id=koop.perfect.day&#038;utm_source=emea_Med\" class=\"app-badge\" target=\"_blank\" rel=\"noopener\" aria-label=\"Open Perfect Day in the Google Play Store\">\n                        <img src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"Im Google Play Store laden\" width=\"135\" height=\"40\" loading=\"lazy\" decoding=\"async\" class=\"lazyload\" data-src=\"https:\/\/deinperfectday.de\/wp-content\/plugins\/perfectday-pages-plugin\/assets\/images\/icons\/badge-play-store.png\">\n                      <\/a>\n                                      <\/div>\n                \n                <h3 class=\"mega-col-title\" style=\"margin-top: 1.6rem;\">Legal<\/h3>\n                <ul class=\"mega-list mega-list-compact\">\n                                    <li><a href=\"https:\/\/deinperfectday.de\/en\/impressum\/\">imprint<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/datenschutz\/\">Privacy policy (website)<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/anbieter-agb\/\">Provider Terms and Conditions<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/agb\/terms-of-service\/\">App Terms of Use<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/datenschutzerklaerung\/\">App Privacy<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/konto-loeschen\/\">Delete account<\/a><\/li>\n                <\/ul>\n              <\/div>\n\n            <\/div>\n\n            <button type=\"button\" class=\"mega-close\" id=\"megaClose\" aria-label=\"Close menu\">\n              <svg width=\"24\" height=\"24\" viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.2\" aria-hidden=\"true\"><path d=\"M6 6l12 12M6 18L18 6\"\/><\/svg>\n            <\/button>\n          <\/div>\n          <!-- End Mega Menu -->\n\n        <\/header>\n        <\/div>\n                <main id=\"main\">\n\n          <nav class=\"container breadcrumb\" aria-label=\"Breadcrumb navigation\">\n            <ol>\n              <li><a href=\"https:\/\/deinperfectday.de\/en\/\">Homepage<\/a><\/li>\n              <li><a href=\"https:\/\/deinperfectday.de\/en\/anbieter\/\">For providers<\/a><\/li>\n              <li><a href=\"https:\/\/deinperfectday.de\/en\/anbieter-shop-anbindung\/\">Shop integration<\/a><\/li>\n              <li><span aria-current=\"page\">WooCommerce<\/span><\/li>\n            <\/ol>\n          <\/nav>\n\n          <!-- Hero -->\n          <section class=\"subhero subhero-compact et_pb_section\" aria-label=\"introduction\">\n            <div class=\"container\">\n              <div class=\"reveal subhero-center\">\n                <span class=\"eyebrow\"><span class=\"pulse\" aria-hidden=\"true\"><\/span> &nbsp;WooCommerce \u00b7 10 Min \u00b7 einfach<\/span>\n                <h1>Perfect Day in WooCommerce anbinden.<\/h1>\n                <p class=\"subhero-sub\">Du nutzt WooCommerce? Es gibt zwei Wege: das <strong>native Connector-Plugin<\/strong> (empfohlen, einfacher) oder die <strong>Webhook-Variante<\/strong> per Code-Snippet. Beide schreiben in dieselbe Plattform \u2014 das Ergebnis ist identisch.<\/p>\n              <\/div>\n            <\/div>\n          <\/section>\n\n                    <!-- Voraussetzungs-Callout -->\n          <div class=\"container\">\n            <div class=\"guide-callout reveal\">\n              <svg width=\"22\" height=\"22\" viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.2\" aria-hidden=\"true\"><circle cx=\"12\" cy=\"12\" r=\"10\"\/><path d=\"M12 16v-4M12 8h.01\"\/><\/svg>\n              <p><strong>Vorab n\u00f6tig:<\/strong> Geh einmal die <a href=\"https:\/\/deinperfectday.de\/en\/anbieter-shop-anbindung-vorbereitung\/\">allgemeine Vorbereitung<\/a> durch \u2014 Coupon anlegen, Anwendungspasswort holen, Webhook-URL bereitlegen. Dauert rund f\u00fcnf Minuten und gilt f\u00fcr alle Shop-Systeme.<\/p>\n            <\/div>\n          <\/div>\n          \n          <!-- Anleitungs-Abschnitte -->\n                    <section class=\"block guide-section et_pb_section\" aria-labelledby=\"sec-0\">\n            <div class=\"container guide-container\">\n              <h2 id=\"sec-0\" class=\"guide-section-title\">Weg 1 \u2014 Native Connector (empfohlen, ~10 Min)<\/h2>\n                              <p class=\"guide-section-intro\">Der einfachste Weg: Wir pflegen ein eigenes WordPress-Plugin f\u00fcr WooCommerce.<\/p>\n                                          <ol class=\"guide-steps\">\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Connector-Plugin installieren<\/h3>\n                                                              <div class=\"guide-step-body\"><p>WP-Admin deines WooCommerce-Shops \u2192 <strong>Plugins \u2192 Hinzuf\u00fcgen<\/strong>. Lade das Plugin-ZIP <strong>\u201ePerfect Day Shop-Konnektor\"<\/strong> hoch (bekommst du von uns \u2014 Download-Link auf Anfrage \u00fcber den Support) und aktiviere es.<\/p><\/div>\n                                                          <\/li>\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Plugin konfigurieren<\/h3>\n                                                              <div class=\"guide-step-body\"><p>WP-Admin \u2192 <strong>Einstellungen \u2192 Perfect Day Konnektor<\/strong>. Trag ein:<\/p><ul class=\"feature-list\"><li> <strong>Plattform-Host:<\/strong> <code>https:\/\/plattform.deinperfectday.de<\/code><\/li><li> <strong>Username<\/strong> + <strong>Anwendungspasswort<\/strong> aus der Vorbereitung<\/li><\/ul><p>Speichern.<\/p><\/div>\n                                                          <\/li>\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Coupon-ID pro Produkt eintragen<\/h3>\n                                                              <div class=\"guide-step-body\"><p>WP-Admin \u2192 <strong>Produkte<\/strong> \u2192 Produkt \u00f6ffnen. Im Seitenleisten-Block <strong>\u201ePerfect Day\"<\/strong> die Coupon-ID eintragen (<code>15114<\/code> etc.) und das Produkt speichern.<\/p><\/div>\n                                                          <\/li>\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Test-Bestellung<\/h3>\n                                                              <div class=\"guide-step-body\"><p>Bestellung im Shop t\u00e4tigen, Status auf \u201eabgeschlossen\" setzen. WP-Admin \u2192 Bestellungen \u2192 Note pr\u00fcfen: <em>\u201ePerfect Day Codes generiert: 1\"<\/em>. Die Bestellung erscheint im Plattform-Backoffice unter <strong>Perfect Day \u2192 Shop-Bestellungen<\/strong>, der Kunde bekommt die Brand-Mail.<\/p><\/div>\n                                                          <\/li>\n                              <\/ol>\n                          <\/div>\n          <\/section>\n                    <section class=\"block guide-section et_pb_section\" style=\"background: var(--paper);\" aria-labelledby=\"sec-1\">\n            <div class=\"container guide-container\">\n              <h2 id=\"sec-1\" class=\"guide-section-title\">Weg 2 \u2014 \u00dcber den generischen Webhook (~15 Min)<\/h2>\n                              <p class=\"guide-section-intro\">Wenn du das Connector-Plugin nicht installieren willst \u2014 z. B. bei einer sehr alten WooCommerce-Version oder f\u00fcr ein leichtgewichtigeres Setup \u2014 sprichst du den Webhook \u00fcber ein kleines Code-Snippet an.<\/p>\n                                          <ol class=\"guide-steps\">\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Coupon-ID als Custom-Field am Produkt<\/h3>\n                                                              <div class=\"guide-step-body\"><p>WP-Admin \u2192 <strong>Produkte<\/strong> \u2192 Produkt \u00f6ffnen \u2192 Block <strong>\u201eEigene Felder\"<\/strong> (falls nicht sichtbar: oben rechts \u201eBildschirm-Optionen\" \u2192 \u201eEigene Felder\" aktivieren). Neues Feld:<\/p><ul class=\"feature-list\"><li> <strong>Name:<\/strong> <code>pfd_coupon_id<\/code><\/li><li> <strong>Wert:<\/strong> <code>15114<\/code> (deine Plattform-Coupon-ID)<\/li><\/ul><p>\u201eAktualisieren\" klicken.<\/p><\/div>\n                                                          <\/li>\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Snippet in die functions.php des Child-Themes<\/h3>\n                                                              <div class=\"guide-step-body\"><p>F\u00fcge folgenden Code in die <code>functions.php<\/code> deines aktiven Child-Themes ein. Trag deinen Username und das Anwendungspasswort an den markierten Stellen ein.<\/p><\/div>\n                                        <details class=\"code-collapsible reveal\"><summary>Vollst\u00e4ndigen Code anzeigen \u2014 PHP \u00b7 functions.php<\/summary><div class=\"code-block\"><div class=\"code-block-bar\"><span class=\"code-lang\">PHP \u00b7 functions.php<\/span><\/div><pre><code>add_action(&#039;woocommerce_order_status_completed&#039;, &#039;pfd_send_to_perfectday&#039;, 10, 1);\n\nfunction pfd_send_to_perfectday($order_id) {\n    $order = wc_get_order($order_id);\n    if (!$order) return;\n\n    \/\/ Idempotenz-Schutz: nur einmal pro Bestellung\n    if ($order-&gt;get_meta(&#039;_pfd_webhook_sent&#039;, true)) return;\n\n    $items = array();\n    foreach ($order-&gt;get_items() as $item) {\n        $product   = $item-&gt;get_product();\n        if (!$product) continue;\n        $coupon_id = get_post_meta($product-&gt;get_id(), &#039;pfd_coupon_id&#039;, true);\n        if (empty($coupon_id)) continue;\n        $items[] = array(\n            &#039;coupon_id&#039; =&gt; (int) $coupon_id,\n            &#039;count&#039;     =&gt; (int) $item-&gt;get_quantity(),\n        );\n    }\n    if (empty($items)) return;\n\n    $payload = array(\n        &#039;shop_order_id&#039; =&gt; (string) $order-&gt;get_order_number(),\n        &#039;shop_type&#039;     =&gt; &#039;woocommerce&#039;,\n        &#039;shop_domain&#039;   =&gt; parse_url(home_url(), PHP_URL_HOST),\n        &#039;customer&#039; =&gt; array(\n            &#039;email&#039;  =&gt; $order-&gt;get_billing_email(),\n            &#039;name&#039;   =&gt; trim($order-&gt;get_billing_first_name() . &#039; &#039; . $order-&gt;get_billing_last_name()),\n            &#039;locale&#039; =&gt; substr(get_locale(), 0, 2),\n        ),\n        &#039;items&#039;             =&gt; $items,\n        &#039;order_total_cents&#039; =&gt; (int) round($order-&gt;get_total() * 100),\n        &#039;currency&#039;          =&gt; $order-&gt;get_currency(),\n        &#039;placed_at&#039;         =&gt; $order-&gt;get_date_paid() ? $order-&gt;get_date_paid()-&gt;format(&#039;c&#039;) : current_time(&#039;c&#039;),\n    );\n\n    \/\/ \u2b07 DEINE Werte hier eintragen \u2b07\n    $username = &#039;DEIN-USERNAME&#039;;\n    $app_pwd  = &#039;xxxx xxxx xxxx xxxx xxxx xxxx&#039;;\n    \/\/ \u2b06 DEINE Werte hier eintragen \u2b06\n\n    $response = wp_remote_post(\n        &#039;https:\/\/plattform.deinperfectday.de\/wp-json\/perfectday\/shop\/webhook\/order&#039;,\n        array(\n            &#039;headers&#039; =&gt; array(\n                &#039;Content-Type&#039;  =&gt; &#039;application\/json&#039;,\n                &#039;Authorization&#039; =&gt; &#039;Basic &#039; . base64_encode($username . &#039;:&#039; . $app_pwd),\n            ),\n            &#039;body&#039;    =&gt; wp_json_encode($payload),\n            &#039;timeout&#039; =&gt; 15,\n        )\n    );\n\n    if (!is_wp_error($response)) {\n        $order-&gt;update_meta_data(&#039;_pfd_webhook_sent&#039;, &#039;1&#039;);\n        $order-&gt;add_order_note(sprintf(\n            &#039;Perfect Day: Webhook gesendet (HTTP %d)&#039;,\n            wp_remote_retrieve_response_code($response)\n        ));\n        $order-&gt;save();\n    } else {\n        $order-&gt;add_order_note(&#039;Perfect Day: Webhook fehlgeschlagen \u2014 &#039; . $response-&gt;get_error_message());\n    }\n}<\/code><\/pre><\/div><\/details>                  <\/li>\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Credentials sicher ablegen<\/h3>\n                                                              <div class=\"guide-step-body\"><p>Das Anwendungspasswort direkt im PHP-Code zu haben, ist suboptimal. Besser: per <code>wp-config.php<\/code>-Konstante definieren und im Snippet referenzieren.<\/p><\/div>\n                                        <div class=\"code-block\"><div class=\"code-block-bar\"><span class=\"code-lang\">PHP \u00b7 wp-config.php<\/span><\/div><pre><code>define(&#039;PFD_API_USER&#039;, &#039;dein-name&#039;);\ndefine(&#039;PFD_API_PASSWORD&#039;, &#039;xxxx xxxx xxxx xxxx xxxx xxxx&#039;);\n\n\/\/ Im Snippet dann:\n\/\/ $username = PFD_API_USER;\n\/\/ $app_pwd  = PFD_API_PASSWORD;<\/code><\/pre><\/div>                  <\/li>\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Test-Bestellung<\/h3>\n                                                              <div class=\"guide-step-body\"><p>Bestellung t\u00e4tigen, Status auf \u201eabgeschlossen\" setzen, dann die Bestellung in WP-Admin \u00f6ffnen und unten in den <strong>Notizen<\/strong> pr\u00fcfen: <code>Perfect Day: Webhook gesendet (HTTP 200)<\/code> \u2192 alles gut.<\/p><\/div>\n                                                          <\/li>\n                              <\/ol>\n                          <\/div>\n          <\/section>\n          \n                    <!-- Troubleshooting -->\n          <section class=\"block et_pb_section\" aria-labelledby=\"trouble-h\">\n            <div class=\"container guide-container\">\n              <div class=\"section-head reveal\" style=\"margin-bottom: 2rem;\">\n                <span class=\"eyebrow\">Wenn etwas klemmt<\/span>\n                <h2 id=\"trouble-h\">Troubleshooting.<\/h2>\n              <\/div>\n              <div class=\"faq-list\">\n                                  <details class=\"faq-item reveal\">\n                    <summary>Der Code wird nicht ausgef\u00fchrt<\/summary>\n                    <div class=\"faq-body\"><p>Liegt das Snippet im richtigen Theme (Child-Theme!)? Bei einem Theme-Update ist es sonst weg. Au\u00dferdem: Der Hook <code>woocommerce_order_status_completed<\/code> feuert nur beim Status-Wechsel auf \u201eabgeschlossen\". Wenn deine Zahlungsmethode Bestellungen direkt auf \u201ein Bearbeitung\" l\u00e4sst, \u00e4ndere den Hook auf <code>woocommerce_order_status_processing<\/code>.<\/p><\/div>\n                  <\/details>\n                                  <details class=\"faq-item reveal\">\n                    <summary>HTTP 403 \u2014 forbidden_coupon<\/summary>\n                    <div class=\"faq-body\"><p>The <code>pfd_coupon_id<\/code> im Custom-Field zeigt auf einen Coupon, der nicht zu deinem Anbieter-Account geh\u00f6rt. Pr\u00fcfe im Plattform-Backoffice unter <strong>Gutscheine<\/strong>, ob die ID dort existiert.<\/p><\/div>\n                  <\/details>\n                                  <details class=\"faq-item reveal\">\n                    <summary>HTTP 401 \u2014 authentication required<\/summary>\n                    <div class=\"faq-body\"><p>Username falsch (es ist der WordPress-Benutzername, nicht die E-Mail) oder das Anwendungspasswort falsch, widerrufen oder mit Kopier-Fehler \u00fcbernommen.<\/p><\/div>\n                  <\/details>\n                              <\/div>\n            <\/div>\n          <\/section>\n          \n                    <!-- Setup-Service -->\n          <section class=\"block et_pb_section\" style=\"background: var(--paper);\" aria-labelledby=\"service-h\">\n            <div class=\"container\">\n              <div class=\"guide-service reveal\">\n                <div>\n                  <span class=\"eyebrow\">Setup-Service<\/span>\n                  <h2 id=\"service-h\" style=\"margin: 0.6rem 0;\">Lieber von uns einrichten lassen?<\/h2>\n                  <p>WooCommerce ist der einfachste Fall \u2014 meist schaffst du das selbst. Falls du trotzdem Hilfe willst: Wir installieren und konfigurieren den Connector f\u00fcr dich, inklusive Coupon-ID-Mapping deiner Produkte.<\/p>\n                <\/div>\n                <div>\n                  <a class=\"btn btn-primary\" href=\"https:\/\/deinperfectday.de\/en\/support\/?subject=Shop-Anbindung%20Setup-Service%3A%20WooCommerce\">Setup-Service anfragen <span class=\"arrow\" aria-hidden=\"true\">\u2192<\/span><\/a>\n                <\/div>\n              <\/div>\n            <\/div>\n          <\/section>\n          \n                    <section class=\"block faq et_pb_section\" aria-labelledby=\"faq-h\">\n            <div class=\"container\">\n              <div class=\"section-head reveal\">\n                <span class=\"eyebrow\">Frequently Asked Questions<\/span>\n                <h2 id=\"faq-h\">Noch Fragen?<\/h2>\n              <\/div>\n              <div class=\"faq-list\">\n                                  <details class=\"faq-item reveal\"><summary>Weg 1 oder Weg 2 \u2014 was soll ich nehmen?<\/summary><div class=\"faq-body\">F\u00fcr die meisten Anbieter empfehlen wir Weg 1 (Connector-Plugin). Es aktualisiert sich automatisch \u00fcber das WP-Plugin-Update. Weg 2 (Snippet) ist f\u00fcr Anbieter mit eigener Dev-Hand, die ein leichtgewichtiges Setup ohne zus\u00e4tzliches Plugin bevorzugen. Funktional sind beide identisch.<\/div><\/details>\n                                  <details class=\"faq-item reveal\"><summary>Funktioniert das auch mit einer alten WooCommerce-Version?<\/summary><div class=\"faq-body\">Ja. Falls das Connector-Plugin eine zu neue WooCommerce-Version verlangt, nimm Weg 2 mit dem Snippet \u2014 der funktioniert auch mit \u00e4lteren Installationen.<\/div><\/details>\n                              <\/div>\n            <\/div>\n          <\/section>\n          \n          <!-- Bottom-CTA -->\n          <div class=\"container\">\n            <div class=\"big-cta reveal\">\n              <h2>Shop verbunden \u2014 und jetzt?<\/h2>\n              <p>Sobald der Webhook l\u00e4uft, erscheinen alle Bestellungen automatisch in deinem Backoffice. Brauchst du eine weitere Anbindung, geht jeder weitere Shop in wenigen Minuten.<\/p>\n              <a class=\"btn btn-primary\" href=\"https:\/\/deinperfectday.de\/en\/anbieter-shop-anbindung\/\">Zur Shop-\u00dcbersicht <span class=\"arrow\" aria-hidden=\"true\">\u2192<\/span><\/a>\n            <\/div>\n          <\/div>\n\n        <\/main>\n                <div class=\"pd-scope\">\n        <footer aria-labelledby=\"footer-h\">\n          <h2 id=\"footer-h\" class=\"sr-only\">Footer navigation<\/h2>\n          <div class=\"container\">\n            <div class=\"footer-grid\">\n              <div class=\"footer-brand\">\n                <a href=\"https:\/\/deinperfectday.de\/en\/\" class=\"logo logo-image\" aria-label=\"Perfect Day Homepage\">\n                  <img src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"Perfect Day \u2014 Enjoy your experience\" width=\"200\" height=\"46\" loading=\"lazy\" decoding=\"async\" class=\"lazyload\" data-src=\"https:\/\/deinperfectday.de\/wp-content\/plugins\/perfectday-pages-plugin\/assets\/images\/icons\/logo-hell.png\">\n                <\/a>\n                <p>City vouchers, tickets, voucher books and coupons \u2014 one app for your city. Data protection from Germany, 5 languages.<\/p>\n\n                                  <div class=\"app-badges\" style=\"margin-top: 1rem;\">\n                                          <a href=\"https:\/\/apps.apple.com\/de\/app\/id1525409363\" class=\"app-badge\" target=\"_blank\" rel=\"noopener\" aria-label=\"Open Perfect Day in the Apple App Store\">\n                        <img src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"Im Apple App Store laden\" width=\"135\" height=\"40\" loading=\"lazy\" decoding=\"async\" class=\"lazyload\" data-src=\"https:\/\/deinperfectday.de\/wp-content\/plugins\/perfectday-pages-plugin\/assets\/images\/icons\/badge-app-store.png\">\n                      <\/a>\n                                                              <a href=\"https:\/\/play.google.com\/store\/apps\/details?id=koop.perfect.day&#038;utm_source=emea_Med\" class=\"app-badge\" target=\"_blank\" rel=\"noopener\" aria-label=\"Open Perfect Day in the Google Play Store\">\n                        <img src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"Im Google Play Store laden\" width=\"135\" height=\"40\" loading=\"lazy\" decoding=\"async\" class=\"lazyload\" data-src=\"https:\/\/deinperfectday.de\/wp-content\/plugins\/perfectday-pages-plugin\/assets\/images\/icons\/badge-play-store.png\">\n                      <\/a>\n                                      <\/div>\n                              <\/div>\n              <div class=\"footer-col\">\n                <h3>For providers<\/h3>\n                <ul>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/stadtgutscheine\/\">City vouchers<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/online-ticketing\/\">Online ticketing<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/gutscheinbuecher\/\">Voucher books<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/coupons\/\">Coupons<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/mitarbeiter-benefits\/\">Employee benefits<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/anbieter-shop-anbindung\/\">Shop integration<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/preise\/\">Prices &amp; Models<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/anbieter-werden\/\">Providers will<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/buchen\/\">Book columns<\/a><\/li>\n                <\/ul>\n              <\/div>\n              <div class=\"footer-col\">\n                <h3>About &amp; Contact<\/h3>\n                <ul>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/app\/\">Discover the app<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/app-versionen\/\">App versions<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/roi-rechner\/\">ROI calculator<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/#prinzip\">concept<\/a><\/li>\n                  <li><a href=\"https:\/\/plattform.deinperfectday.de\/\">Platform login<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/hilfe\/\">Help &amp; Features<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/support\/\">Support<\/a><\/li>\n                <\/ul>\n              <\/div>\n              <div class=\"footer-col\">\n                <h3>Legal<\/h3>\n                <ul>\n                                    <li><a href=\"https:\/\/deinperfectday.de\/en\/impressum\/\">imprint<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/datenschutz\/\">Privacy policy (website)<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/anbieter-agb\/\">Provider Terms and Conditions<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/agb\/terms-of-service\/\">App Terms of Use<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/datenschutzerklaerung\/\">App Privacy<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/konto-loeschen\/\">Delete account<\/a><\/li>\n                <\/ul>\n              <\/div>\n            <\/div>\n            <div class=\"footer-bottom\">\n              <span class=\"logo-text\">PERFECT <span class=\"teal\">DAY<\/span><\/span>\n              <span>\u00a9 2026 DigElite \u00b7 deinperfectday.de<\/span>\n            <\/div>\n            <p class=\"footer-cities\">City voucher currently live in: Garrel \u00b7 L\u00f6ningen \u00b7 Twistringen \u2014 more cities to follow in 2026.<\/p>\n            <p class=\"footer-vat\">All prices quoted are exclusive of statutory VAT.<\/p>\n          <\/div>\n        <\/footer>\n        <\/div>\n        <\/div>","protected":false},"excerpt":{"rendered":"<div class=\"pd-scope\">        <div class=\"pd-scope\">\n        <header id=\"site-header\">\n          <div class=\"container nav\">\n            <a href=\"https:\/\/deinperfectday.de\/en\/\" class=\"logo logo-image\" aria-label=\"Perfect Day Homepage\">\n              <img\n                src=\"https:\/\/deinperfectday.de\/wp-content\/plugins\/perfectday-pages-plugin\/assets\/images\/icons\/logo-dunkel.png\"\n                alt=\"Perfect Day \u2014 Enjoy your experience\"\n                width=\"220\" height=\"50\"\n                fetchpriority=\"high\" decoding=\"async\">\n            <\/a>\n\n            <button\n              type=\"button\"\n              class=\"mega-toggle\"\n              id=\"megaToggle\"\n              aria-expanded=\"false\"\n              aria-controls=\"mega-menu\"\n              aria-label=\"Open main menu\">\n              <span class=\"mega-toggle-text\">menu<\/span>\n              <span class=\"mega-toggle-icon\" aria-hidden=\"true\">\n                <svg width=\"22\" height=\"22\" viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M4 7h16M4 12h16M4 17h16\"\/><\/svg>\n              <\/span>\n            <\/button>\n\n            <div class=\"nav-cta\">\n              <a class=\"btn btn-ghost\" href=\"https:\/\/plattform.deinperfectday.de\/\">Register<\/a>\n              <a class=\"btn btn-primary\" href=\"https:\/\/deinperfectday.de\/en\/anbieter-werden\/\">Become a provider now <span class=\"arrow\" aria-hidden=\"true\">\u2192<\/span><\/a>\n            <\/div>\n          <\/div>\n\n          <!-- ============== MEGA MENU DRAWER ============== -->\n          <div class=\"mega-menu\" id=\"mega-menu\" hidden role=\"dialog\" aria-modal=\"false\" aria-label=\"Main Menu\">\n            <div class=\"container mega-grid\">\n\n              <!-- Spalte 1: F\u00fcr Anbieter -->\n              <div class=\"mega-col\">\n                <h3 class=\"mega-col-title\">For providers<\/h3>\n                <ul class=\"mega-list\">\n                                      <li>\n                      <a href=\"https:\/\/deinperfectday.de\/en\/stadtgutscheine\/\">\n                        <strong>City vouchers<\/strong>\n                        <span>Multi-provider vouchers, partial redemption, remaining balance automatically credited.<\/span>\n                      <\/a>\n                    <\/li>\n                                      <li>\n                      <a href=\"https:\/\/deinperfectday.de\/en\/online-ticketing\/\">\n                        <strong>Online ticketing<\/strong>\n                        <span>\u20ac0.49 per ticket. No booking fee for your guests.<\/span>\n                      <\/a>\n                    <\/li>\n                                      <li>\n                      <a href=\"https:\/\/deinperfectday.de\/en\/gutscheinbuecher\/\">\n                        <strong>Voucher books<\/strong>\n                        <span>Digital, 5 languages, instant updates. No printing costs.<\/span>\n                      <\/a>\n                    <\/li>\n                                      <li>\n                      <a href=\"https:\/\/deinperfectday.de\/en\/coupons\/\">\n                        <strong>Coupons<\/strong>\n                        <span>From \u20ac9.90\/month. Three tiers, fixed price, can be cancelled monthly.<\/span>\n                      <\/a>\n                    <\/li>\n                                    <li class=\"mega-list-divider\">\n                    <a href=\"https:\/\/deinperfectday.de\/en\/preise\/\">\n                      <strong>Prices &amp; Models<\/strong>\n                      <span>Transparent terms and conditions, 10 % bundle discount for three pillars.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/en\/buchen\/\">\n                      <strong>Book columns<\/strong>\n                      <span>Booking assistant: Select columns and make a binding booking.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/en\/anbieter-werden\/\" class=\"mega-link-highlight\">\n                      <strong>Providers will be \u2192<\/strong>\n                      <span>Register for free, get a quick response.<\/span>\n                    <\/a>\n                  <\/li>\n                <\/ul>\n              <\/div>\n\n              <!-- Spalte 2: Entdecken & Konzept -->\n              <div class=\"mega-col\">\n                <h3 class=\"mega-col-title\">Discover<\/h3>\n                <ul class=\"mega-list\">\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/en\/app\/\">\n                      <strong>Discover the app<\/strong>\n                      <span>How the end-user app works.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/en\/roi-rechner\/\">\n                      <strong>ROI calculator<\/strong>\n                      <span>Platform costs per year in 10 seconds.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/en\/app-versionen\/\">\n                      <strong>App versions<\/strong>\n                      <span>What&#039;s new in the app \u2014 the version history.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/en\/#prinzip\">\n                      <strong>The concept<\/strong>\n                      <span>Cross-pollination of the four pillars explained.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/en\/anbieter\/\">\n                      <strong>Provider Hub<\/strong>\n                      <span>Overview of all pillars with competitive comparison.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/en\/mitarbeiter-benefits\/\">\n                      <strong>Employee benefits<\/strong>\n                      <span>Corporate subscriptions: City vouchers automatically distributed to the team.<\/span>\n                    <\/a>\n                  <\/li>\n                <\/ul>\n\n                <h3 class=\"mega-col-title\" style=\"margin-top: 1.6rem;\">City voucher live in<\/h3>\n                <p class=\"mega-cities\">\n                  Garrel \u00b7 L\u00f6ningen \u00b7 Twistringen<br>\n                  <small>More cities will follow in 2026.<\/small>\n                <\/p>\n              <\/div>\n\n              <!-- Spalte 3: Service + Account -->\n              <div class=\"mega-col\">\n                <h3 class=\"mega-col-title\">service<\/h3>\n                <ul class=\"mega-list\">\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/en\/hilfe\/\">\n                      <strong>Help &amp; Features<\/strong>\n                      <span>All app functions explained step by step.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/en\/support\/\">\n                      <strong>Support<\/strong>\n                      <span>Help for suppliers and customers.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/plattform.deinperfectday.de\/\">\n                      <strong>Platform login<\/strong>\n                      <span>For active providers with an account.<\/span>\n                    <\/a>\n                  <\/li>\n                <\/ul>\n\n                                  <h3 class=\"mega-col-title\" style=\"margin-top: 1.6rem;\">Language<\/h3>\n                  <div class=\"mega-lang-switcher\"><div class=\"trp-shortcode-switcher__wrapper\"\r\n     style=\"--bg:#ffffff;--bg-hover:#0000000d;--text:#143852;--text-hover:#1d2327;--border:1px solid #1438521a;--border-width:1px;--border-color:#1438521a;--border-radius:5px;--flag-radius:2px;--flag-size:18px;--aspect-ratio:4\/3;--font-size:14px;--transition-duration:0.2s\"\r\n     role=\"group\"\r\n     data-open-mode=\"hover\">\r\n\r\n    \r\n        <!-- ANCHOR (in-flow only; sizing\/borders; inert) -->\r\n        <div class=\"trp-language-switcher trp-ls-dropdown trp-shortcode-switcher trp-shortcode-anchor trp-open-on-hover\"\r\n             aria-hidden=\"true\"\r\n             inert\r\n data-no-translation>\r\n                <div class=\"trp-current-language-item__wrapper\">\r\n        <a class=\"trp-language-item trp-language-item__default trp-language-item__current\" data-no-translation href=\"https:\/\/deinperfectday.de\/en\/wp-json\/wp\/v2\/pages\/233287\" title=\"English\"><img decoding=\"async\" src=\"https:\/\/deinperfectday.de\/wp-content\/plugins\/translatepress-multilingual\/assets\/flags\/4x3\/en_GB.svg\" class=\"trp-flag-image\" alt=\"\" role=\"presentation\" loading=\"lazy\" \/><span class=\"trp-language-item-name\">English<\/span><\/a>                    <svg class=\"trp-shortcode-arrow\" width=\"20\" height=\"20\" viewbox=\"0 0 20 21\" fill=\"none\" aria-hidden=\"true\" focusable=\"false\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n                <path d=\"M5 8L10 13L15 8\" stroke=\"var(--text)\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n            <\/svg>\r\n            <\/div>\r\n            <\/div>\r\n\r\n        <!-- OVERLAY (positioned; interactive surface) -->\r\n        <div class=\"trp-language-switcher trp-ls-dropdown trp-shortcode-switcher trp-shortcode-overlay trp-open-on-hover\"\r\n             role=\"navigation\"\r\n             aria-label=\"Website language selector\"\r\n             data-no-translation\r\n>\r\n                <div class=\"trp-current-language-item__wrapper\">\r\n        <div class=\"trp-language-item trp-language-item__default trp-language-item__current\" data-no-translation role=\"button\" aria-expanded=\"false\" tabindex=\"0\" aria-label=\"Change language\" aria-controls=\"trp-shortcode-dropdown-6a0c0640cece3\"><img decoding=\"async\" src=\"https:\/\/deinperfectday.de\/wp-content\/plugins\/translatepress-multilingual\/assets\/flags\/4x3\/en_GB.svg\" class=\"trp-flag-image\" alt=\"\" role=\"presentation\" loading=\"lazy\" \/><span class=\"trp-language-item-name\">English<\/span><\/div>                    <svg class=\"trp-shortcode-arrow\" width=\"20\" height=\"20\" viewbox=\"0 0 20 21\" fill=\"none\" aria-hidden=\"true\" focusable=\"false\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n                <path d=\"M5 8L10 13L15 8\" stroke=\"var(--text)\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n            <\/svg>\r\n            <\/div>\r\n    \r\n            <div class=\"trp-switcher-dropdown-list\"\r\n                 id=\"trp-shortcode-dropdown-6a0c0640cece3\"\r\n                 role=\"group\"\r\n                 aria-label=\"Available languages\"\r\n                 hidden\r\n inert\r\n>\r\n                                                            <a class=\"trp-language-item\" href=\"https:\/\/deinperfectday.de\/en\/wp-json\/wp\/v2\/pages\/233287\" title=\"German\">\r\n                            <img decoding=\"async\" src=\"https:\/\/deinperfectday.de\/wp-content\/plugins\/translatepress-multilingual\/assets\/flags\/4x3\/de_DE.svg\" class=\"trp-flag-image\" alt=\"\" role=\"presentation\" loading=\"lazy\" \/>                                                            <span class=\"trp-language-item-name\" data-no-translation>German<\/span>\r\n                                                                                <\/a>\r\n                                            <a class=\"trp-language-item\" href=\"https:\/\/deinperfectday.de\/en\/wp-json\/wp\/v2\/pages\/233287\" title=\"Spanish\">\r\n                            <img decoding=\"async\" src=\"https:\/\/deinperfectday.de\/wp-content\/plugins\/translatepress-multilingual\/assets\/flags\/4x3\/es_ES.svg\" class=\"trp-flag-image\" alt=\"\" role=\"presentation\" loading=\"lazy\" \/>                                                            <span class=\"trp-language-item-name\" data-no-translation>Spanish<\/span>\r\n                                                                                <\/a>\r\n                                            <a class=\"trp-language-item\" href=\"https:\/\/deinperfectday.de\/en\/wp-json\/wp\/v2\/pages\/233287\" title=\"Russian\">\r\n                            <img decoding=\"async\" src=\"https:\/\/deinperfectday.de\/wp-content\/plugins\/translatepress-multilingual\/assets\/flags\/4x3\/ru_RU.svg\" class=\"trp-flag-image\" alt=\"\" role=\"presentation\" loading=\"lazy\" \/>                                                            <span class=\"trp-language-item-name\" data-no-translation>Russian<\/span>\r\n                                                                                <\/a>\r\n                                            <a class=\"trp-language-item\" href=\"https:\/\/deinperfectday.de\/en\/wp-json\/wp\/v2\/pages\/233287\" title=\"Turkish\">\r\n                            <img decoding=\"async\" src=\"https:\/\/deinperfectday.de\/wp-content\/plugins\/translatepress-multilingual\/assets\/flags\/4x3\/tr_TR.svg\" class=\"trp-flag-image\" alt=\"\" role=\"presentation\" loading=\"lazy\" \/>                                                            <span class=\"trp-language-item-name\" data-no-translation>Turkish<\/span>\r\n                                                                                <\/a>\r\n                                                <\/div>\r\n        <\/div>\r\n\r\n    <\/div>\r\n<\/div>\n                \n                <h3 class=\"mega-col-title\" style=\"margin-top: 1.6rem;\">Download the app<\/h3>\n                                  <div class=\"app-badges mega-app-badges\">\n                                          <a href=\"https:\/\/apps.apple.com\/de\/app\/id1525409363\" class=\"app-badge\" target=\"_blank\" rel=\"noopener\" aria-label=\"Open Perfect Day in the Apple App Store\">\n                        <img src=\"https:\/\/deinperfectday.de\/wp-content\/plugins\/perfectday-pages-plugin\/assets\/images\/icons\/badge-app-store.png\" alt=\"Im Apple App Store laden\" width=\"135\" height=\"40\" loading=\"lazy\" decoding=\"async\">\n                      <\/a>\n                                                              <a href=\"https:\/\/play.google.com\/store\/apps\/details?id=koop.perfect.day&#038;utm_source=emea_Med\" class=\"app-badge\" target=\"_blank\" rel=\"noopener\" aria-label=\"Open Perfect Day in the Google Play Store\">\n                        <img src=\"https:\/\/deinperfectday.de\/wp-content\/plugins\/perfectday-pages-plugin\/assets\/images\/icons\/badge-play-store.png\" alt=\"Im Google Play Store laden\" width=\"135\" height=\"40\" loading=\"lazy\" decoding=\"async\">\n                      <\/a>\n                                      <\/div>\n                \n                <h3 class=\"mega-col-title\" style=\"margin-top: 1.6rem;\">Legal<\/h3>\n                <ul class=\"mega-list mega-list-compact\">\n                                    <li><a href=\"https:\/\/deinperfectday.de\/en\/impressum\/\">imprint<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/datenschutz\/\">Privacy policy (website)<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/anbieter-agb\/\">Provider Terms and Conditions<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/agb\/terms-of-service\/\">App Terms of Use<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/datenschutzerklaerung\/\">App Privacy<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/konto-loeschen\/\">Delete account<\/a><\/li>\n                <\/ul>\n              <\/div>\n\n            <\/div>\n\n            <button type=\"button\" class=\"mega-close\" id=\"megaClose\" aria-label=\"Close menu\">\n              <svg width=\"24\" height=\"24\" viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.2\" aria-hidden=\"true\"><path d=\"M6 6l12 12M6 18L18 6\"\/><\/svg>\n            <\/button>\n          <\/div>\n          <!-- End Mega Menu -->\n\n        <\/header>\n        <\/div>\n                <main id=\"main\">\n\n          <nav class=\"container breadcrumb\" aria-label=\"Breadcrumb navigation\">\n            <ol>\n              <li><a href=\"https:\/\/deinperfectday.de\/en\/\">Homepage<\/a><\/li>\n              <li><a href=\"https:\/\/deinperfectday.de\/en\/anbieter\/\">For providers<\/a><\/li>\n              <li><a href=\"https:\/\/deinperfectday.de\/en\/anbieter-shop-anbindung\/\">Shop integration<\/a><\/li>\n              <li><span aria-current=\"page\">WooCommerce<\/span><\/li>\n            <\/ol>\n          <\/nav>\n\n          <!-- Hero -->\n          <section class=\"subhero subhero-compact et_pb_section\" aria-label=\"introduction\">\n            <div class=\"container\">\n              <div class=\"reveal subhero-center\">\n                <span class=\"eyebrow\"><span class=\"pulse\" aria-hidden=\"true\"><\/span> &nbsp;WooCommerce \u00b7 10 Min \u00b7 einfach<\/span>\n                <h1>Perfect Day in WooCommerce anbinden.<\/h1>\n                <p class=\"subhero-sub\">Du nutzt WooCommerce? Es gibt zwei Wege: das <strong>native Connector-Plugin<\/strong> (empfohlen, einfacher) oder die <strong>Webhook-Variante<\/strong> per Code-Snippet. Beide schreiben in dieselbe Plattform \u2014 das Ergebnis ist identisch.<\/p>\n              <\/div>\n            <\/div>\n          <\/section>\n\n                    <!-- Voraussetzungs-Callout -->\n          <div class=\"container\">\n            <div class=\"guide-callout reveal\">\n              <svg width=\"22\" height=\"22\" viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.2\" aria-hidden=\"true\"><circle cx=\"12\" cy=\"12\" r=\"10\"\/><path d=\"M12 16v-4M12 8h.01\"\/><\/svg>\n              <p><strong>Vorab n\u00f6tig:<\/strong> Geh einmal die <a href=\"https:\/\/deinperfectday.de\/en\/anbieter-shop-anbindung-vorbereitung\/\">allgemeine Vorbereitung<\/a> durch \u2014 Coupon anlegen, Anwendungspasswort holen, Webhook-URL bereitlegen. Dauert rund f\u00fcnf Minuten und gilt f\u00fcr alle Shop-Systeme.<\/p>\n            <\/div>\n          <\/div>\n          \n          <!-- Anleitungs-Abschnitte -->\n                    <section class=\"block guide-section et_pb_section\" aria-labelledby=\"sec-0\">\n            <div class=\"container guide-container\">\n              <h2 id=\"sec-0\" class=\"guide-section-title\">Weg 1 \u2014 Native Connector (empfohlen, ~10 Min)<\/h2>\n                              <p class=\"guide-section-intro\">Der einfachste Weg: Wir pflegen ein eigenes WordPress-Plugin f\u00fcr WooCommerce.<\/p>\n                                          <ol class=\"guide-steps\">\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Connector-Plugin installieren<\/h3>\n                                                              <div class=\"guide-step-body\"><p>WP-Admin deines WooCommerce-Shops \u2192 <strong>Plugins \u2192 Hinzuf\u00fcgen<\/strong>. Lade das Plugin-ZIP <strong>\u201ePerfect Day Shop-Konnektor\"<\/strong> hoch (bekommst du von uns \u2014 Download-Link auf Anfrage \u00fcber den Support) und aktiviere es.<\/p><\/div>\n                                                          <\/li>\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Plugin konfigurieren<\/h3>\n                                                              <div class=\"guide-step-body\"><p>WP-Admin \u2192 <strong>Einstellungen \u2192 Perfect Day Konnektor<\/strong>. Trag ein:<\/p><ul class=\"feature-list\"><li> <strong>Plattform-Host:<\/strong> <code>https:\/\/plattform.deinperfectday.de<\/code><\/li><li> <strong>Username<\/strong> + <strong>Anwendungspasswort<\/strong> aus der Vorbereitung<\/li><\/ul><p>Speichern.<\/p><\/div>\n                                                          <\/li>\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Coupon-ID pro Produkt eintragen<\/h3>\n                                                              <div class=\"guide-step-body\"><p>WP-Admin \u2192 <strong>Produkte<\/strong> \u2192 Produkt \u00f6ffnen. Im Seitenleisten-Block <strong>\u201ePerfect Day\"<\/strong> die Coupon-ID eintragen (<code>15114<\/code> etc.) und das Produkt speichern.<\/p><\/div>\n                                                          <\/li>\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Test-Bestellung<\/h3>\n                                                              <div class=\"guide-step-body\"><p>Bestellung im Shop t\u00e4tigen, Status auf \u201eabgeschlossen\" setzen. WP-Admin \u2192 Bestellungen \u2192 Note pr\u00fcfen: <em>\u201ePerfect Day Codes generiert: 1\"<\/em>. Die Bestellung erscheint im Plattform-Backoffice unter <strong>Perfect Day \u2192 Shop-Bestellungen<\/strong>, der Kunde bekommt die Brand-Mail.<\/p><\/div>\n                                                          <\/li>\n                              <\/ol>\n                          <\/div>\n          <\/section>\n                    <section class=\"block guide-section et_pb_section\" style=\"background: var(--paper);\" aria-labelledby=\"sec-1\">\n            <div class=\"container guide-container\">\n              <h2 id=\"sec-1\" class=\"guide-section-title\">Weg 2 \u2014 \u00dcber den generischen Webhook (~15 Min)<\/h2>\n                              <p class=\"guide-section-intro\">Wenn du das Connector-Plugin nicht installieren willst \u2014 z. B. bei einer sehr alten WooCommerce-Version oder f\u00fcr ein leichtgewichtigeres Setup \u2014 sprichst du den Webhook \u00fcber ein kleines Code-Snippet an.<\/p>\n                                          <ol class=\"guide-steps\">\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Coupon-ID als Custom-Field am Produkt<\/h3>\n                                                              <div class=\"guide-step-body\"><p>WP-Admin \u2192 <strong>Produkte<\/strong> \u2192 Produkt \u00f6ffnen \u2192 Block <strong>\u201eEigene Felder\"<\/strong> (falls nicht sichtbar: oben rechts \u201eBildschirm-Optionen\" \u2192 \u201eEigene Felder\" aktivieren). Neues Feld:<\/p><ul class=\"feature-list\"><li> <strong>Name:<\/strong> <code>pfd_coupon_id<\/code><\/li><li> <strong>Wert:<\/strong> <code>15114<\/code> (deine Plattform-Coupon-ID)<\/li><\/ul><p>\u201eAktualisieren\" klicken.<\/p><\/div>\n                                                          <\/li>\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Snippet in die functions.php des Child-Themes<\/h3>\n                                                              <div class=\"guide-step-body\"><p>F\u00fcge folgenden Code in die <code>functions.php<\/code> deines aktiven Child-Themes ein. Trag deinen Username und das Anwendungspasswort an den markierten Stellen ein.<\/p><\/div>\n                                        <details class=\"code-collapsible reveal\"><summary>Vollst\u00e4ndigen Code anzeigen \u2014 PHP \u00b7 functions.php<\/summary><div class=\"code-block\"><div class=\"code-block-bar\"><span class=\"code-lang\">PHP \u00b7 functions.php<\/span><\/div><pre><code>add_action(&#039;woocommerce_order_status_completed&#039;, &#039;pfd_send_to_perfectday&#039;, 10, 1);\n\nfunction pfd_send_to_perfectday($order_id) {\n    $order = wc_get_order($order_id);\n    if (!$order) return;\n\n    \/\/ Idempotenz-Schutz: nur einmal pro Bestellung\n    if ($order-&gt;get_meta(&#039;_pfd_webhook_sent&#039;, true)) return;\n\n    $items = array();\n    foreach ($order-&gt;get_items() as $item) {\n        $product   = $item-&gt;get_product();\n        if (!$product) continue;\n        $coupon_id = get_post_meta($product-&gt;get_id(), &#039;pfd_coupon_id&#039;, true);\n        if (empty($coupon_id)) continue;\n        $items[] = array(\n            &#039;coupon_id&#039; =&gt; (int) $coupon_id,\n            &#039;count&#039;     =&gt; (int) $item-&gt;get_quantity(),\n        );\n    }\n    if (empty($items)) return;\n\n    $payload = array(\n        &#039;shop_order_id&#039; =&gt; (string) $order-&gt;get_order_number(),\n        &#039;shop_type&#039;     =&gt; &#039;woocommerce&#039;,\n        &#039;shop_domain&#039;   =&gt; parse_url(home_url(), PHP_URL_HOST),\n        &#039;customer&#039; =&gt; array(\n            &#039;email&#039;  =&gt; $order-&gt;get_billing_email(),\n            &#039;name&#039;   =&gt; trim($order-&gt;get_billing_first_name() . &#039; &#039; . $order-&gt;get_billing_last_name()),\n            &#039;locale&#039; =&gt; substr(get_locale(), 0, 2),\n        ),\n        &#039;items&#039;             =&gt; $items,\n        &#039;order_total_cents&#039; =&gt; (int) round($order-&gt;get_total() * 100),\n        &#039;currency&#039;          =&gt; $order-&gt;get_currency(),\n        &#039;placed_at&#039;         =&gt; $order-&gt;get_date_paid() ? $order-&gt;get_date_paid()-&gt;format(&#039;c&#039;) : current_time(&#039;c&#039;),\n    );\n\n    \/\/ \u2b07 DEINE Werte hier eintragen \u2b07\n    $username = &#039;DEIN-USERNAME&#039;;\n    $app_pwd  = &#039;xxxx xxxx xxxx xxxx xxxx xxxx&#039;;\n    \/\/ \u2b06 DEINE Werte hier eintragen \u2b06\n\n    $response = wp_remote_post(\n        &#039;https:\/\/plattform.deinperfectday.de\/wp-json\/perfectday\/shop\/webhook\/order&#039;,\n        array(\n            &#039;headers&#039; =&gt; array(\n                &#039;Content-Type&#039;  =&gt; &#039;application\/json&#039;,\n                &#039;Authorization&#039; =&gt; &#039;Basic &#039; . base64_encode($username . &#039;:&#039; . $app_pwd),\n            ),\n            &#039;body&#039;    =&gt; wp_json_encode($payload),\n            &#039;timeout&#039; =&gt; 15,\n        )\n    );\n\n    if (!is_wp_error($response)) {\n        $order-&gt;update_meta_data(&#039;_pfd_webhook_sent&#039;, &#039;1&#039;);\n        $order-&gt;add_order_note(sprintf(\n            &#039;Perfect Day: Webhook gesendet (HTTP %d)&#039;,\n            wp_remote_retrieve_response_code($response)\n        ));\n        $order-&gt;save();\n    } else {\n        $order-&gt;add_order_note(&#039;Perfect Day: Webhook fehlgeschlagen \u2014 &#039; . $response-&gt;get_error_message());\n    }\n}<\/code><\/pre><\/div><\/details>                  <\/li>\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Credentials sicher ablegen<\/h3>\n                                                              <div class=\"guide-step-body\"><p>Das Anwendungspasswort direkt im PHP-Code zu haben, ist suboptimal. Besser: per <code>wp-config.php<\/code>-Konstante definieren und im Snippet referenzieren.<\/p><\/div>\n                                        <div class=\"code-block\"><div class=\"code-block-bar\"><span class=\"code-lang\">PHP \u00b7 wp-config.php<\/span><\/div><pre><code>define(&#039;PFD_API_USER&#039;, &#039;dein-name&#039;);\ndefine(&#039;PFD_API_PASSWORD&#039;, &#039;xxxx xxxx xxxx xxxx xxxx xxxx&#039;);\n\n\/\/ Im Snippet dann:\n\/\/ $username = PFD_API_USER;\n\/\/ $app_pwd  = PFD_API_PASSWORD;<\/code><\/pre><\/div>                  <\/li>\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Test-Bestellung<\/h3>\n                                                              <div class=\"guide-step-body\"><p>Bestellung t\u00e4tigen, Status auf \u201eabgeschlossen\" setzen, dann die Bestellung in WP-Admin \u00f6ffnen und unten in den <strong>Notizen<\/strong> pr\u00fcfen: <code>Perfect Day: Webhook gesendet (HTTP 200)<\/code> \u2192 alles gut.<\/p><\/div>\n                                                          <\/li>\n                              <\/ol>\n                          <\/div>\n          <\/section>\n          \n                    <!-- Troubleshooting -->\n          <section class=\"block et_pb_section\" aria-labelledby=\"trouble-h\">\n            <div class=\"container guide-container\">\n              <div class=\"section-head reveal\" style=\"margin-bottom: 2rem;\">\n                <span class=\"eyebrow\">Wenn etwas klemmt<\/span>\n                <h2 id=\"trouble-h\">Troubleshooting.<\/h2>\n              <\/div>\n              <div class=\"faq-list\">\n                                  <details class=\"faq-item reveal\">\n                    <summary>Der Code wird nicht ausgef\u00fchrt<\/summary>\n                    <div class=\"faq-body\"><p>Liegt das Snippet im richtigen Theme (Child-Theme!)? Bei einem Theme-Update ist es sonst weg. Au\u00dferdem: Der Hook <code>woocommerce_order_status_completed<\/code> feuert nur beim Status-Wechsel auf \u201eabgeschlossen\". Wenn deine Zahlungsmethode Bestellungen direkt auf \u201ein Bearbeitung\" l\u00e4sst, \u00e4ndere den Hook auf <code>woocommerce_order_status_processing<\/code>.<\/p><\/div>\n                  <\/details>\n                                  <details class=\"faq-item reveal\">\n                    <summary>HTTP 403 \u2014 forbidden_coupon<\/summary>\n                    <div class=\"faq-body\"><p>The <code>pfd_coupon_id<\/code> im Custom-Field zeigt auf einen Coupon, der nicht zu deinem Anbieter-Account geh\u00f6rt. Pr\u00fcfe im Plattform-Backoffice unter <strong>Gutscheine<\/strong>, ob die ID dort existiert.<\/p><\/div>\n                  <\/details>\n                                  <details class=\"faq-item reveal\">\n                    <summary>HTTP 401 \u2014 authentication required<\/summary>\n                    <div class=\"faq-body\"><p>Username falsch (es ist der WordPress-Benutzername, nicht die E-Mail) oder das Anwendungspasswort falsch, widerrufen oder mit Kopier-Fehler \u00fcbernommen.<\/p><\/div>\n                  <\/details>\n                              <\/div>\n            <\/div>\n          <\/section>\n          \n                    <!-- Setup-Service -->\n          <section class=\"block et_pb_section\" style=\"background: var(--paper);\" aria-labelledby=\"service-h\">\n            <div class=\"container\">\n              <div class=\"guide-service reveal\">\n                <div>\n                  <span class=\"eyebrow\">Setup-Service<\/span>\n                  <h2 id=\"service-h\" style=\"margin: 0.6rem 0;\">Lieber von uns einrichten lassen?<\/h2>\n                  <p>WooCommerce ist der einfachste Fall \u2014 meist schaffst du das selbst. Falls du trotzdem Hilfe willst: Wir installieren und konfigurieren den Connector f\u00fcr dich, inklusive Coupon-ID-Mapping deiner Produkte.<\/p>\n                <\/div>\n                <div>\n                  <a class=\"btn btn-primary\" href=\"https:\/\/deinperfectday.de\/en\/support\/?subject=Shop-Anbindung%20Setup-Service%3A%20WooCommerce\">Setup-Service anfragen <span class=\"arrow\" aria-hidden=\"true\">\u2192<\/span><\/a>\n                <\/div>\n              <\/div>\n            <\/div>\n          <\/section>\n          \n                    <section class=\"block faq et_pb_section\" aria-labelledby=\"faq-h\">\n            <div class=\"container\">\n              <div class=\"section-head reveal\">\n                <span class=\"eyebrow\">Frequently Asked Questions<\/span>\n                <h2 id=\"faq-h\">Noch Fragen?<\/h2>\n              <\/div>\n              <div class=\"faq-list\">\n                                  <details class=\"faq-item reveal\"><summary>Weg 1 oder Weg 2 \u2014 was soll ich nehmen?<\/summary><div class=\"faq-body\">F\u00fcr die meisten Anbieter empfehlen wir Weg 1 (Connector-Plugin). Es aktualisiert sich automatisch \u00fcber das WP-Plugin-Update. Weg 2 (Snippet) ist f\u00fcr Anbieter mit eigener Dev-Hand, die ein leichtgewichtiges Setup ohne zus\u00e4tzliches Plugin bevorzugen. Funktional sind beide identisch.<\/div><\/details>\n                                  <details class=\"faq-item reveal\"><summary>Funktioniert das auch mit einer alten WooCommerce-Version?<\/summary><div class=\"faq-body\">Ja. Falls das Connector-Plugin eine zu neue WooCommerce-Version verlangt, nimm Weg 2 mit dem Snippet \u2014 der funktioniert auch mit \u00e4lteren Installationen.<\/div><\/details>\n                              <\/div>\n            <\/div>\n          <\/section>\n          \n          <!-- Bottom-CTA -->\n          <div class=\"container\">\n            <div class=\"big-cta reveal\">\n              <h2>Shop verbunden \u2014 und jetzt?<\/h2>\n              <p>Sobald der Webhook l\u00e4uft, erscheinen alle Bestellungen automatisch in deinem Backoffice. Brauchst du eine weitere Anbindung, geht jeder weitere Shop in wenigen Minuten.<\/p>\n              <a class=\"btn btn-primary\" href=\"https:\/\/deinperfectday.de\/en\/anbieter-shop-anbindung\/\">Zur Shop-\u00dcbersicht <span class=\"arrow\" aria-hidden=\"true\">\u2192<\/span><\/a>\n            <\/div>\n          <\/div>\n\n        <\/main>\n                <div class=\"pd-scope\">\n        <footer aria-labelledby=\"footer-h\">\n          <h2 id=\"footer-h\" class=\"sr-only\">Footer navigation<\/h2>\n          <div class=\"container\">\n            <div class=\"footer-grid\">\n              <div class=\"footer-brand\">\n                <a href=\"https:\/\/deinperfectday.de\/en\/\" class=\"logo logo-image\" aria-label=\"Perfect Day Homepage\">\n                  <img\n                    src=\"https:\/\/deinperfectday.de\/wp-content\/plugins\/perfectday-pages-plugin\/assets\/images\/icons\/logo-hell.png\"\n                    alt=\"Perfect Day \u2014 Enjoy your experience\"\n                    width=\"200\" height=\"46\"\n                    loading=\"lazy\" decoding=\"async\">\n                <\/a>\n                <p>City vouchers, tickets, voucher books and coupons \u2014 one app for your city. Data protection from Germany, 5 languages.<\/p>\n\n                                  <div class=\"app-badges\" style=\"margin-top: 1rem;\">\n                                          <a href=\"https:\/\/apps.apple.com\/de\/app\/id1525409363\" class=\"app-badge\" target=\"_blank\" rel=\"noopener\" aria-label=\"Open Perfect Day in the Apple App Store\">\n                        <img src=\"https:\/\/deinperfectday.de\/wp-content\/plugins\/perfectday-pages-plugin\/assets\/images\/icons\/badge-app-store.png\" alt=\"Im Apple App Store laden\" width=\"135\" height=\"40\" loading=\"lazy\" decoding=\"async\">\n                      <\/a>\n                                                              <a href=\"https:\/\/play.google.com\/store\/apps\/details?id=koop.perfect.day&#038;utm_source=emea_Med\" class=\"app-badge\" target=\"_blank\" rel=\"noopener\" aria-label=\"Open Perfect Day in the Google Play Store\">\n                        <img src=\"https:\/\/deinperfectday.de\/wp-content\/plugins\/perfectday-pages-plugin\/assets\/images\/icons\/badge-play-store.png\" alt=\"Im Google Play Store laden\" width=\"135\" height=\"40\" loading=\"lazy\" decoding=\"async\">\n                      <\/a>\n                                      <\/div>\n                              <\/div>\n              <div class=\"footer-col\">\n                <h3>For providers<\/h3>\n                <ul>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/stadtgutscheine\/\">City vouchers<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/online-ticketing\/\">Online ticketing<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/gutscheinbuecher\/\">Voucher books<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/coupons\/\">Coupons<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/mitarbeiter-benefits\/\">Employee benefits<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/anbieter-shop-anbindung\/\">Shop integration<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/preise\/\">Prices &amp; Models<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/anbieter-werden\/\">Providers will<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/buchen\/\">Book columns<\/a><\/li>\n                <\/ul>\n              <\/div>\n              <div class=\"footer-col\">\n                <h3>About &amp; Contact<\/h3>\n                <ul>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/app\/\">Discover the app<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/app-versionen\/\">App versions<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/roi-rechner\/\">ROI calculator<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/#prinzip\">concept<\/a><\/li>\n                  <li><a href=\"https:\/\/plattform.deinperfectday.de\/\">Platform login<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/hilfe\/\">Help &amp; Features<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/support\/\">Support<\/a><\/li>\n                <\/ul>\n              <\/div>\n              <div class=\"footer-col\">\n                <h3>Legal<\/h3>\n                <ul>\n                                    <li><a href=\"https:\/\/deinperfectday.de\/en\/impressum\/\">imprint<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/datenschutz\/\">Privacy policy (website)<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/anbieter-agb\/\">Provider Terms and Conditions<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/agb\/terms-of-service\/\">App Terms of Use<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/datenschutzerklaerung\/\">App Privacy<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/en\/konto-loeschen\/\">Delete account<\/a><\/li>\n                <\/ul>\n              <\/div>\n            <\/div>\n            <div class=\"footer-bottom\">\n              <span class=\"logo-text\">PERFECT <span class=\"teal\">DAY<\/span><\/span>\n              <span>\u00a9 2026 DigElite \u00b7 deinperfectday.de<\/span>\n            <\/div>\n            <p class=\"footer-cities\">City voucher currently live in: Garrel \u00b7 L\u00f6ningen \u00b7 Twistringen \u2014 more cities to follow in 2026.<\/p>\n            <p class=\"footer-vat\">All prices quoted are exclusive of statutory VAT.<\/p>\n          <\/div>\n        <\/footer>\n        <\/div>\n        <\/div>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"page-template-blank.php","meta":{"_acf_changed":false,"_et_pb_use_builder":"on","_et_pb_old_content":"","_et_gb_content_width":"","footnotes":""},"class_list":["post-233287","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/deinperfectday.de\/en\/wp-json\/wp\/v2\/pages\/233287","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/deinperfectday.de\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/deinperfectday.de\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/deinperfectday.de\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/deinperfectday.de\/en\/wp-json\/wp\/v2\/comments?post=233287"}],"version-history":[{"count":0,"href":"https:\/\/deinperfectday.de\/en\/wp-json\/wp\/v2\/pages\/233287\/revisions"}],"wp:attachment":[{"href":"https:\/\/deinperfectday.de\/en\/wp-json\/wp\/v2\/media?parent=233287"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}