Hace unos años publicaba un tutorial sobre sistema de reservas en WordPress con el plugin Booking Calendar, uno de los tutoriales más vistos en mi canal de Youtube.

Este plugin nos permitía con una sencilla configuración, crear calendarios para distintos servicios, con algunas limitaciones en su versión gratuita, entre las más destacadas, que no integra forma de pago online.

Tras un tiempo me he visto en la necesidad de montar un sistema de reservas para un nuevo proyecto y es donde he descubierto Pinpoint Booking System. Un plugin bastante más completo que Booking Calendar, que a diferencia de este, en su versión gratuita sí incorpora varios complementos como el tan deseado sistema de pago online, de forma nativa a través de PayPal.

Pero eso no es todo, si no que podemos conectarlo con WooCommerce para pasar la reserva como un artículo de carrito y finalizar la compra con todas las pasarelas que tengamos habilitadas en WooCommerce. Y todo esto en su versión gratuita.

¿Y cual es la limitación principal de la versión gratuita? Que solo podemos crear un calendario. Si necesitamos varios tipos de calendarios, porque tengamos varios apartamentos con distintos precios, o un hotel con varios tipos de habitaciones, tendremos que adquirir la versión completa, aunque esta tiene un precio bastante contenido, unos 70$ para un sitio web.

En este tutorial vamos a ver los primeros pasos y funcionalidades más destacadas para configurar nuestro calendario de reservas con este fanstástico plugin.

Artículo disponible en vídeo

Puedes seguir esta guía en vídeo desde mi canal de Youtube, si lo prefieres.

Instalación y primeros pasos con Pinpoint Booking

La versión gratuita de Pinpoint Booking podemos adquirirla desde el repositorio oficial de WordPress:

Plugin Pintpoint Booking System

Nada más instalarlo tenemos un nuevo menú disponible en WordPress desde el que accedemos al Dashboard de Pinpoint Booking con acceso a las principales configuraciones. También nos ofrece la posibilidad de ocultar las opciones premium para saber qué podemos hacer exactamente con la versión gratuita, otra característica que es de agradecer.

Configurar idioma en español

Antes de nada, vamos poner todo el entorno (backend y frontend) en nuestro idioma. El plugin no tiene un archivo de traducción .po .mo tradicional, pero permite modificar cualquier cadena de texto que aparece en el plugin, ya sea en el backend o dashboard como en el frontend. Para ello acudimos al Menú – Traslation y hacemos clic en Manage languages.

Localizamos nuestro idioma y lo activamos:

Seleccionamos nuestro idioma para acceder a la modificación de cualquier cadena de texto del plugin:

Encontraremos traducciones «reguleras», por ejemplo: Comming soon lo traducen como «Viene pronto», cuando lo correcto sería «Próximamente». Podemos ir cambiado estas expresiones fácilmente:

Otra característica interesante del plugin es que cada acción que realizamos se guarda automáticamente, no hay que andar clicando en botones de Guardar o Salvar cada paso que damos, salvo en la configuración del calendario que veremos más adelante.

Ahora para activar todo el entorno del plugin en español, tenemos que ir a la esquina superior derecha y seleccionar en Documentación: Nuestro idioma.

Crear / editar un nuevo calendario

Nos dirigimos al Menú – Calendarios donde tenemos un calendario creado. Como estamos trabajando con la versión gratuita será el único calendario con el que vamos a trabajar.

En la parte superior tenemos varios botones o pestañas con las distintas opciones que podemos aplicar al calendario. La primera nos permite configurar la disponibilidad y precio de los días.

Podemos establecer el precio y el número de reservas disponibles para cada día individualmente, pero si queremos ir más rápido, podemos hacerlo por rangos, seleccionando el primer y último día y aplicando esos valores para todos los días del rango:

En esta imagen hemos establecido que desde el 3 al 30 junio haya disponible una reserva al coste de 50$ / dia. Si queremos cambiar el precio de días concretos podemos hacerlo sin problema, para establecer temporadas altas, medias o bajas, subir el precio a fines de semana de puente, festivos, etc. Una vez establecidos estos parámetros, esta vez sí tenemos que guardar los cambios en el botón «Someter» (podemos cambiar la traducción de este botón si lo deseamos).

Esta sería la vista de nuestro calendario de cara al público, con los días disponibles en verde (en rojo los ocupados por una reserva y gris transparente los días no disponibles).

En la segunda pestaña entramos en ajustes avanzados del calendario:

