/*! elementor - v3.18.0 - 20-12-2023 */ (self["webpackChunkelementor"] = self["webpackChunkelementor"] || []).push([["modules_nested-tabs_assets_js_editor_module_js"],{ /***/ "../modules/nested-tabs/assets/js/editor/module.js": /*!*********************************************************!*\ !*** ../modules/nested-tabs/assets/js/editor/module.js ***! \*********************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js")); var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js")); var _nestedTabs = _interopRequireDefault(__webpack_require__(/*! ./nested-tabs */ "../modules/nested-tabs/assets/js/editor/nested-tabs.js")); var Module = /*#__PURE__*/(0, _createClass2.default)(function Module() { (0, _classCallCheck2.default)(this, Module); elementor.elementsManager.registerElementType(new _nestedTabs.default()); }); exports["default"] = Module; /***/ }), /***/ "../modules/nested-tabs/assets/js/editor/nested-tabs.js": /*!**************************************************************!*\ !*** ../modules/nested-tabs/assets/js/editor/nested-tabs.js ***! \**************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = exports.NestedTabs = void 0; var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js")); var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js")); var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js")); var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js")); var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js")); var _view = _interopRequireDefault(__webpack_require__(/*! ./views/view */ "../modules/nested-tabs/assets/js/editor/views/view.js")); function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; } function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } var NestedTabs = /*#__PURE__*/function (_elementor$modules$el) { (0, _inherits2.default)(NestedTabs, _elementor$modules$el); var _super = _createSuper(NestedTabs); function NestedTabs() { (0, _classCallCheck2.default)(this, NestedTabs); return _super.apply(this, arguments); } (0, _createClass2.default)(NestedTabs, [{ key: "getType", value: function getType() { return 'nested-tabs'; } }, { key: "getView", value: function getView() { return _view.default; } }]); return NestedTabs; }(elementor.modules.elements.types.NestedElementBase); exports.NestedTabs = NestedTabs; var _default = NestedTabs; exports["default"] = _default; /***/ }), /***/ "../modules/nested-tabs/assets/js/editor/views/view.js": /*!*************************************************************!*\ !*** ../modules/nested-tabs/assets/js/editor/views/view.js ***! \*************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js")); var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js")); var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js")); var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js")); var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js")); function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; } function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } var View = /*#__PURE__*/function (_$e$components$get$ex) { (0, _inherits2.default)(View, _$e$components$get$ex); var _super = _createSuper(View); function View() { (0, _classCallCheck2.default)(this, View); return _super.apply(this, arguments); } (0, _createClass2.default)(View, [{ key: "filter", value: function filter(child, index) { child.attributes.dataIndex = index + 1; return true; } }, { key: "onAddChild", value: function onAddChild(childView) { var _childView$_parent$$e, _childView$_parent$$e2; var widgetNumber = (_childView$_parent$$e = childView._parent.$el.find('.e-n-tabs')[0]) === null || _childView$_parent$$e === void 0 ? void 0 : _childView$_parent$$e.dataset.widgetNumber, index = childView.model.attributes.dataIndex, tabId = (_childView$_parent$$e2 = childView._parent.$el.find(".e-n-tab-title[data-tab-index=\"".concat(index, "\"]"))) === null || _childView$_parent$$e2 === void 0 ? void 0 : _childView$_parent$$e2.attr('id'); childView.$el.attr({ id: 'e-n-tab-content-' + widgetNumber + '' + index, role: 'tabpanel', 'aria-labelledby': tabId, 'data-tab-index': index, style: '--n-tabs-title-order: ' + index + ';' }); if (1 === index) { childView.$el.addClass('e-active'); } } }]); return View; }($e.components.get('nested-elements').exports.NestedView); exports["default"] = View; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js": /*!***********************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/assertThisInitialized.js ***! \***********************************************************************/ /***/ ((module) => { function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } module.exports = _assertThisInitialized, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/classCallCheck.js": /*!****************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/classCallCheck.js ***! \****************************************************************/ /***/ ((module) => { function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } module.exports = _classCallCheck, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/createClass.js": /*!*************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/createClass.js ***! \*************************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ "../node_modules/@babel/runtime/helpers/toPropertyKey.js"); function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } module.exports = _createClass, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js": /*!****************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/getPrototypeOf.js ***! \****************************************************************/ /***/ ((module) => { function _getPrototypeOf(o) { module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }, module.exports.__esModule = true, module.exports["default"] = module.exports; return _getPrototypeOf(o); } module.exports = _getPrototypeOf, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/inherits.js": /*!**********************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/inherits.js ***! \**********************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime/helpers/setPrototypeOf.js"); function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) setPrototypeOf(subClass, superClass); } module.exports = _inherits, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js": /*!***************************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js ***! \***************************************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]); var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized.js */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"); function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return assertThisInitialized(self); } module.exports = _possibleConstructorReturn, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/setPrototypeOf.js": /*!****************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/setPrototypeOf.js ***! \****************************************************************/ /***/ ((module) => { function _setPrototypeOf(o, p) { module.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }, module.exports.__esModule = true, module.exports["default"] = module.exports; return _setPrototypeOf(o, p); } module.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/toPrimitive.js": /*!*************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/toPrimitive.js ***! \*************************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]); function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } module.exports = _toPrimitive, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/toPropertyKey.js": /*!***************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/toPropertyKey.js ***! \***************************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]); var toPrimitive = __webpack_require__(/*! ./toPrimitive.js */ "../node_modules/@babel/runtime/helpers/toPrimitive.js"); function _toPropertyKey(arg) { var key = toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } module.exports = _toPropertyKey, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }) }]); //# sourceMappingURL=a493d490206d9432cc8b.bundle.js.map Landing page | Rovedo
[dipl_button inline_buttons=”on” buttons_alignment=”right” disabled_on=”off|on|on” _builder_version=”4.25.2″ _module_preset=”default” custom_margin_tablet=”” custom_margin_phone=”-65px|-25px||0px|false|false” custom_margin_last_edited=”on|phone” global_colors_info=”{}” theme_builder_area=”post_content”][dipl_button_item button_text=”Login” button_url=”https://timeline.one/pages/authentication/login” url_new_window=”on” button_custom_margin=”|20px|||false|false” _builder_version=”4.25.2″ _module_preset=”default” button_text_color=”#FFFFFF” button_font_size=”16px” global_colors_info=”{}” theme_builder_area=”post_content”][/dipl_button_item][/dipl_button][dipl_button inline_buttons=”on” buttons_alignment=”right” disabled_on=”on|on|off” _builder_version=”4.25.2″ _module_preset=”default” global_colors_info=”{}” theme_builder_area=”post_content”][dipl_button_item button_text=”Login” button_url=”https://timeline.one/pages/authentication/login” url_new_window=”on” button_custom_margin=”|20px|||false|false” _builder_version=”4.25.2″ _module_preset=”default” button_text_color=”#FFFFFF” button_font_size=”16px” global_colors_info=”{}” button_text_color__hover_enabled=”on|hover” button_text_color__hover=”rgba(255,255,255,0.75)” theme_builder_area=”post_content”][/dipl_button_item][dipl_button_item button_text=”Fale com o comercial” button_url=”https://web.whatsapp.com/send/?phone=5531991036601&text=Ol%C3%A1,%20gostaria%20de%20saber%20mais%20sobre%20a%20Timeline%20:)&type=phone_number” url_new_window=”on” button_bg_color=”#00cc94″ button_custom_padding=”10px|20px|10px|20px|true|true” _builder_version=”4.25.2″ _module_preset=”default” button_text_color=”#FFFFFF” button_font_size=”16px” border_radii=”on|30px|30px|30px|30px” box_shadow_style=”preset1″ box_shadow_vertical=”0px” box_shadow_blur=”0px” box_shadow_color=”rgba(0,204,148,0.5)” global_colors_info=”{}” box_shadow_blur__hover_enabled=”on|hover” box_shadow_blur__hover=”20px” button_text_color__hover_enabled=”on|hover” button_text_color__hover=”rgba(255,255,255,0.75)” box_shadow_vertical__hover_enabled=”on|hover” box_shadow_vertical__hover=”6px” theme_builder_area=”post_content”][/dipl_button_item][/dipl_button]

Agendamento online com automações via WhatsApp

[dipl_text_highlighter pre_highlighter_content=”Conte com a Timeline para simplificar seus agendamentos por apenas” highlighter_content=”R$59,00″ post_highlighter_content=”por mês” svg_color=”#de3e59″ stroke_width=”5″ stroke_paint_delay=”1″ _builder_version=”4.25.2″ _module_preset=”default” global_body_text_align=”center” global_body_text_color=”#FFFFFF” global_body_font_size=”24px” global_body_line_height=”1.6em” main_body_font=”|800|||||||” module_alignment=”center” global_colors_info=”{}” theme_builder_area=”post_content”][/dipl_text_highlighter]
AGENDAMENTO ONLINE AGENDAMENTO ONLINE
[dipl_double_color_heading _builder_version=”4.25.2″ _module_preset=”default” global_colors_info=”{}” theme_builder_area=”post_content”][/dipl_double_color_heading]

Ajudamos profissionais de diversos segmentos

Como a Timeline funciona

Tudo o que você precisa para atender seus clientes com excelência

Agendamento online

Permita que seus clientes agendem horários com você diretamente pelo seu link. Menos mensagens, mais conveniência para todos!

  • Link de agendamento 24H
  • Horários personalizados
  • Bloqueio de horários automático

Lembretes via WhatsApp

Envie confirmações, lembretes e pesquisas  para seu cliente em cada compromisso, tudo automático e pelo seu número no WhatsApp!

  • Confirmações instantâneas
  • Lembretes automáticos
  • Pesquisa de satisfação

Calendário profissional

Organize sua agenda com um calendário dinâmico feito para profissionais e equipes que não tem tempo a perder.

  • Compromissos organizados
  • Filtros avançados
  • Gestão de equipes

Histórico de contatos

Cada agendamento cria um histórico detalhado, permitindo segmentações valiosas como clientes regulares e aniversariantes.

  • Segmentação de clientes
  • Histórico completo
  • Estatísticas de clientes

Gestão financeira

Controle seu fluxo de caixa e mantenha suas receitas e despesas sempre atualizadas com registros automáticos a cada agendamento.

  • Fluxo de caixa
  • Receitas por categoria
  • Despesas por categoria

Relatórios detalhados

Acompanhe o desempenho do seu negócio com relatórios completos e ricos de informações.

  • Gestão inteligente
  • Transparência
  • Metas

O que nossos clientes dizem

Profissionais autônomos e pequenos negócios estão melhorando suas rotinas e atendimento com a Timeline.
Veja alguns depoimentos:

Natalisson

Hoje meus clientes estão acostumados a agendar seus horários pelo link e minha agenda lota sozinha. Testei outros sistemas e sem dúvidas o timeline foi o melhor sistema de agendamentos que eu já usei.

Barbearia Ribeiro

Alan

Sempre que preciso agendar um horário eu entro no link do Instagram, vejo os horários disponíveis e agendo meu horário. É muito melhor do que antes quando para agendar eu precisava ir até a barbearia, ligar ou trocar mensagens no Whatsapp até encontrar um horário.

Cliente da Barbearia Ribeiro

Gilton

Vocês estão de parabéns, plataforma bem funcional, útil e com um valor justo. Já experimentei 3 e achei a de vocês o melhor, depois irei indicar para alguns parceiros.

Studio Oliver

Gilton

Vocês estão de parabéns, plataforma bem funcional, útil e com um valor justo. Já experimentei 3 e achei a de vocês o melhor, depois irei indicar para alguns parceiros.

Studio Oliver

Tudo que você precisa

Se você trabalha com agendamentos a Timeline vai ser a sua melhor descoberta

Solução completa

Uma plataforma com todos os recursos necessários para otimizar o atendimento e a gestão do seu negócio.

Atendimento eficiente

Suporte via WhatsApp sempre à disposição, rápido e direto

Preços acessíveis

Qualidade, praticidade e o melhor preço para profissionais autônomos e equipes.

Planos acessíveis

Comece grátis criando sua conta e personalize tudo em poucos minutos

Individual

Solução completa para 1 usuário 

R$ 59

por mês

Economize 30% no plano anual

equipes

Solução completa para usuários ilimitados

R$ 118

por mês

Economize 30% no plano anual

Perguntas frequêntes

Encontre respostas para as principais dúvidas

[dipl_faq_page_schema closed_toggle_icon=”3||divi||400″ closed_icon_color=”#000000″ closed_use_icon_font_size=”on” closed_icon_font_size=”24px” open_toggle_icon=”2||divi||400″ open_icon_color=”#000000″ open_use_icon_font_size=”on” open_icon_font_size=”24px” closed_toggle_bg_color=”#FFFFFF” open_toggle_bg_color=”#FFFFFF” global_question_custom_padding=”||||false|false” global_answer_custom_padding=”||||false|false” _builder_version=”4.25.2″ _module_preset=”default” faq_heading_line_height=”1.3em” faq_question_closed_line_height=”1.2em” faq_question_open_line_height=”1.4em” custom_margin=”||||false|false” custom_padding=”||||false|false” border_radii=”on|10px|10px|10px|10px” border_color_all=”#000000″ global_colors_info=”{}” theme_builder_area=”post_content”][dipl_faq_page_schema_item faq_question=”Como funciona o teste gratuito?” _builder_version=”4.25.2″ _module_preset=”default” question_heading_font=”|600|||||||” question_heading_font_size=”16px” answer_text_font=”||||||||” answer_text_font_size=”16px” custom_margin=”||20px||false|false” custom_padding=”|||10px|false|false” global_colors_info=”{}” theme_builder_area=”post_content”]

Nosso teste gratuito dura 7 dias e dá acesso total a todas as funcionalidades do Timeline. Basta se cadastrar, configurar o sistema em poucos minutos e começar a usar! Durante esse período, você pode explorar o sistema sem compromisso e ver o impacto que ele pode ter na sua gestão de agendamentos.

[/dipl_faq_page_schema_item][dipl_faq_page_schema_item faq_question=”Posso cancelar a qualquer momento?” _builder_version=”4.25.2″ _module_preset=”default” question_heading_font=”|600|||||||” question_heading_font_size=”16px” answer_text_font=”||||||||” answer_text_font_size=”16px” custom_margin=”||20px||false|false” custom_padding=”|||10px|false|false” global_colors_info=”{}” theme_builder_area=”post_content”]

Sim! Você pode cancelar sua assinatura a qualquer momento, sem taxas adicionais. Nosso objetivo é oferecer uma ferramenta útil e prática, então, se em algum momento você decidir que o Timeline não é mais o que precisa, basta cancelar diretamente pelo sistema.

[/dipl_faq_page_schema_item][dipl_faq_page_schema_item faq_question=”O Timeline oferece suporte técnico?” _builder_version=”4.25.2″ _module_preset=”default” question_heading_font=”|600|||||||” question_heading_font_size=”16px” answer_text_font=”||||||||” answer_text_font_size=”16px” custom_margin=”||20px||false|false” custom_padding=”|||10px|false|false” global_colors_info=”{}” theme_builder_area=”post_content”]

Com certeza! Nosso suporte é eficiente e disponível via WhatsApp para tirar qualquer dúvida ou resolver problemas. Estamos prontos para ajudar você a tirar o máximo proveito do Timeline e garantir uma experiência sem complicações.

[/dipl_faq_page_schema_item][dipl_faq_page_schema_item faq_question=”Como os lembretes são enviados?” _builder_version=”4.25.2″ _module_preset=”default” question_heading_font=”|600|||||||” question_heading_font_size=”16px” answer_text_font=”||||||||” answer_text_font_size=”16px” custom_margin=”||20px||false|false” custom_padding=”|||10px|false|false” global_colors_info=”{}” theme_builder_area=”post_content”]

Os lembretes são enviados automaticamente pelo WhatsApp, utilizando o número de telefone que você cadastra no sistema. Isso inclui mensagens de confirmação de agendamento, lembretes antes do horário marcado e até pesquisas pós-atendimento para medir a satisfação dos seus clientes.

[/dipl_faq_page_schema_item][/dipl_faq_page_schema]

Faça um teste grátis e veja se funciona para você

Não perca tempo, automatize seu agendamento e ganhe mais tempo para focar no atendimento.