Woocommerce Google Calendar extension
- or -
Post a project like this2998
$$$
- Posted:
- Proposals: 8
- Remote
- #1025184
- Awarded
PPH #1 Service Provider in Development & IT : Wordpress|Magento|React Native|Mobile App Development|Angular|Node.js
Mohali
iOS & Android App Development|Web App Development|ROR|AngularJS|PHP|Wordpress|Website Design & Development| SEO|
Chandigarh
4731741283424717355543447467867589679841171151815
Description
Experience Level: Expert
General information for the website: We sell private guided tours
Description of requirements/features: This job is for the creation (from scratch) of a Woocommerce extension that allows two-way synchronization of Google Calendar. The extension needs to work in conjunction with the official Woocommerce Bookings extension.
How does WC Bookings work? It allows the creation of "Bookable products" that have a duration, either fixed (admin selected) or variable (customer selected). Resources can be added to each product (in my example: tour guides for guided tours). When a customer tries to book a product, the availability of each time slot is checked against three settings:
- global availability (at company level, which is editable in Bookings-->global availability)
- product availability (which can be set at product level)
- resource availability (which can be set in Bookings-->resources)
The requested plugin must add a fourth level to check, which is: the status (busy/available) in the resource's Google calendar.
Requirements:
The new plugin must extend the functionalities of WC Bookings as follows:
1. each resource (bookings-->resources) can be linked to a Wordpress account
2. the plugin will add, to the resource settings in backend, the ability to authorize the app to sync (two-ways) the personal Google Calendar of the resource
3. the WP user whose account is linked to a resource can edit his own resource settings and authorize Google Calendar sync accessing to the Bookings-->resources menu in the backend (the plugin will need to create a new WP role for this. Alternatively, the user role creation can be tailored to my website and not something included in the plugin. The developer can choose).
4. when booking a product, the new plugin will check the Google Calendar of the resource(s) to return the available slots accordingly. In other words, for each timeslot which is available under the already existing WC Bookings rules (global, product and resource availability), the plugin will also need to check if the Google Calendar of the resource(s) is empty for the entire time slot (* - read the "NOTE" below for more specifications on this).
5. when a booking is made and paid (even partially), the plugin must write the event in the Google Calendar of the selected (or automatically assigned) resource, and send an email message with the booking details to the resource. The message can be a copy of the email received by the admin when a booking is made.
6. the new plugin must be compatible with the other Woocommerce extensions installed on my website.
Optional requirement:
- would be nice to have the ability to link resources also to accounts with a different role, extending their privileges. In particular, "Shop manager" accounts (Shop manager is a role created by Woocommerce Product Vendors extension). By the way, this is not strictly required.
* - NOTE: WC Bookings gives two options in managing resources, which can be different for each product:
Option 1: resource is automatically assigned. If this option is selected, the customer cannot choose a resource when making a booking. In this case, the plugin must check the availability of each resource, and show any time slot available in case at least one resource is available.
Option 2: resource is customer selected. If this option is selected, then the plugin must show the available time slots for the selected resource, and update the availability in real time whenever the customer selects a different resource.
Additional information for the developer:
- test environment has been created; the developer will have full access
- WC Bookings has Google Calendar integration but, as is, it syncs only one Calendar (company) and it's a one-way sync (it writes the new bookings in the Calendar). By the way, the developer can retrieve the Calendar API from the info that WC Bookings has already
Useful links:
- Woocommerce documentation: https://docs.woothemes.com/documentation/plugins/woocommerce/
- WC Bookings documentation: https://docs.woothemes.com/documentation/plugins/woocommerce/woocommerce-extensions/bookings/
- link to a free plugin (out of date) that provided two-way Calendar sync (only at company level, not by resource) where the developer can maybe find useful code: https://wordpress.org/plugins/google-calendar-woocommerce-bookings-two-way-sync/
Extra notes:
Description of requirements/features: This job is for the creation (from scratch) of a Woocommerce extension that allows two-way synchronization of Google Calendar. The extension needs to work in conjunction with the official Woocommerce Bookings extension.
How does WC Bookings work? It allows the creation of "Bookable products" that have a duration, either fixed (admin selected) or variable (customer selected). Resources can be added to each product (in my example: tour guides for guided tours). When a customer tries to book a product, the availability of each time slot is checked against three settings:
- global availability (at company level, which is editable in Bookings-->global availability)
- product availability (which can be set at product level)
- resource availability (which can be set in Bookings-->resources)
The requested plugin must add a fourth level to check, which is: the status (busy/available) in the resource's Google calendar.
Requirements:
The new plugin must extend the functionalities of WC Bookings as follows:
1. each resource (bookings-->resources) can be linked to a Wordpress account
2. the plugin will add, to the resource settings in backend, the ability to authorize the app to sync (two-ways) the personal Google Calendar of the resource
3. the WP user whose account is linked to a resource can edit his own resource settings and authorize Google Calendar sync accessing to the Bookings-->resources menu in the backend (the plugin will need to create a new WP role for this. Alternatively, the user role creation can be tailored to my website and not something included in the plugin. The developer can choose).
4. when booking a product, the new plugin will check the Google Calendar of the resource(s) to return the available slots accordingly. In other words, for each timeslot which is available under the already existing WC Bookings rules (global, product and resource availability), the plugin will also need to check if the Google Calendar of the resource(s) is empty for the entire time slot (* - read the "NOTE" below for more specifications on this).
5. when a booking is made and paid (even partially), the plugin must write the event in the Google Calendar of the selected (or automatically assigned) resource, and send an email message with the booking details to the resource. The message can be a copy of the email received by the admin when a booking is made.
6. the new plugin must be compatible with the other Woocommerce extensions installed on my website.
Optional requirement:
- would be nice to have the ability to link resources also to accounts with a different role, extending their privileges. In particular, "Shop manager" accounts (Shop manager is a role created by Woocommerce Product Vendors extension). By the way, this is not strictly required.
* - NOTE: WC Bookings gives two options in managing resources, which can be different for each product:
Option 1: resource is automatically assigned. If this option is selected, the customer cannot choose a resource when making a booking. In this case, the plugin must check the availability of each resource, and show any time slot available in case at least one resource is available.
Option 2: resource is customer selected. If this option is selected, then the plugin must show the available time slots for the selected resource, and update the availability in real time whenever the customer selects a different resource.
Additional information for the developer:
- test environment has been created; the developer will have full access
- WC Bookings has Google Calendar integration but, as is, it syncs only one Calendar (company) and it's a one-way sync (it writes the new bookings in the Calendar). By the way, the developer can retrieve the Calendar API from the info that WC Bookings has already
Useful links:
- Woocommerce documentation: https://docs.woothemes.com/documentation/plugins/woocommerce/
- WC Bookings documentation: https://docs.woothemes.com/documentation/plugins/woocommerce/woocommerce-extensions/bookings/
- link to a free plugin (out of date) that provided two-way Calendar sync (only at company level, not by resource) where the developer can maybe find useful code: https://wordpress.org/plugins/google-calendar-woocommerce-bookings-two-way-sync/
Extra notes:
Andrea P.
100% (26)Projects Completed
26
Freelancers worked with
15
Projects awarded
16%
Last project
25 May 2020
Italy
New Proposal
Login to your account and send a proposal now to get this project.
Log inClarification Board Ask a Question
-
There are no clarification messages.
We collect cookies to enable the proper functioning and security of our website, and to enhance your experience. By clicking on 'Accept All Cookies', you consent to the use of these cookies. You can change your 'Cookies Settings' at any time. For more information, please read ourCookie Policy
Cookie Settings
Accept All Cookies