Donde podemos especificar:

  • Nombre del calendario.
  • Formato de fecha.
  • Plantilla (2 disponibles).
  • Establecer un plazo para la cancelación de una reserva.
  • Establecer el número de meses a mostrar.
  • Mostrar/ocultar el precio de cada día.
  • Mostrar/ocultar el número de reservas disponibles por cada día.
  • Establecer la moneda.
  • Fijar la posición del símbolo de moneda respecto al precio.
  • Habilitar los días de la semana disponibles (muy útil si hay algún día de la semana no disponible de forma permanente).
  • Establecer el primer día de la semana.
  • Hablitar el Check-In Check-Out adicionalmente.
  • Comprobar la mañana. Permite dividir los días de entrada y de salida como «medios días». De esta forma se le indica al cliente que puede acceder a la vivienda a partir de la tarde del día de entrada y abandonarla antes del medio día del día de salida.
  • Ajustes del sidebar: Permite establecer la posición de los módulos del calendario.
  • Ajustes de reglas, sumplementos, descuentos, impuestos y tasas. Los configuraremos más adelante y podremos establecerlos aquí.

Pasamos a la siguiente pestaña de configuración donde podemos personalizar las notificaciones, tanto para el administrador como para el cliente:

En el caso de que nuestro servidor web no soporte PHP Mailer o PHP Mail para el envío de las notificaciones, podemos configurar hasta dos servidores de correo SMTP externos.

Para probar que las notificaciones funcionan correctamente podemos enviarnos una notificación de prueba a nuestro correo, utilizando cualquiera de los métodos disponibles:

La siguiente configuración permite establecer las opciones de pago:

  • Habilitar el pago a la llegada.
  • Permitir la aprobación inmediata para casos en los que el pago se efectúe en diferido (a la llegada).
  • Establecer una página destino o de agradecimiento tras finalizar la reserva.

Si necesitamos emitir una factura, podemos pedir los datos del cliente habilitando la dirección de facturación y estableciendo qué datos o campos necesitamos de forma oblitagoria.

La pasarela de pago integrada de forma nativa es PayPal, permitiendo a los clientes realizar el pago desde su propia cuenta de PayPal o utilizando su tarjeta de crédito normal. En este apartado tendremos que cumplimentar los datos y claves de nuestra API de PayPal, para ello recomiendo crear una cuenta PayPal Business con la que podemos utilizar estos servicios de pago online.

Ajustes complementarios de Pinpoint Booking

Reglas

Un punto muy común en un sistema de reservas online es establecer una serie de limitaciones dentro del calendario, pues tal y como se ofrece, un cliente podría realizar la reserva de un solo día, o de incluso 1000, ya que el calendario por sí solo no establece ninguna regla o limitación.

Desde este apartado podremos establecer cual será el rango mínimo y máximo de las reservas.

Extras

Los extras nos van a permitir incrementar o reducir el coste de la reserva ya sea mediante un importe porcentual o fijo. Nos puede venir muy bien si deseamos sumar un importe por huesped extra, o por uso de una cama supletoria o de algún servicio adicional, como el uso del aire acondicionado o de la piscina de haberla.

Podemos establecer que sea obligatorio seleccionar alguno de nuestros extras y tal y como vemos en la imagen especificar todas las opciones que necesitemos con su importe correspondiente:

Descuentos

En muchos alojamientos se establecen descuentos en función de los días que dure la estancia. En este apartado podemos establecer descuentos por semanas, quincenas o meses que se restarán al cómputo total del coste de la reserva (días x precio/día).

Así mismo, si establecemos el precio de la noche en 50€, pero queremos cobrar la semana completa a 300€, el sistema calculará 50 x 7 noches (350€), pero aplicando un descuento de 50€ por una reserva mínima de 7 noches, el importe quedaría en 300€.

También podemos configurar si el descuento (porcentual) aplicaría al coste de la reserva únicamente (cómputo de días) o al coste de la reserva + los extras, activando la casilla «Añadir el precio de extra en los cálculos«.

Impuestos y tasas

