1try{!function(){var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},s=(new e.Error).stack;s&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[s]="f7e79e99-43ed-495a-a3a9-2ee5a9ee07e3",e._sentryDebugIdIdentifier="sentry-dbid-f7e79e99-43ed-495a-a3a9-2ee5a9ee07e3")}()}catch(e){}(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9302],{13720:e=>{e.exports={heroSection:"messaging_heroSection__0cvKs",heroHead:"messaging_heroHead__y890b",heroLede:"messaging_heroLede__y02YL",bench:"messaging_bench__w96VL",anno:"messaging_anno__MEyBC",num:"messaging_num__eQ3TH",spec:"messaging_spec___zyGU",soon:"messaging_soon__9qcPR",faqSection:"messaging_faqSection__cqjhI",benchShot:"messaging_benchShot__qsYOp"}},55326:(e,s,t)=>{"use strict";t.r(s),t.d(s,{default:()=>b});var o=t(6029),a=t(75155),n=t(91666),i=t(99604),r=t(12483),l=t(81286),c=t(12073),d=t(5781),h=t(73155),m=t(25299),p=t(13720),u=t.n(p);let g=[{title:"Triggers match your workflow",body:"Messages fire on your own statuses, however youâve named your stages, and however many a job passes through."},{title:"Two-way chat on every booking",body:"Customers reply in one thread per booking, and questions land in Workshop instead of your personal phone."},{title:"Approvals in writing",body:"When work changes the price, customers confirm the new total from the message, so thereâs a record you can point to later."},{title:"Fewer calls to make",body:"Every automated update is a call you didnât have to make, and an interruption your mechanics didnât get."}],y=[{question:"Do updates work with our custom statuses?",answer:"Yes. Triggers are built on your own status list. If a job skips a stage, that message simply doesnât send."},{question:"Can customers reply?",answer:"Yes. Every booking has a two-way chat thread. Replies land in Workshop where anyone on the team can pick them up."},{question:"Are SMS messages included in my plan?",answer:"Email is unlimited on every plan. SMS is included up to a monthly allowance, with per-message pricing beyond it. See the pricing page for details."},{question:"When is WhatsApp coming?",answer:"WhatsApp Business support is in active development. Join the waitlist in your messaging settings and weâll switch it on for your shop as soon as itâs ready."}];function b(){let e,s,t,p,b,f,w,x,j,S,k,v,N=(0,a.c)(12);return N[0]===Symbol.for("react.memo_cache_sentinel")?(e=[{label:"Booking management",href:m.f.platform.bookingManagement},{label:"The mobile app",href:m.f.app}],s={title:"Give the phone a rest",subtitle:"Let Workshop keep your customers in the loop automatically \xb7 28 days free \xb7 no card required"},N[0]=e,N[1]=s):(e=N[0],s=N[1]),N[2]===Symbol.for("react.memo_cache_sentinel")?(t=(0,o.jsxs)("div",{className:u().heroHead,children:[(0,o.jsx)(h.m8,{trail:"Platform",children:"Messaging"}),(0,o.jsx)(h.sT,{children:"Stop being the shopâs answering machine"}),(0,o.jsx)(h.Zw,{className:u().heroLede,children:"âIs my bike ready yet?â Answered before itâs asked. Workshop messages your customers automatically as their job moves through your stages, and gives them one place to reply if they need you."}),(0,o.jsx)(n.r,{})]}),N[2]=t):t=N[2],N[3]===Symbol.for("react.memo_cache_sentinel")?(p=(0,o.jsx)(c.oP,{assetId:"MSG-1",label:"Automatic updates on your statuses",spec:"Screenshot from the live app: messaging/notification settings showing updates tied to job statuses, or a sent SMS/email update against a job. Anonymise details. ~1000\xd7860px @2x, PNG.",scaleByWidth:!0,sizes:"(max-width: 860px) 100vw, 680px",className:u().benchShot}),N[3]=p):p=N[3],N[4]===Symbol.for("react.memo_cache_sentinel")?(b=(0,o.jsxs)(d.d,{className:u().heroSection,children:[t,(0,o.jsxs)("div",{className:u().bench,children:[p,(0,o.jsx)("ol",{className:u().anno,"aria-label":"What you are looking at",children:g.map(_)})]})]}),N[4]=b):b=N[4],N[5]===Symbol.for("react.memo_cache_sentinel")?(f=(0,o.jsx)(h.CD,{small:!0,title:"Reach customers where they already are"}),N[5]=f):f=N[5],N[6]===Symbol.for("react.memo_cache_sentinel")?(w=(0,o.jsxs)("div",{children:[(0,o.jsx)("b",{children:"SMS"}),(0,o.jsx)("p",{children:"Short, instant updates for the moments that matter: quote approvals and ready-to-collect."})]}),x=(0,o.jsxs)("div",{children:[(0,o.jsx)("b",{children:"Email"}),(0,o.jsx)("p",{children:"Quotes, receipts and booking confirmations with the full detail, branded to your shop."})]}),N[6]=w,N[7]=x):(w=N[6],x=N[7]),N[8]===Symbol.for("react.memo_cache_sentinel")?(j=(0,o.jsxs)(d.d,{tight:!0,children:[f,(0,o.jsxs)("div",{className:u().spec,children:[w,x,(0,o.jsxs)("div",{children:[(0,o.jsxs)("b",{children:["WhatsApp & one inbox ",(0,o.jsx)("span",{className:"bb-badge ".concat(u().soon),children:"Coming soon"})]}),(0,o.jsx)("p",{children:"WhatsApp updates plus one unified inbox for WhatsApp, Facebook and Instagram messages, in development now."})]})]})]}),N[8]=j):j=N[8],N[9]===Symbol.for("react.memo_cache_sentinel")?(S=(0,o.jsx)(h.CD,{small:!0,title:"Switching updates on"}),N[9]=S):S=N[9],N[10]===Symbol.for("react.memo_cache_sentinel")?(k=(0,o.jsxs)(d.d,{tight:!0,children:[S,(0,o.jsx)(l.n,{steps:[{title:"Pick your moments",body:"Choose which of your statuses send an update, per channel."},{title:"Make it yours",body:"Tweak the wording; messages go out under your shopâs name."},{title:"Work the job",body:"Move jobs through stages as normal; updates send themselves."}]})]}),N[10]=k):k=N[10],N[11]===Symbol.for("react.memo_cache_sentinel")?(v=(0,o.jsxs)(r.f,{title:"Automated Customer Updates for Workshops | Workshop Messaging",description:"âIs my bike ready yet?â Answered before itâs asked. Workshop messages your customers automatically as their job moves through your stages, and gives them one place to reply if they need you.",current:"platform",explore:e,closing:s,children:[b,j,k,(0,o.jsxs)(d.d,{className:u().faqSection,children:[(0,o.jsx)(h.CD,{small:!0,title:"Messaging questions"}),(0,o.jsx)(i.l,{items:y})]})]}),N[11]=v):v=N[11],v}function _(e,s){return(0,o.jsxs)("li",{children:[(0,o.jsx)("span",{className:u().num,"aria-hidden":!0,
1children:String(s+1).padStart(2,"0")}),(0,o.jsxs)("div",{children:[(0,o.jsx)("b",{children:e.title}),(0,o.jsx)("p",{children:e.body})]})]},e.title)}b.standalone=!0},78314:e=>{e.exports={steps:"MiniSteps_steps___lCEV",num:"MiniSteps_num__KNoTc"}},81286:(e,s,t)=>{"use strict";t.d(s,{n:()=>l});var o=t(6029),a=t(75155),n=t(32757),i=t(78314),r=t.n(i);function l(e){let s,t,i=(0,a.c)(7),{steps:l}=e,c=(0,n.o4)();if(i[0]!==c||i[1]!==l){let e;i[3]!==c?(e=(e,s)=>(0,o.jsxs)("li",{children:[(0,o.jsx)("span",{className:r().num,"aria-hidden":!0,children:String(s+1).padStart(2,"0")}),(0,o.jsxs)("div",{children:[(0,o.jsx)("b",{children:c(e.title)}),(0,o.jsx)("p",{children:(0,n.BZ)(e.body,c)})]})]},e.title),i[3]=c,i[4]=e):e=i[4],s=l.map(e),i[0]=c,i[1]=l,i[2]=s}else s=i[2];return i[5]!==s?(t=(0,o.jsx)("ol",{className:r().steps,children:s}),i[5]=s,i[6]=t):t=i[6],t}},81749:(e,s,t)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/workshop/platform/messaging",function(){return t(55326)}])}},e=>{e.O(0,[9568,4637,6107,6593,636,8792],()=>e(e.s=81749)),_N_E=e.O()}]); 2//# sourceMappingURL=messaging-3a00120c71a2217b.js.map
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.