{"id":233290,"date":"2026-05-15T11:16:36","date_gmt":"2026-05-15T09:16:36","guid":{"rendered":"https:\/\/deinperfectday.de\/anbieter-shop-anbindung-shopware\/"},"modified":"2026-05-15T11:16:36","modified_gmt":"2026-05-15T09:16:36","slug":"anbieter-shop-anbindung-shopware","status":"publish","type":"page","link":"https:\/\/deinperfectday.de\/ru\/anbieter-shop-anbindung-shopware\/","title":{"rendered":"LP Shop-Anbindung \u2014 Shopware 6"},"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\/ru\/\" class=\"logo logo-image\" aria-label=\"Perfect Day Startseite\">\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=\"Hauptmen\u00fc \u00f6ffnen\">\n              <span class=\"mega-toggle-text\">Men\u00fc<\/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\/\">Anmelden<\/a>\n              <a class=\"btn btn-primary\" href=\"https:\/\/deinperfectday.de\/ru\/anbieter-werden\/\">Jetzt Anbieter werden <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=\"Hauptmen\u00fc\">\n            <div class=\"container mega-grid\">\n\n              <!-- Spalte 1: F\u00fcr Anbieter -->\n              <div class=\"mega-col\">\n                <h3 class=\"mega-col-title\">F\u00fcr Anbieter<\/h3>\n                <ul class=\"mega-list\">\n                                      <li>\n                      <a href=\"https:\/\/deinperfectday.de\/ru\/stadtgutscheine\/\">\n                        <strong>Stadtgutscheine<\/strong>\n                        <span>Multi-Anbieter-Gutscheine, Teil-Einl\u00f6sung, Restguthaben automatisch.<\/span>\n                      <\/a>\n                    <\/li>\n                                      <li>\n                      <a href=\"https:\/\/deinperfectday.de\/ru\/online-ticketing\/\">\n                        <strong>Online-Ticketing<\/strong>\n                        <span>0,49 \u20ac\/Ticket. Keine Buchungsgeb\u00fchr f\u00fcr deine G\u00e4ste.<\/span>\n                      <\/a>\n                    <\/li>\n                                      <li>\n                      <a href=\"https:\/\/deinperfectday.de\/ru\/gutscheinbuecher\/\">\n                        <strong>Gutscheinb\u00fccher<\/strong>\n                        <span>Digital, 5-sprachig, sofortige Updates. Keine Druckkosten.<\/span>\n                      <\/a>\n                    <\/li>\n                                      <li>\n                      <a href=\"https:\/\/deinperfectday.de\/ru\/coupons\/\">\n                        <strong>Coupons<\/strong>\n                        <span>Ab 9,90 \u20ac\/Monat. Drei Tiers, fester Preis, monatlich k\u00fcndbar.<\/span>\n                      <\/a>\n                    <\/li>\n                                    <li class=\"mega-list-divider\">\n                    <a href=\"https:\/\/deinperfectday.de\/ru\/preise\/\">\n                      <strong>Preise &amp; Modelle<\/strong>\n                      <span>Transparente Konditionen, 10 % B\u00fcndel-Rabatt f\u00fcr drei S\u00e4ulen.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/ru\/buchen\/\">\n                      <strong>S\u00e4ulen buchen<\/strong>\n                      <span>Buchungs-Assistent: S\u00e4ulen w\u00e4hlen und verbindlich buchen.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/ru\/anbieter-werden\/\" class=\"mega-link-highlight\">\n                      <strong>Anbieter werden \u2192<\/strong>\n                      <span>Kostenfrei registrieren, schnelle R\u00fcckmeldung.<\/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\">Entdecken<\/h3>\n                <ul class=\"mega-list\">\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/ru\/app\/\">\n                      <strong>App entdecken<\/strong>\n                      <span>Wie die Endkunden-App funktioniert.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/ru\/roi-rechner\/\">\n                      <strong>ROI-Rechner<\/strong>\n                      <span>Plattform-Kosten pro Jahr in 10 Sekunden.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/ru\/app-versionen\/\">\n                      <strong>App-Versionen<\/strong>\n                      <span>Was ist neu in der App \u2014 der Versionsverlauf.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/ru\/#prinzip\">\n                      <strong>Das Konzept<\/strong>\n                      <span>Cross-Pollination der vier S\u00e4ulen erkl\u00e4rt.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/ru\/anbieter\/\">\n                      <strong>Anbieter-Hub<\/strong>\n                      <span>\u00dcbersicht aller S\u00e4ulen mit Wettbewerbsvergleich.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/ru\/mitarbeiter-benefits\/\">\n                      <strong>Mitarbeiter-Benefits<\/strong>\n                      <span>Firmen-Abos: Stadtgutscheine automatisiert f\u00fcrs Team.<\/span>\n                    <\/a>\n                  <\/li>\n                <\/ul>\n\n                <h3 class=\"mega-col-title\" style=\"margin-top: 1.6rem;\">Stadtgutschein live in<\/h3>\n                <p class=\"mega-cities\">\n                  Garrel \u00b7 L\u00f6ningen \u00b7 Twistringen<br>\n                  <small>Weitere St\u00e4dte folgen 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\/ru\/hilfe\/\">\n                      <strong>Hilfe &amp; Funktionen<\/strong>\n                      <span>Alle App-Funktionen Schritt f\u00fcr Schritt erkl\u00e4rt.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/support\/\">\n                      <strong>Support<\/strong>\n                      <span>Hilfe f\u00fcr Anbieter und Kunden.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/plattform.deinperfectday.de\/\">\n                      <strong>Plattform-Login<\/strong>\n                      <span>F\u00fcr aktive Anbieter mit Account.<\/span>\n                    <\/a>\n                  <\/li>\n                <\/ul>\n\n                                  <h3 class=\"mega-col-title\" style=\"margin-top: 1.6rem;\">Sprache<\/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\/ru\/wp-json\/wp\/v2\/pages\/233290#TRPLINKPROCESSED\" title=\"Russian\"><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\">Russian<\/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=\"\u0423\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u044f\u0437\u044b\u043a\u0430 \u0441\u0430\u0439\u0442\u0430\"\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=\"\u0421\u043c\u0435\u043d\u0438\u0442\u044c \u044f\u0437\u044b\u043a\" aria-controls=\"trp-shortcode-dropdown-6a0c07f823ddf\"><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\">Russian<\/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-6a0c07f823ddf\"\r\n                 role=\"group\"\r\n                 aria-label=\"\u0414\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u044f\u0437\u044b\u043a\u0438\"\r\n                 hidden\r\n                 inert\r\n            >\r\n                                                            <a class=\"trp-language-item\" href=\"https:\/\/deinperfectday.de\/ru\/wp-json\/wp\/v2\/pages\/233290#TRPLINKPROCESSED\" 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\/ru\/wp-json\/wp\/v2\/pages\/233290#TRPLINKPROCESSED\" title=\"English\">\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\/en_GB.svg\">                                                            <span class=\"trp-language-item-name\" data-no-translation>English<\/span>\r\n                                                                                <\/a>\r\n                                            <a class=\"trp-language-item\" href=\"https:\/\/deinperfectday.de\/ru\/wp-json\/wp\/v2\/pages\/233290#TRPLINKPROCESSED\" 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\/ru\/wp-json\/wp\/v2\/pages\/233290#TRPLINKPROCESSED\" 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;\">Lade die 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=\"Perfect Day im Apple App Store \u00f6ffnen\">\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=\"Perfect Day im Google Play Store \u00f6ffnen\">\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;\">Rechtliches<\/h3>\n                <ul class=\"mega-list mega-list-compact\">\n                                    <li><a href=\"https:\/\/deinperfectday.de\/impressum\/\">Impressum<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/datenschutz\/\">Datenschutz (Webseite)<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/anbieter-agb\/\">Anbieter-AGB<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/agb\/terms-of-service\/\">App-Nutzungsbedingungen<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/datenschutzerklaerung\/\">App-Datenschutz<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/konto-loeschen\/\">Konto l\u00f6schen<\/a><\/li>\n                <\/ul>\n              <\/div>\n\n            <\/div>\n\n            <button type=\"button\" class=\"mega-close\" id=\"megaClose\" aria-label=\"Men\u00fc schlie\u00dfen\">\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=\"Brotkrumen-Navigation\">\n            <ol>\n              <li><a href=\"https:\/\/deinperfectday.de\/ru\/\">Startseite<\/a><\/li>\n              <li><a href=\"https:\/\/deinperfectday.de\/ru\/anbieter\/\">F\u00fcr Anbieter<\/a><\/li>\n              <li><a href=\"https:\/\/deinperfectday.de\/ru\/anbieter-shop-anbindung\/\">Shop-Anbindung<\/a><\/li>\n              <li><span aria-current=\"page\">Shopware 6<\/span><\/li>\n            <\/ol>\n          <\/nav>\n\n          <!-- Hero -->\n          <section class=\"subhero subhero-compact et_pb_section\" aria-label=\"Einf\u00fchrung\">\n            <div class=\"container\">\n              <div class=\"reveal subhero-center\">\n                <span class=\"eyebrow\"><span class=\"pulse\" aria-hidden=\"true\"><\/span> &nbsp;Shopware 6 \u00b7 20\u201330 Min \u00b7 fortgeschritten<\/span>\n                <h1>Perfect Day in Shopware 6 anbinden.<\/h1>\n                <p class=\"subhero-sub\">Verkauf deine Perfect-Day-Coupons \u00fcber deinen Shopware-6-Shop. Shopware liefert keinen Webhook mit Custom-Field-Inhalt out of the box \u2014 du brauchst eine kleine Bridge. <strong>Hinweis:<\/strong> Diese Anleitung gilt f\u00fcr Shopware 6. F\u00fcr Shopware 5 kontaktiere bitte den Support.<\/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\/ru\/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\">Schritt 1 \u2014 Custom-Field f\u00fcr die Coupon-ID anlegen<\/h2>\n                                          <ol class=\"guide-steps\">\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Zusatzfeld-Set erstellen<\/h3>\n                                                              <div class=\"guide-step-body\"><p>Shopware-Admin \u2192 <strong>Einstellungen \u2192 System \u2192 Zusatzfelder<\/strong> \u2192 <strong>\u201eSets erstellen\"<\/strong>. Set-Name: <code>Perfect Day<\/code>. Unter <strong>Zuweisungen<\/strong> die Option <strong>\u201eProdukt\"<\/strong> ausw\u00e4hlen.<\/p><\/div>\n                                                          <\/li>\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Feld hinzuf\u00fcgen<\/h3>\n                                                              <div class=\"guide-step-body\"><p>Neues Feld mit diesen Werten:<\/p><ul class=\"feature-list\"><li> <strong>Technischer Name:<\/strong> <code>pfd_coupon_id<\/code><\/li><li> <strong>Typ:<\/strong> Zahl (Integer)<\/li><li> <strong>Anzeigename:<\/strong> <code>Perfect Day Coupon-ID<\/code><\/li><\/ul><p>Speichern.<\/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\">Schritt 2 \u2014 Coupon-ID pro Produkt eintragen<\/h2>\n                                          <ol class=\"guide-steps\">\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Im Produkt-Editor eintragen<\/h3>\n                                                              <div class=\"guide-step-body\"><p>Shopware-Admin \u2192 <strong>Kataloge \u2192 Produkte<\/strong> \u2192 Produkt \u00f6ffnen \u2192 Reiter <strong>\u201eSpezifikationen\"<\/strong> \u2192 Block <strong>\u201eZusatzfelder\"<\/strong>. Setze <strong>\u201ePerfect Day Coupon-ID\"<\/strong> auf den Wert aus dem Plattform-Backoffice (z. B. <code>15114<\/code>) und speichere.<\/p><\/div>\n                                                          <\/li>\n                              <\/ol>\n                          <\/div>\n          <\/section>\n                    <section class=\"block guide-section et_pb_section\" aria-labelledby=\"sec-2\">\n            <div class=\"container guide-container\">\n              <h2 id=\"sec-2\" class=\"guide-section-title\">Schritt 3 \u2014 Bridge-App installieren<\/h2>\n                              <p class=\"guide-section-intro\">Shopware liefert keinen Webhook mit Custom-Field-Inhalt mit. Du brauchst eine kleine Shopware-App, die das \u00fcbernimmt. Wir haben ein App-Skelett vorbereitet \u2014 auf Support-Anfrage bekommst du es fertig. Oder du baust es nach dieser Vorlage.<\/p>\n                                          <ol class=\"guide-steps\">\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">App-Manifest (manifest.xml)<\/h3>\n                                                              <div class=\"guide-step-body\"><p>Das Manifest registriert die App und den Order-Paid-Webhook. Trag deine Bridge-Domain in das <code>url<\/code>-Attribut ein.<\/p><\/div>\n                                        <details class=\"code-collapsible reveal\"><summary>Vollst\u00e4ndigen Code anzeigen \u2014 XML \u00b7 manifest.xml<\/summary><div class=\"code-block\"><div class=\"code-block-bar\"><span class=\"code-lang\">XML \u00b7 manifest.xml<\/span><\/div><pre><code>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;\n&lt;manifest xmlns:xsi=&quot;http:\/\/www.w3.org\/2001\/XMLSchema-instance&quot;\n          xsi:noNamespaceSchemaLocation=&quot;https:\/\/raw.githubusercontent.com\/shopware\/platform\/trunk\/src\/Core\/Framework\/App\/Manifest\/Schema\/manifest-1.0.xsd&quot;&gt;\n    &lt;meta&gt;\n        &lt;name&gt;PerfectDayConnector&lt;\/name&gt;\n        &lt;label&gt;Perfect Day Connector&lt;\/label&gt;\n        &lt;description&gt;Schickt Bestelldaten mit Perfect-Day-Coupon-IDs an die Plattform.&lt;\/description&gt;\n        &lt;author&gt;DigElite&lt;\/author&gt;\n        &lt;copyright&gt;(c) DigElite&lt;\/copyright&gt;\n        &lt;version&gt;1.0.0&lt;\/version&gt;\n        &lt;license&gt;MIT&lt;\/license&gt;\n    &lt;\/meta&gt;\n    &lt;webhooks&gt;\n        &lt;webhook name=&quot;order-paid&quot;\n                 url=&quot;https:\/\/DEINE-BRIDGE-DOMAIN.example\/bridge&quot;\n                 event=&quot;state_enter.order_transaction.state.paid&quot;\/&gt;\n    &lt;\/webhooks&gt;\n&lt;\/manifest&gt;<\/code><\/pre><\/div><\/details>                  <\/li>\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Bridge-Endpoint (eigener Server)<\/h3>\n                                                              <div class=\"guide-step-body\"><p>Die Bridge nimmt den Shopware-Webhook entgegen, holt pro Position das Custom-Field, transformiert ins Perfect-Day-Format und schickt es weiter. Beispiel in PHP:<\/p><\/div>\n                                        <details class=\"code-collapsible reveal\"><summary>Vollst\u00e4ndigen Code anzeigen \u2014 PHP \u00b7 bridge.php<\/summary><div class=\"code-block\"><div class=\"code-block-bar\"><span class=\"code-lang\">PHP \u00b7 bridge.php<\/span><\/div><pre><code>&lt;?php\n\/\/ bridge.php \u2014 empf\u00e4ngt Shopware-Webhook, ruft Shopware-API f\u00fcr\n\/\/ Produktdetails, leitet ans Perfect Day weiter.\n\n$rawPayload = file_get_contents(&#039;php:\/\/input&#039;);\n$payload = json_decode($rawPayload, true);\n$order = $payload[&#039;data&#039;][&#039;payload&#039;][&#039;order&#039;] ?? null;\nif (!$order) { http_response_code(400); exit; }\n\n\/\/ Shopware-API-Token holen (Server-zu-Server, eigene Credentials)\n$swToken = sw_admin_token();\n\n$items = [];\nforeach ($order[&#039;lineItems&#039;] as $li) {\n    $product = sw_api_get(&#039;\/api\/product\/&#039; . $li[&#039;productId&#039;], $swToken);\n    $couponId = $product[&#039;customFields&#039;][&#039;pfd_coupon_id&#039;] ?? null;\n    if (!$couponId) continue;\n    $items[] = [&#039;coupon_id&#039; =&gt; (int)$couponId, &#039;count&#039; =&gt; (int)$li[&#039;quantity&#039;]];\n}\nif (empty($items)) { http_response_code(200); exit; }\n\n$pfdPayload = [\n    &#039;shop_order_id&#039; =&gt; $order[&#039;orderNumber&#039;],\n    &#039;shop_type&#039;     =&gt; &#039;shopware&#039;,\n    &#039;shop_domain&#039;   =&gt; parse_url($order[&#039;salesChannel&#039;][&#039;domains&#039;][0][&#039;url&#039;], PHP_URL_HOST),\n    &#039;customer&#039; =&gt; [\n        &#039;email&#039;  =&gt; $order[&#039;orderCustomer&#039;][&#039;email&#039;],\n        &#039;name&#039;   =&gt; trim($order[&#039;orderCustomer&#039;][&#039;firstName&#039;] . &#039; &#039; . $order[&#039;orderCustomer&#039;][&#039;lastName&#039;]),\n        &#039;locale&#039; =&gt; substr($order[&#039;language&#039;][&#039;locale&#039;][&#039;code&#039;], 0, 2),\n    ],\n    &#039;items&#039;             =&gt; $items,\n    &#039;order_total_cents&#039; =&gt; (int) round(($order[&#039;amountTotal&#039;] ?? 0) * 100),\n    &#039;currency&#039;          =&gt; $order[&#039;currency&#039;][&#039;isoCode&#039;] ?? &#039;EUR&#039;,\n    &#039;placed_at&#039;         =&gt; $order[&#039;orderDateTime&#039;] ?? gmdate(&#039;c&#039;),\n];\n\n$ch = curl_init(&#039;https:\/\/plattform.deinperfectday.de\/wp-json\/perfectday\/shop\/webhook\/order&#039;);\ncurl_setopt_array($ch, [\n    CURLOPT_POST           =&gt; 1,\n    CURLOPT_RETURNTRANSFER =&gt; 1,\n    CURLOPT_HTTPHEADER     =&gt; [\n        &#039;Content-Type: application\/json&#039;,\n        &#039;Authorization: Basic &#039; . base64_encode(&#039;DEIN-USER:DEIN APP PWD&#039;),\n    ],\n    CURLOPT_POSTFIELDS =&gt; json_encode($pfdPayload),\n    CURLOPT_TIMEOUT    =&gt; 15,\n]);\ncurl_exec($ch);\ncurl_close($ch);\n\nhttp_response_code(200);<\/code><\/pre><\/div><\/details>                  <\/li>\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">App-ZIP packen und installieren<\/h3>\n                                                              <div class=\"guide-step-body\"><p>Manifest und Bridge-URL in eine <code>app.zip<\/code> packen (siehe <a href=\"https:\/\/developer.shopware.com\/docs\/guides\/plugins\/apps\/\" target=\"_blank\" rel=\"noopener\">Shopware-Docs<\/a>). Dann Shopware-Admin \u2192 <strong>Erweiterungen \u2192 Eigene Erweiterungen hochladen<\/strong> \u2192 ZIP rein \u2192 aktivieren.<\/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-3\">\n            <div class=\"container guide-container\">\n              <h2 id=\"sec-3\" class=\"guide-section-title\">Einfacher: Cloud-Bridge nutzen<\/h2>\n                              <p class=\"guide-section-intro\">Wenn dir eine eigene Bridge zu komplex ist, geht es auch ohne eigenen Server.<\/p>\n                                          <ol class=\"guide-steps\">\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Make.com, Zapier oder n8n<\/h3>\n                                                              <div class=\"guide-step-body\"><p><strong>Make.com:<\/strong> Modul \u201eWebhooks \u2192 Custom webhook\" als Trigger, \u201eShopware \u2192 Get a Product\" zur Anreicherung, \u201eHTTP \u2192 Make a request\" als Output \u2014 rund 15 Min Setup. <strong>n8n<\/strong> ist selbst hostbar und damit DSGVO-freundlicher. Schick uns einen Support-Request mit deinem bevorzugten Tool, dann liefern wir einen vorkonfigurierten Workflow.<\/p><\/div>\n                                                          <\/li>\n                              <\/ol>\n                          <\/div>\n          <\/section>\n                    <section class=\"block guide-section et_pb_section\" aria-labelledby=\"sec-4\">\n            <div class=\"container guide-container\">\n              <h2 id=\"sec-4\" class=\"guide-section-title\">Schritt 4 \u2014 Test-Bestellung<\/h2>\n                                          <ol class=\"guide-steps\">\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Bestellung ausl\u00f6sen und pr\u00fcfen<\/h3>\n                                                              <div class=\"guide-step-body\"><p>Test-Bestellung durchf\u00fchren, Zahlung auf \u201eBezahlt\" setzen. Die Bridge sollte automatisch von Shopware aufgerufen werden. Pr\u00fcfen: Plattform-Backoffice \u2192 <strong>Perfect Day \u2192 Shop-Bestellungen<\/strong> (Eintrag mit <code>shop_type=shopware<\/code>?) und die Kunden-Mailbox auf die Brand-Mail mit Druck-Button.<\/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>Webhook wurde nicht ausgef\u00fchrt<\/summary>\n                    <div class=\"faq-body\"><p>Shopware-Admin \u2192 <strong>Einstellungen \u2192 System \u2192 Logs \u2192 App-Webhooks<\/strong>. Stehen dort Fehler, ist meist die App-Manifest-URL falsch oder die Bridge nicht erreichbar.<\/p><\/div>\n                  <\/details>\n                                  <details class=\"faq-item reveal\">\n                    <summary>HTTP 401 am Perfect-Day-Endpoint<\/summary>\n                    <div class=\"faq-body\"><p>Username oder Anwendungspasswort im Bridge-Code falsch. <code>wp-config.php<\/code>-Konstanten sind sicherer als hardcodierte Werte.<\/p><\/div>\n                  <\/details>\n                                  <details class=\"faq-item reveal\">\n                    <summary>HTTP 403 \u2014 forbidden_coupon<\/summary>\n                    <div class=\"faq-body\"><p>Die <code>pfd_coupon_id<\/code> aus dem Custom-Field geh\u00f6rt nicht zu deinem Anbieter-Account auf der Plattform.<\/p><\/div>\n                  <\/details>\n                                  <details class=\"faq-item reveal\">\n                    <summary>Bridge-Server nicht erreichbar<\/summary>\n                    <div class=\"faq-body\"><p>L\u00e4uft die Bridge auf deinem eigenen Server: SSL-Zertifikat g\u00fcltig? Server \u00f6ffentlich erreichbar? Shopware muss POST-Requests von seinem Cloud-Backend an deinen Server schicken k\u00f6nnen.<\/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>Shopware ist deutlich komplexer als Shopify oder WooCommerce \u2014 wegen der Bridge-Pflicht. Wir bieten dir eine fertig integrierte Shopware-App mit eingebauter Bridge, oder wir hosten die Bridge komplett auf unseren Servern. Du gibst uns nur deine Shopware-API-Zugangsdaten.<\/p>\n                <\/div>\n                <div>\n                  <a class=\"btn btn-primary\" href=\"https:\/\/deinperfectday.de\/support\/?subject=Shop-Anbindung%20Setup-Service%3A%20Shopware%206\">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\">H\u00e4ufige Fragen<\/span>\n                <h2 id=\"faq-h\">Noch Fragen?<\/h2>\n              <\/div>\n              <div class=\"faq-list\">\n                                  <details class=\"faq-item reveal\"><summary>Geht das auch ohne eigenen Server?<\/summary><div class=\"faq-body\">Ja. Statt einer selbst gehosteten Bridge kannst du Make.com, Zapier oder ein selbst gehostetes n8n nutzen. Wir liefern dir auf Anfrage einen vorkonfigurierten Workflow.<\/div><\/details>\n                                  <details class=\"faq-item reveal\"><summary>Funktioniert die Anleitung auch f\u00fcr Shopware 5?<\/summary><div class=\"faq-body\">Nein. Shopware 5 hat keinen Custom-Field-Webhook-Support \u2014 dort ist ein eigenes Plugin n\u00f6tig. Schick uns einen Support-Request, wenn du Shopware 5 nutzt.<\/div><\/details>\n                                  <details class=\"faq-item reveal\"><summary>Plant ihr ein natives Shopware-Plugin?<\/summary><div class=\"faq-body\">Ja, mittelfristig. Ein natives Plugin w\u00fcrde das Bridge-Setup \u00fcberfl\u00fcssig machen. Die Reihenfolge richtet sich nach der Nachfrage \u2014 meld dich, wenn du Interesse hast.<\/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\/ru\/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\/ru\/\" class=\"logo logo-image\" aria-label=\"Perfect Day Startseite\">\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>Stadtgutscheine, Tickets, Gutscheinb\u00fccher und Coupons \u2014 eine App f\u00fcr deine Stadt. Datenschutz aus Deutschland, 5-sprachig.<\/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=\"Perfect Day im Apple App Store \u00f6ffnen\">\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=\"Perfect Day im Google Play Store \u00f6ffnen\">\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>F\u00fcr Anbieter<\/h3>\n                <ul>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/stadtgutscheine\/\">Stadtgutscheine<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/online-ticketing\/\">Online-Ticketing<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/gutscheinbuecher\/\">Gutscheinb\u00fccher<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/coupons\/\">Coupons<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/mitarbeiter-benefits\/\">Mitarbeiter-Benefits<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/anbieter-shop-anbindung\/\">Shop-Anbindung<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/preise\/\">Preise &amp; Modelle<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/anbieter-werden\/\">Anbieter werden<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/buchen\/\">S\u00e4ulen buchen<\/a><\/li>\n                <\/ul>\n              <\/div>\n              <div class=\"footer-col\">\n                <h3>\u00dcber &amp; Kontakt<\/h3>\n                <ul>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/app\/\">App entdecken<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/app-versionen\/\">App-Versionen<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/roi-rechner\/\">ROI-Rechner<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/#prinzip\">Konzept<\/a><\/li>\n                  <li><a href=\"https:\/\/plattform.deinperfectday.de\/\">Plattform-Login<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/hilfe\/\">Hilfe &amp; Funktionen<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/support\/\">Support<\/a><\/li>\n                <\/ul>\n              <\/div>\n              <div class=\"footer-col\">\n                <h3>Rechtliches<\/h3>\n                <ul>\n                                    <li><a href=\"https:\/\/deinperfectday.de\/impressum\/\">Impressum<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/datenschutz\/\">Datenschutz (Webseite)<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/anbieter-agb\/\">Anbieter-AGB<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/agb\/terms-of-service\/\">App-Nutzungsbedingungen<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/datenschutzerklaerung\/\">App-Datenschutz<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/konto-loeschen\/\">Konto l\u00f6schen<\/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\">Stadtgutschein aktuell live in: Garrel \u00b7 L\u00f6ningen \u00b7 Twistringen \u2014 weitere St\u00e4dte folgen 2026.<\/p>\n            <p class=\"footer-vat\">Alle genannten Preise verstehen sich zzgl. der gesetzlichen Mehrwertsteuer.<\/p>\n          <\/div>\n        <\/footer>\n        <\/div>\n        <\/div>\n","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\/ru\/\" class=\"logo logo-image\" aria-label=\"Perfect Day Startseite\">\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=\"Hauptmen\u00fc \u00f6ffnen\">\n              <span class=\"mega-toggle-text\">Men\u00fc<\/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\/\">Anmelden<\/a>\n              <a class=\"btn btn-primary\" href=\"https:\/\/deinperfectday.de\/ru\/anbieter-werden\/\">Jetzt Anbieter werden <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=\"Hauptmen\u00fc\">\n            <div class=\"container mega-grid\">\n\n              <!-- Spalte 1: F\u00fcr Anbieter -->\n              <div class=\"mega-col\">\n                <h3 class=\"mega-col-title\">F\u00fcr Anbieter<\/h3>\n                <ul class=\"mega-list\">\n                                      <li>\n                      <a href=\"https:\/\/deinperfectday.de\/ru\/stadtgutscheine\/\">\n                        <strong>Stadtgutscheine<\/strong>\n                        <span>Multi-Anbieter-Gutscheine, Teil-Einl\u00f6sung, Restguthaben automatisch.<\/span>\n                      <\/a>\n                    <\/li>\n                                      <li>\n                      <a href=\"https:\/\/deinperfectday.de\/ru\/online-ticketing\/\">\n                        <strong>Online-Ticketing<\/strong>\n                        <span>0,49 \u20ac\/Ticket. Keine Buchungsgeb\u00fchr f\u00fcr deine G\u00e4ste.<\/span>\n                      <\/a>\n                    <\/li>\n                                      <li>\n                      <a href=\"https:\/\/deinperfectday.de\/ru\/gutscheinbuecher\/\">\n                        <strong>Gutscheinb\u00fccher<\/strong>\n                        <span>Digital, 5-sprachig, sofortige Updates. Keine Druckkosten.<\/span>\n                      <\/a>\n                    <\/li>\n                                      <li>\n                      <a href=\"https:\/\/deinperfectday.de\/ru\/coupons\/\">\n                        <strong>Coupons<\/strong>\n                        <span>Ab 9,90 \u20ac\/Monat. Drei Tiers, fester Preis, monatlich k\u00fcndbar.<\/span>\n                      <\/a>\n                    <\/li>\n                                    <li class=\"mega-list-divider\">\n                    <a href=\"https:\/\/deinperfectday.de\/ru\/preise\/\">\n                      <strong>Preise &amp; Modelle<\/strong>\n                      <span>Transparente Konditionen, 10 % B\u00fcndel-Rabatt f\u00fcr drei S\u00e4ulen.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/ru\/buchen\/\">\n                      <strong>S\u00e4ulen buchen<\/strong>\n                      <span>Buchungs-Assistent: S\u00e4ulen w\u00e4hlen und verbindlich buchen.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/ru\/anbieter-werden\/\" class=\"mega-link-highlight\">\n                      <strong>Anbieter werden \u2192<\/strong>\n                      <span>Kostenfrei registrieren, schnelle R\u00fcckmeldung.<\/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\">Entdecken<\/h3>\n                <ul class=\"mega-list\">\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/ru\/app\/\">\n                      <strong>App entdecken<\/strong>\n                      <span>Wie die Endkunden-App funktioniert.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/ru\/roi-rechner\/\">\n                      <strong>ROI-Rechner<\/strong>\n                      <span>Plattform-Kosten pro Jahr in 10 Sekunden.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/ru\/app-versionen\/\">\n                      <strong>App-Versionen<\/strong>\n                      <span>Was ist neu in der App \u2014 der Versionsverlauf.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/ru\/#prinzip\">\n                      <strong>Das Konzept<\/strong>\n                      <span>Cross-Pollination der vier S\u00e4ulen erkl\u00e4rt.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/ru\/anbieter\/\">\n                      <strong>Anbieter-Hub<\/strong>\n                      <span>\u00dcbersicht aller S\u00e4ulen mit Wettbewerbsvergleich.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/ru\/mitarbeiter-benefits\/\">\n                      <strong>Mitarbeiter-Benefits<\/strong>\n                      <span>Firmen-Abos: Stadtgutscheine automatisiert f\u00fcrs Team.<\/span>\n                    <\/a>\n                  <\/li>\n                <\/ul>\n\n                <h3 class=\"mega-col-title\" style=\"margin-top: 1.6rem;\">Stadtgutschein live in<\/h3>\n                <p class=\"mega-cities\">\n                  Garrel \u00b7 L\u00f6ningen \u00b7 Twistringen<br>\n                  <small>Weitere St\u00e4dte folgen 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\/ru\/hilfe\/\">\n                      <strong>Hilfe &amp; Funktionen<\/strong>\n                      <span>Alle App-Funktionen Schritt f\u00fcr Schritt erkl\u00e4rt.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/deinperfectday.de\/support\/\">\n                      <strong>Support<\/strong>\n                      <span>Hilfe f\u00fcr Anbieter und Kunden.<\/span>\n                    <\/a>\n                  <\/li>\n                  <li>\n                    <a href=\"https:\/\/plattform.deinperfectday.de\/\">\n                      <strong>Plattform-Login<\/strong>\n                      <span>F\u00fcr aktive Anbieter mit Account.<\/span>\n                    <\/a>\n                  <\/li>\n                <\/ul>\n\n                                  <h3 class=\"mega-col-title\" style=\"margin-top: 1.6rem;\">Sprache<\/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\/ru\/wp-json\/wp\/v2\/pages\/233290#TRPLINKPROCESSED\" title=\"Russian\"><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\">Russian<\/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=\"\u0423\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u044f\u0437\u044b\u043a\u0430 \u0441\u0430\u0439\u0442\u0430\"\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=\"\u0421\u043c\u0435\u043d\u0438\u0442\u044c \u044f\u0437\u044b\u043a\" aria-controls=\"trp-shortcode-dropdown-6a0c07f823ddf\"><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\">Russian<\/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-6a0c07f823ddf\"\r\n                 role=\"group\"\r\n                 aria-label=\"\u0414\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u044f\u0437\u044b\u043a\u0438\"\r\n                 hidden\r\n                 inert\r\n            >\r\n                                                            <a class=\"trp-language-item\" href=\"https:\/\/deinperfectday.de\/ru\/wp-json\/wp\/v2\/pages\/233290#TRPLINKPROCESSED\" 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\/ru\/wp-json\/wp\/v2\/pages\/233290#TRPLINKPROCESSED\" title=\"English\">\r\n                            <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\" data-no-translation>English<\/span>\r\n                                                                                <\/a>\r\n                                            <a class=\"trp-language-item\" href=\"https:\/\/deinperfectday.de\/ru\/wp-json\/wp\/v2\/pages\/233290#TRPLINKPROCESSED\" 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\/ru\/wp-json\/wp\/v2\/pages\/233290#TRPLINKPROCESSED\" 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;\">Lade die 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=\"Perfect Day im Apple App Store \u00f6ffnen\">\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=\"Perfect Day im Google Play Store \u00f6ffnen\">\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;\">Rechtliches<\/h3>\n                <ul class=\"mega-list mega-list-compact\">\n                                    <li><a href=\"https:\/\/deinperfectday.de\/impressum\/\">Impressum<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/datenschutz\/\">Datenschutz (Webseite)<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/anbieter-agb\/\">Anbieter-AGB<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/agb\/terms-of-service\/\">App-Nutzungsbedingungen<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/datenschutzerklaerung\/\">App-Datenschutz<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/konto-loeschen\/\">Konto l\u00f6schen<\/a><\/li>\n                <\/ul>\n              <\/div>\n\n            <\/div>\n\n            <button type=\"button\" class=\"mega-close\" id=\"megaClose\" aria-label=\"Men\u00fc schlie\u00dfen\">\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=\"Brotkrumen-Navigation\">\n            <ol>\n              <li><a href=\"https:\/\/deinperfectday.de\/ru\/\">Startseite<\/a><\/li>\n              <li><a href=\"https:\/\/deinperfectday.de\/ru\/anbieter\/\">F\u00fcr Anbieter<\/a><\/li>\n              <li><a href=\"https:\/\/deinperfectday.de\/ru\/anbieter-shop-anbindung\/\">Shop-Anbindung<\/a><\/li>\n              <li><span aria-current=\"page\">Shopware 6<\/span><\/li>\n            <\/ol>\n          <\/nav>\n\n          <!-- Hero -->\n          <section class=\"subhero subhero-compact et_pb_section\" aria-label=\"Einf\u00fchrung\">\n            <div class=\"container\">\n              <div class=\"reveal subhero-center\">\n                <span class=\"eyebrow\"><span class=\"pulse\" aria-hidden=\"true\"><\/span> &nbsp;Shopware 6 \u00b7 20\u201330 Min \u00b7 fortgeschritten<\/span>\n                <h1>Perfect Day in Shopware 6 anbinden.<\/h1>\n                <p class=\"subhero-sub\">Verkauf deine Perfect-Day-Coupons \u00fcber deinen Shopware-6-Shop. Shopware liefert keinen Webhook mit Custom-Field-Inhalt out of the box \u2014 du brauchst eine kleine Bridge. <strong>Hinweis:<\/strong> Diese Anleitung gilt f\u00fcr Shopware 6. F\u00fcr Shopware 5 kontaktiere bitte den Support.<\/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\/ru\/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\">Schritt 1 \u2014 Custom-Field f\u00fcr die Coupon-ID anlegen<\/h2>\n                                          <ol class=\"guide-steps\">\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Zusatzfeld-Set erstellen<\/h3>\n                                                              <div class=\"guide-step-body\"><p>Shopware-Admin \u2192 <strong>Einstellungen \u2192 System \u2192 Zusatzfelder<\/strong> \u2192 <strong>\u201eSets erstellen\"<\/strong>. Set-Name: <code>Perfect Day<\/code>. Unter <strong>Zuweisungen<\/strong> die Option <strong>\u201eProdukt\"<\/strong> ausw\u00e4hlen.<\/p><\/div>\n                                                          <\/li>\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Feld hinzuf\u00fcgen<\/h3>\n                                                              <div class=\"guide-step-body\"><p>Neues Feld mit diesen Werten:<\/p><ul class=\"feature-list\"><li> <strong>Technischer Name:<\/strong> <code>pfd_coupon_id<\/code><\/li><li> <strong>Typ:<\/strong> Zahl (Integer)<\/li><li> <strong>Anzeigename:<\/strong> <code>Perfect Day Coupon-ID<\/code><\/li><\/ul><p>Speichern.<\/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\">Schritt 2 \u2014 Coupon-ID pro Produkt eintragen<\/h2>\n                                          <ol class=\"guide-steps\">\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Im Produkt-Editor eintragen<\/h3>\n                                                              <div class=\"guide-step-body\"><p>Shopware-Admin \u2192 <strong>Kataloge \u2192 Produkte<\/strong> \u2192 Produkt \u00f6ffnen \u2192 Reiter <strong>\u201eSpezifikationen\"<\/strong> \u2192 Block <strong>\u201eZusatzfelder\"<\/strong>. Setze <strong>\u201ePerfect Day Coupon-ID\"<\/strong> auf den Wert aus dem Plattform-Backoffice (z. B. <code>15114<\/code>) und speichere.<\/p><\/div>\n                                                          <\/li>\n                              <\/ol>\n                          <\/div>\n          <\/section>\n                    <section class=\"block guide-section et_pb_section\" aria-labelledby=\"sec-2\">\n            <div class=\"container guide-container\">\n              <h2 id=\"sec-2\" class=\"guide-section-title\">Schritt 3 \u2014 Bridge-App installieren<\/h2>\n                              <p class=\"guide-section-intro\">Shopware liefert keinen Webhook mit Custom-Field-Inhalt mit. Du brauchst eine kleine Shopware-App, die das \u00fcbernimmt. Wir haben ein App-Skelett vorbereitet \u2014 auf Support-Anfrage bekommst du es fertig. Oder du baust es nach dieser Vorlage.<\/p>\n                                          <ol class=\"guide-steps\">\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">App-Manifest (manifest.xml)<\/h3>\n                                                              <div class=\"guide-step-body\"><p>Das Manifest registriert die App und den Order-Paid-Webhook. Trag deine Bridge-Domain in das <code>url<\/code>-Attribut ein.<\/p><\/div>\n                                        <details class=\"code-collapsible reveal\"><summary>Vollst\u00e4ndigen Code anzeigen \u2014 XML \u00b7 manifest.xml<\/summary><div class=\"code-block\"><div class=\"code-block-bar\"><span class=\"code-lang\">XML \u00b7 manifest.xml<\/span><\/div><pre><code>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;\n&lt;manifest xmlns:xsi=&quot;http:\/\/www.w3.org\/2001\/XMLSchema-instance&quot;\n          xsi:noNamespaceSchemaLocation=&quot;https:\/\/raw.githubusercontent.com\/shopware\/platform\/trunk\/src\/Core\/Framework\/App\/Manifest\/Schema\/manifest-1.0.xsd&quot;&gt;\n    &lt;meta&gt;\n        &lt;name&gt;PerfectDayConnector&lt;\/name&gt;\n        &lt;label&gt;Perfect Day Connector&lt;\/label&gt;\n        &lt;description&gt;Schickt Bestelldaten mit Perfect-Day-Coupon-IDs an die Plattform.&lt;\/description&gt;\n        &lt;author&gt;DigElite&lt;\/author&gt;\n        &lt;copyright&gt;(c) DigElite&lt;\/copyright&gt;\n        &lt;version&gt;1.0.0&lt;\/version&gt;\n        &lt;license&gt;MIT&lt;\/license&gt;\n    &lt;\/meta&gt;\n    &lt;webhooks&gt;\n        &lt;webhook name=&quot;order-paid&quot;\n                 url=&quot;https:\/\/DEINE-BRIDGE-DOMAIN.example\/bridge&quot;\n                 event=&quot;state_enter.order_transaction.state.paid&quot;\/&gt;\n    &lt;\/webhooks&gt;\n&lt;\/manifest&gt;<\/code><\/pre><\/div><\/details>                  <\/li>\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Bridge-Endpoint (eigener Server)<\/h3>\n                                                              <div class=\"guide-step-body\"><p>Die Bridge nimmt den Shopware-Webhook entgegen, holt pro Position das Custom-Field, transformiert ins Perfect-Day-Format und schickt es weiter. Beispiel in PHP:<\/p><\/div>\n                                        <details class=\"code-collapsible reveal\"><summary>Vollst\u00e4ndigen Code anzeigen \u2014 PHP \u00b7 bridge.php<\/summary><div class=\"code-block\"><div class=\"code-block-bar\"><span class=\"code-lang\">PHP \u00b7 bridge.php<\/span><\/div><pre><code>&lt;?php\n\/\/ bridge.php \u2014 empf\u00e4ngt Shopware-Webhook, ruft Shopware-API f\u00fcr\n\/\/ Produktdetails, leitet ans Perfect Day weiter.\n\n$rawPayload = file_get_contents(&#039;php:\/\/input&#039;);\n$payload = json_decode($rawPayload, true);\n$order = $payload[&#039;data&#039;][&#039;payload&#039;][&#039;order&#039;] ?? null;\nif (!$order) { http_response_code(400); exit; }\n\n\/\/ Shopware-API-Token holen (Server-zu-Server, eigene Credentials)\n$swToken = sw_admin_token();\n\n$items = [];\nforeach ($order[&#039;lineItems&#039;] as $li) {\n    $product = sw_api_get(&#039;\/api\/product\/&#039; . $li[&#039;productId&#039;], $swToken);\n    $couponId = $product[&#039;customFields&#039;][&#039;pfd_coupon_id&#039;] ?? null;\n    if (!$couponId) continue;\n    $items[] = [&#039;coupon_id&#039; =&gt; (int)$couponId, &#039;count&#039; =&gt; (int)$li[&#039;quantity&#039;]];\n}\nif (empty($items)) { http_response_code(200); exit; }\n\n$pfdPayload = [\n    &#039;shop_order_id&#039; =&gt; $order[&#039;orderNumber&#039;],\n    &#039;shop_type&#039;     =&gt; &#039;shopware&#039;,\n    &#039;shop_domain&#039;   =&gt; parse_url($order[&#039;salesChannel&#039;][&#039;domains&#039;][0][&#039;url&#039;], PHP_URL_HOST),\n    &#039;customer&#039; =&gt; [\n        &#039;email&#039;  =&gt; $order[&#039;orderCustomer&#039;][&#039;email&#039;],\n        &#039;name&#039;   =&gt; trim($order[&#039;orderCustomer&#039;][&#039;firstName&#039;] . &#039; &#039; . $order[&#039;orderCustomer&#039;][&#039;lastName&#039;]),\n        &#039;locale&#039; =&gt; substr($order[&#039;language&#039;][&#039;locale&#039;][&#039;code&#039;], 0, 2),\n    ],\n    &#039;items&#039;             =&gt; $items,\n    &#039;order_total_cents&#039; =&gt; (int) round(($order[&#039;amountTotal&#039;] ?? 0) * 100),\n    &#039;currency&#039;          =&gt; $order[&#039;currency&#039;][&#039;isoCode&#039;] ?? &#039;EUR&#039;,\n    &#039;placed_at&#039;         =&gt; $order[&#039;orderDateTime&#039;] ?? gmdate(&#039;c&#039;),\n];\n\n$ch = curl_init(&#039;https:\/\/plattform.deinperfectday.de\/wp-json\/perfectday\/shop\/webhook\/order&#039;);\ncurl_setopt_array($ch, [\n    CURLOPT_POST           =&gt; 1,\n    CURLOPT_RETURNTRANSFER =&gt; 1,\n    CURLOPT_HTTPHEADER     =&gt; [\n        &#039;Content-Type: application\/json&#039;,\n        &#039;Authorization: Basic &#039; . base64_encode(&#039;DEIN-USER:DEIN APP PWD&#039;),\n    ],\n    CURLOPT_POSTFIELDS =&gt; json_encode($pfdPayload),\n    CURLOPT_TIMEOUT    =&gt; 15,\n]);\ncurl_exec($ch);\ncurl_close($ch);\n\nhttp_response_code(200);<\/code><\/pre><\/div><\/details>                  <\/li>\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">App-ZIP packen und installieren<\/h3>\n                                                              <div class=\"guide-step-body\"><p>Manifest und Bridge-URL in eine <code>app.zip<\/code> packen (siehe <a href=\"https:\/\/developer.shopware.com\/docs\/guides\/plugins\/apps\/\" target=\"_blank\" rel=\"noopener\">Shopware-Docs<\/a>). Dann Shopware-Admin \u2192 <strong>Erweiterungen \u2192 Eigene Erweiterungen hochladen<\/strong> \u2192 ZIP rein \u2192 aktivieren.<\/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-3\">\n            <div class=\"container guide-container\">\n              <h2 id=\"sec-3\" class=\"guide-section-title\">Einfacher: Cloud-Bridge nutzen<\/h2>\n                              <p class=\"guide-section-intro\">Wenn dir eine eigene Bridge zu komplex ist, geht es auch ohne eigenen Server.<\/p>\n                                          <ol class=\"guide-steps\">\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Make.com, Zapier oder n8n<\/h3>\n                                                              <div class=\"guide-step-body\"><p><strong>Make.com:<\/strong> Modul \u201eWebhooks \u2192 Custom webhook\" als Trigger, \u201eShopware \u2192 Get a Product\" zur Anreicherung, \u201eHTTP \u2192 Make a request\" als Output \u2014 rund 15 Min Setup. <strong>n8n<\/strong> ist selbst hostbar und damit DSGVO-freundlicher. Schick uns einen Support-Request mit deinem bevorzugten Tool, dann liefern wir einen vorkonfigurierten Workflow.<\/p><\/div>\n                                                          <\/li>\n                              <\/ol>\n                          <\/div>\n          <\/section>\n                    <section class=\"block guide-section et_pb_section\" aria-labelledby=\"sec-4\">\n            <div class=\"container guide-container\">\n              <h2 id=\"sec-4\" class=\"guide-section-title\">Schritt 4 \u2014 Test-Bestellung<\/h2>\n                                          <ol class=\"guide-steps\">\n                                  <li class=\"guide-step reveal\">\n                                          <h3 class=\"guide-step-title\">Bestellung ausl\u00f6sen und pr\u00fcfen<\/h3>\n                                                              <div class=\"guide-step-body\"><p>Test-Bestellung durchf\u00fchren, Zahlung auf \u201eBezahlt\" setzen. Die Bridge sollte automatisch von Shopware aufgerufen werden. Pr\u00fcfen: Plattform-Backoffice \u2192 <strong>Perfect Day \u2192 Shop-Bestellungen<\/strong> (Eintrag mit <code>shop_type=shopware<\/code>?) und die Kunden-Mailbox auf die Brand-Mail mit Druck-Button.<\/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>Webhook wurde nicht ausgef\u00fchrt<\/summary>\n                    <div class=\"faq-body\"><p>Shopware-Admin \u2192 <strong>Einstellungen \u2192 System \u2192 Logs \u2192 App-Webhooks<\/strong>. Stehen dort Fehler, ist meist die App-Manifest-URL falsch oder die Bridge nicht erreichbar.<\/p><\/div>\n                  <\/details>\n                                  <details class=\"faq-item reveal\">\n                    <summary>HTTP 401 am Perfect-Day-Endpoint<\/summary>\n                    <div class=\"faq-body\"><p>Username oder Anwendungspasswort im Bridge-Code falsch. <code>wp-config.php<\/code>-Konstanten sind sicherer als hardcodierte Werte.<\/p><\/div>\n                  <\/details>\n                                  <details class=\"faq-item reveal\">\n                    <summary>HTTP 403 \u2014 forbidden_coupon<\/summary>\n                    <div class=\"faq-body\"><p>Die <code>pfd_coupon_id<\/code> aus dem Custom-Field geh\u00f6rt nicht zu deinem Anbieter-Account auf der Plattform.<\/p><\/div>\n                  <\/details>\n                                  <details class=\"faq-item reveal\">\n                    <summary>Bridge-Server nicht erreichbar<\/summary>\n                    <div class=\"faq-body\"><p>L\u00e4uft die Bridge auf deinem eigenen Server: SSL-Zertifikat g\u00fcltig? Server \u00f6ffentlich erreichbar? Shopware muss POST-Requests von seinem Cloud-Backend an deinen Server schicken k\u00f6nnen.<\/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>Shopware ist deutlich komplexer als Shopify oder WooCommerce \u2014 wegen der Bridge-Pflicht. Wir bieten dir eine fertig integrierte Shopware-App mit eingebauter Bridge, oder wir hosten die Bridge komplett auf unseren Servern. Du gibst uns nur deine Shopware-API-Zugangsdaten.<\/p>\n                <\/div>\n                <div>\n                  <a class=\"btn btn-primary\" href=\"https:\/\/deinperfectday.de\/support\/?subject=Shop-Anbindung%20Setup-Service%3A%20Shopware%206\">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\">H\u00e4ufige Fragen<\/span>\n                <h2 id=\"faq-h\">Noch Fragen?<\/h2>\n              <\/div>\n              <div class=\"faq-list\">\n                                  <details class=\"faq-item reveal\"><summary>Geht das auch ohne eigenen Server?<\/summary><div class=\"faq-body\">Ja. Statt einer selbst gehosteten Bridge kannst du Make.com, Zapier oder ein selbst gehostetes n8n nutzen. Wir liefern dir auf Anfrage einen vorkonfigurierten Workflow.<\/div><\/details>\n                                  <details class=\"faq-item reveal\"><summary>Funktioniert die Anleitung auch f\u00fcr Shopware 5?<\/summary><div class=\"faq-body\">Nein. Shopware 5 hat keinen Custom-Field-Webhook-Support \u2014 dort ist ein eigenes Plugin n\u00f6tig. Schick uns einen Support-Request, wenn du Shopware 5 nutzt.<\/div><\/details>\n                                  <details class=\"faq-item reveal\"><summary>Plant ihr ein natives Shopware-Plugin?<\/summary><div class=\"faq-body\">Ja, mittelfristig. Ein natives Plugin w\u00fcrde das Bridge-Setup \u00fcberfl\u00fcssig machen. Die Reihenfolge richtet sich nach der Nachfrage \u2014 meld dich, wenn du Interesse hast.<\/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\/ru\/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\/ru\/\" class=\"logo logo-image\" aria-label=\"Perfect Day Startseite\">\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>Stadtgutscheine, Tickets, Gutscheinb\u00fccher und Coupons \u2014 eine App f\u00fcr deine Stadt. Datenschutz aus Deutschland, 5-sprachig.<\/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=\"Perfect Day im Apple App Store \u00f6ffnen\">\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=\"Perfect Day im Google Play Store \u00f6ffnen\">\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>F\u00fcr Anbieter<\/h3>\n                <ul>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/stadtgutscheine\/\">Stadtgutscheine<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/online-ticketing\/\">Online-Ticketing<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/gutscheinbuecher\/\">Gutscheinb\u00fccher<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/coupons\/\">Coupons<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/mitarbeiter-benefits\/\">Mitarbeiter-Benefits<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/anbieter-shop-anbindung\/\">Shop-Anbindung<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/preise\/\">Preise &amp; Modelle<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/anbieter-werden\/\">Anbieter werden<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/buchen\/\">S\u00e4ulen buchen<\/a><\/li>\n                <\/ul>\n              <\/div>\n              <div class=\"footer-col\">\n                <h3>\u00dcber &amp; Kontakt<\/h3>\n                <ul>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/app\/\">App entdecken<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/app-versionen\/\">App-Versionen<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/roi-rechner\/\">ROI-Rechner<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/#prinzip\">Konzept<\/a><\/li>\n                  <li><a href=\"https:\/\/plattform.deinperfectday.de\/\">Plattform-Login<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/hilfe\/\">Hilfe &amp; Funktionen<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/support\/\">Support<\/a><\/li>\n                <\/ul>\n              <\/div>\n              <div class=\"footer-col\">\n                <h3>Rechtliches<\/h3>\n                <ul>\n                                    <li><a href=\"https:\/\/deinperfectday.de\/impressum\/\">Impressum<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/datenschutz\/\">Datenschutz (Webseite)<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/anbieter-agb\/\">Anbieter-AGB<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/agb\/terms-of-service\/\">App-Nutzungsbedingungen<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/datenschutzerklaerung\/\">App-Datenschutz<\/a><\/li>\n                  <li><a href=\"https:\/\/deinperfectday.de\/ru\/konto-loeschen\/\">Konto l\u00f6schen<\/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\">Stadtgutschein aktuell live in: Garrel \u00b7 L\u00f6ningen \u00b7 Twistringen \u2014 weitere St\u00e4dte folgen 2026.<\/p>\n            <p class=\"footer-vat\">Alle genannten Preise verstehen sich zzgl. der gesetzlichen Mehrwertsteuer.<\/p>\n          <\/div>\n        <\/footer>\n        <\/div>\n        <\/div>\n","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-233290","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/deinperfectday.de\/ru\/wp-json\/wp\/v2\/pages\/233290","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/deinperfectday.de\/ru\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/deinperfectday.de\/ru\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/deinperfectday.de\/ru\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/deinperfectday.de\/ru\/wp-json\/wp\/v2\/comments?post=233290"}],"version-history":[{"count":0,"href":"https:\/\/deinperfectday.de\/ru\/wp-json\/wp\/v2\/pages\/233290\/revisions"}],"wp:attachment":[{"href":"https:\/\/deinperfectday.de\/ru\/wp-json\/wp\/v2\/media?parent=233290"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}