Si somos una empresa tendremos que declarar el IVA de cada reserva al porcentaje que haya establecido (21% actualmente en España). Este importe podemos sumarlo a la reserva o establecerlo como impuesto incluido (el sistema realizará el desglose automático entre el total, la base imponible y el importe del impuesto:

Formularios

Aquí definiremos el formulario que tendrán que cumplimentar nuestros clientes a la hora de solicitar/realizar una reserva. Por defecto tenemos un formularo prestablecido con una serie de campos como el nombre, apellido, e-mail, teléfono y mensaje.

Por supuesto todos estos campos son editables, se pueden suprimir o añadir más.

Cada campo tiene su configuración forma de validar propia, por ejemplo podemos establecer la Etiquta, es el nombre del campo de cara al cliente, el número de caracteres o longitud permitida, validar si es un correo electrónico o si es un dato numérico (por ejemplo, número de teléfono), establecer si es un campo obligatorio, etc.

Plantillas de correo electrónico

Estas plantillas nos van a permitir configurar el contenido de las notificaciones que recibirán tanto el administrador de la web como el cliente que realiza la reserva. Tenemos plantillas prácticamente para todo:

  • Notificación de nueva reserva al administrador y al cliente.
  • Notificación de aprobación instantánea al administrador y al cliente.
  • Notifaciones de aprobación manual de reserva al cliente.
  • Notificación de cancelación de reserva al cliente.
  • Notificación de pago por PayPal al administrador y al cliente.

En todas estas plantillas podremos personalizar tanto el asunto del correo, como el contenido. Los datos de la reserva aparecen como variables [DETAILS], [EXTRAS], [DISCOUNT], que tendremos que respectar para que esos datos se establezcan de forma dinámica en la notificación, pero podemos añadir texto personalizado entre estas variables, e incluso código HTML para darle un poco de formato a la notificación.

Finalizar la configuración del calendario

Una vez establecidos los complementos de Reglas, Extras, Descuentos, Impuestos… podemos terminar la configuración del calendario que habíamos dejado pendiente:

Añadir el calendario a una página

Para utilizar el calendario en el Frontend de nuestra web, crearemos una página cualquiera y añadimos un shortcode indicando el ID de nuestra calendario y el idioma que queremos mostrar:

[dopbsp id=1 lang=es]

Al acceder a la página aparecerá el calendario tal cual:

Gestión de reservas

En menú – Reservas tendremos acceso a los datos de todas nuestras reservas, y desde aquí podremos aprobarlas (en caso de requerir aprobación), rechazarlas y cancelarlas.

Además tenemos una vista muy detallada de todos los datos de la reserva: Dias de entrada y salida, datos del cliente, extras añadidos, forma de pago, etc.

En el momento en que tengamos un gran número de reservas, podremos filtrarlas con los parámetros de la zona izquierda, pudieron filtrar por perioro, estado de la reserva, formas de pago, etc.

Conectar Pinpoint Booking con WooCommerce

Si queremos aprovechar los métodos de pago disponibles en WooCommerce (transferencia bancaria, Stripe, TPV Bancario…), podemos conectar nuestro calendario con un producto WooCommerce, haciendo que el importe de la reserva acabe en el carrito de compra como si fuera cualquier otro artículo de venta.

Para ello, crearemos un nuevo artículo. Es muy importante ponerle un precio al artículo (aunque no tenga nada que ver con el importe de la reserva), de lo contrario no se activarán las opciones de finalizar compra.

También no está demás, indicar que el producto es virtual, así tampoco se activan opciones de envío.

En el nuevo apartado que tenemos junto a General, Inventario, Productos relacionados, etc… podemos indicar el ID del calendario que queremos asociar al producto, el idioma, la posición (dentro de la ficha del producto) en la que queremos mostrar el calendario y si deseamos usar el botón de WooCommerce (de añadir al carrito) o el botón que integra el plugin.

Si especificamos la posición en Resumen, el calendario aparecerá junto a la imágen del producto:

Si elegimos que se posicione en Etiquetas, el calendario se habilitará en una nueva pestaña dentro de las tablas de descipción y valoraciones de la ficha del producto:

Una vez rellenos los datos para la reserva, se habilitará el botón de añadir al carrito:

Del carrito pasamos a la página de pago para finalizar la reserva como cualquier otra venta dentro de WooCommerce:

Y hasta aquí creo que hemos visto la mayoría de opciones o al menos, las más importantes, para configurar nuestro calendario de forma gratuita con este magnífico plugin.

Recuerda que para crear más calendarios necesitarás adquirir la versión PRO de PinPoint Booking.

Si quieres apoyar al blog, puedes usar mi link de afiliado, no te costará ni un céntimo más, pero me ayudarás a seguir creando contenidos de valor sobre este y otros temas relacionados con WordPress y el desarrollo web.

COMPRAR PINPOINT BOOKING SYSTEM PRO:

https://pinpoint.world/es/reservas-wordpress?ref=400500501511425

Nos vemos en el siguiente post 😉