=== Synoveo – Google Business Profile Sync ===
Contributors: Synoveo
Tags: google business, local seo, google maps, woocommerce, google my business
Requires at least: 5.8
Tested up to: 6.8
Requires PHP: 7.4
Stable tag: 1.2.2
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Automatically sync your WordPress site with Google Business Profile. Keep business info accurate, boost local SEO, dominate "near me" searches.
== Description ==
**Synoveo connects your WordPress site directly to your Google Business Profile using the official Google API.**
Stop manually updating your business hours, address, and contact details in multiple places. Synoveo keeps your Google Business Profile and WordPress site perfectly synchronized — automatically.
= Why Businesses Choose Synoveo =
✅ **Always Accurate** – Business hours, address, and contact info stay current everywhere
✅ **Boost Local SEO** – Rank higher in "near me" searches and Google Maps
✅ **Build Trust Fast** – Verified, complete listings convert more visitors to customers
✅ **Save Hours Weekly** – Eliminate manual updates across platforms
✅ **Works Automatically** – Set it once, syncs forever
= Perfect For =
* **Local Stores & E-commerce** – WooCommerce integration keeps products and hours synced
* **Restaurants & Cafes** – Menu updates, special hours, and reservations stay current
* **Service Businesses** – Salons, clinics, consultants with booking systems
* **Multi-location Businesses** – Manage all locations from one dashboard (Pro)
= Key Features =
**Official Google Integration**
* Direct connection via Google Business Profile API (formerly Google My Business)
* Secure OAuth 2.0 authentication – never stores passwords
* Real-time synchronization with Google's systems
**Smart Plugin Detection**
Automatically works with your existing plugins:
* WooCommerce
* Yoast SEO & Rank Math
* Amelia Booking & Bookly
* Booking Calendar & more
**Automatic Sync**
* Business name, address, phone (NAP)
* Operating hours (including special hours)
* Products and services
* Booking availability
* Business descriptions
**Security First**
* Bank-level encryption (AES-256-GCM)
* HTTPS-only communication
* No password storage
* WordPress security best practices
* Open source & auditable
= How It Works (5-Minute Setup) =
1. Install and activate Synoveo
2. Click "Connect to Google Business Profile"
3. Authorize securely (like "Sign in with Google")
4. Synoveo detects your plugins automatically
5. Done! Automatic syncing begins
= Free Forever Plan =
The Lite version includes:
* Single location sync
* 3 syncs per week
* All core features
* Official Google API access
* Full security features
* Community support
**No credit card. No time limits. No hidden fees.**
= Who Benefits Most =
**E-commerce Stores**
Connect WooCommerce to show accurate inventory and hours when customers search "near me"
**Restaurants**
Keep menus, hours, and reservation links current on Google Search and Maps
**Service Providers**
Sync booking availability from Amelia or Bookly directly to Google Business Profile
**Local Retailers**
Maintain accurate store hours during holidays and special events automatically
**Medical & Professional**
Keep office hours and contact details accurate for patients and clients
= Technical Details =
**Official API Access**
Synoveo uses Google Business Profile API with official Google approval. This provides:
* Reliable, direct connection to Google's systems
* Compliant with Google's enterprise security standards
* Future-proof as Google updates their platform
**Plugin Compatibility**
Works seamlessly with:
* WooCommerce (products, inventory, business details)
* Yoast SEO, Rank Math, AIOSEO (business schema)
* Amelia Booking, Bookly, Booking Calendar (availability)
* Simply Schedule Appointments, WP Booking System
**No Plugins Required**
Synoveo works independently even without additional plugins. Manually configure business information directly in the interface.
**Universal Compatibility**
* Any WordPress theme
* Any hosting provider
* All countries with Google Business Profile support
* Any language
= Privacy & Security =
**What Synoveo Accesses:**
* Business name, address, hours
* Product/service information (if using supported plugins)
* Basic WordPress site data
**What Synoveo NEVER Accesses:**
* Your Google password
* Customer personal information
* Payment or financial data
* Private communications
**Your Controls:**
* Disconnect anytime
* Delete your data instantly
* Full transparency (open source)
* Export all information
Read our complete privacy policy: https://synoveo.com/privacy
= Support & Documentation =
**Free Community Support:**
* WordPress.org support forums
* Built-in FAQ and help docs (Synoveo → Help)
* Video tutorials
* Email: support@synoveo.com
**Coming Soon:**
* Priority support for Pro users
* Phone support
* Custom integration help
== Installation ==
= Automatic Installation =
1. Go to Plugins → Add New in WordPress
2. Search for "Synoveo"
3. Click "Install Now"
4. Click "Activate"
5. Go to Synoveo in your WordPress menu
6. Click "Connect to Google Business Profile"
7. Authorize the connection
8. Done!
= Manual Installation =
1. Download the plugin ZIP file
2. Go to Plugins → Add New → Upload Plugin
3. Choose the ZIP file and click "Install Now"
4. Activate the plugin
5. Follow steps 5-8 above
= After Installation =
1. Navigate to **Synoveo** in your WordPress admin menu
2. Click the **"Connect to Google Business Profile"** button
3. Sign in to your Google account (the one that manages your business)
4. Grant permission (secure OAuth – no passwords shared)
5. Your business will appear in the dashboard
6. Synoveo automatically detects your installed plugins
7. Syncing begins immediately
**No technical knowledge required!**
== Frequently Asked Questions ==
= Is Synoveo really free? =
Yes! The Lite version is free forever with no credit card required. It includes single location sync with 3 syncs per week – perfect for most small businesses.
= How does Synoveo connect to Google? =
Synoveo uses Google's official Business Profile API with OAuth 2.0 (the same "Sign in with Google" system you see on other websites). We never store your Google password.
= Is my Google account safe? =
Absolutely. Synoveo uses bank-level security and never accesses your password. You can disconnect anytime from your Google account settings.
= Do I need technical skills? =
No! Setup takes 5 minutes with simple click-by-click instructions. Once connected, everything happens automatically.
= What if I don't use WooCommerce or booking plugins? =
No problem! Synoveo still syncs your core business information, hours, and contact details to boost your local SEO.
= How often does it sync? =
The free Lite version syncs up to 3 times per week. Pro plans (coming soon) offer daily or real-time syncing.
= Can I disconnect anytime? =
Yes, with zero consequences. Your Google Business Profile keeps all synced information, your website stays unchanged, and no data is lost.
= Does it work with my theme? =
Yes! Synoveo works with any WordPress theme. It doesn't change your website's appearance.
= What countries are supported? =
Synoveo works in all countries where Google Business Profile is available.
= How does this improve my SEO? =
Consistent, accurate business information across platforms signals trust to Google. This improves your ranking in local "near me" searches and Google Maps results.
= What's the difference between free and Pro? =
Free (Lite): Single location, 3 syncs/week, all core features
Pro (Coming Soon): Multiple locations, daily sync, priority support, advanced analytics
= Can I see what Synoveo is doing? =
Yes! The dashboard shows detailed sync history, detected plugins, quota usage, and activity logs.
= What happens to my data if I uninstall? =
Your Google Business Profile keeps all synced information. Your WordPress site is unaffected. Plugin data is removed from your database.
== Screenshots ==
1. Main dashboard with business overview and plugin detection
2. Secure Google Business Profile connection interface
3. Real-time sync status with quota tracking
4. Business information comparison and sync controls
5. Help section with FAQ and documentation
== Changelog ==
= 1.2.2 - 2025-10-21 =
🛠️ Maintenance & Behavior Alignment Release
- **Address Validation & Normalization**
- Now automatically adopts Google's canonicalized address after successful validation or sync, ensuring full consistency with GBP (no more false "Different" status).
- Improved `handle_save_address_manual()` to persist the normalized Google address in `synoveo_manual_business_info`.
- Retains backward compatibility for older Lite users without normalized payloads.
- **Dashboard Behavior**
- Fixed event delegation in `dashboard-capabilities.js` — "Configure Address with Google" button now triggers correctly under WordPress.org inline-JS restrictions.
- Added safe delegated click routing via `[data-capability-action]` attributes.
- **Address Validation Frontend**
- Added robust country normalization via reusable ISO-3166 mapping (`frontend/lib/country-map.ts`) for all Google Address API calls.
- The validation route now surfaces Google's exact error messages instead of generic 500s.
- **Diff Logic**
- Resolved false positives in Compare & Sync modal by ensuring both WordPress and Google addresses share the same canonical format.
- **Deployment**
- Updated build & SVN deployment script to fully respect `.gitattributes` exclusions.
= 1.2.1 =
* Fixed Lite user desynchronization issue between PHP and JS key generators.
* Added automatic self-healing of Lite identifier on plugin load.
* Improved bootstrap stability and idempotent registration flow.
* Minor logging improvements and internal API normalization.
= 1.2.0 (2024-03-15) =
**Major Stability Release**
* Complete quota system overhaul with unified architecture
* Eliminated duplicate quota records and rate limiting issues
* Atomic quota operations prevent race conditions
* Canonical UTC timezone handling for consistency
* Fixed "User rate limit exceeded" errors during normal usage
* Enhanced error handling and telemetry logging
* Improved burst protection and graceful degradation
* Users can now use weekly syncs more flexibly
= 1.1.3 =
* Centralized social platform definitions
* Improved HTTP error handling in dashboard
* Enhanced AJAX response validation
* Better logging with proper logger component
= 1.1.2 =
* Improved WordPress.org plugin tags
= 1.1.1 =
* Optimized short description for WordPress.org
= 1.1.0 =
**Business Rules & Security**
* Plan-based business rules enforcement
* Explicit Lite user registration flow
* Email verification gate before OAuth
* Deterministic user identifier generation
* Automatic business name updates from Google
* OAuth session token caching for performance
* New endpoints: /auth/register-lite, /google-business/check-business-rules
= 1.0.7 =
* Improved error handling in capability cards
* Enhanced fallback mechanisms for card refresh
* Security-compliant content setting (XSS prevention)
* Fixed "Too many requests" error in GBP Compare
* Increased burst limit for better user experience
= 1.0.6a =
* Improved dashboard refresh performance (60-80% fewer API calls)
* Smart connection status checking
* Fixed uninstall fatal error
* Better WordPress options cleanup
= 1.0.6 =
* Fixed non-functional sync button in GBP Compare
* Restored business hours sync functionality
= 1.0.5 =
**WordPress.org Compliance**
* Removed all inline event handlers (100% JavaScript separation)
* Comprehensive output escaping (250+ instances)
* Full internationalization with 'synoveo' text domain
* Enhanced accessibility (modal focus management, ARIA)
* Zero inline CSS/JS tags
* Template security hardening complete
= 1.0.4 =
**Security Hardening**
* Replaced all error_log() with SYNOVEO_Logger
* Recursive sanitization for safe logging
* Enforced nonce verification across AJAX handlers
* Sanitized all $_POST and $_GET logging
* Internationalization for 120+ user-facing strings
* Plugin compatibility declarations
= 1.0.3 =
* Centralized logging utility (SYNOVEO_Logger)
* WordPress-compliant logging methods
* Context-aware logging with categories
* Removed 95+ non-compliant error_log() calls
= 1.0.2 =
**Google-First Address Management**
* Verified addresses now read-only in Synoveo
* Automatic address seeding from Google
* Enhanced verification state detection
* Improved field validation and error handling
= 1.0.1 =
* Initial public release
* Google Business Profile integration
* Multi-plugin detection
* Address validation
* Business hours sync
* Booking system integration
== Upgrade Notice ==
= 1.2.2 =
Address normalization and GBP diff improvements. Recommended for all users to resolve false "Different" status in Compare & Sync modal.
= 1.2.1 =
Lite identifier alignment and self-healing. Recommended for all Lite installations to prevent registration errors.
= 1.2.0 =
Major stability improvements. This update eliminates quota duplication issues and rate limiting errors. Recommended for all users.
= 1.0.5 =
Security and accessibility improvements. Fully compliant with WordPress.org standards.
= 1.0.4 =
Critical compliance and security fixes. Update recommended.
== Security ==
Synoveo takes security seriously:
**Enterprise-Grade Protection**
* AES-256-GCM encryption
* HMAC-SHA256 authentication
* OAuth 2.0 secure authorization
* HTTPS-only communication
* Zero password storage
**Certifications & Standards**
* WordPress Coding Standards compliant
* Google API Security Best Practices
* OWASP Security Guidelines
* Open Source Security Foundation standards
**Transparency**
* 100% open source (GPL v2)
* Community auditable
* No hidden functionality
* Regular security updates
**Report Security Issues**
Email: security@synoveo.com for responsible disclosure
== Additional Information ==
**Developer Resources**
* GitHub: [Coming Soon]
* Documentation: https://docs.synoveo.com
* API Reference: https://api.synoveo.com/docs
**Stay Connected**
* Website: https://synoveo.com
* Support: support@synoveo.com
* Privacy Policy: https://synoveo.com/privacy
* Terms of Service: https://synoveo.com/terms