A comprehensive WordPress plugin that enables Saudi Arabian businesses to comply with ZATCA (Zakat, Tax and Customs Authority) e-invoicing requirements through WooCommerce integration.
- Phase 1 Support: QR Code generation for invoices
- Phase 2 Support: XML invoice generation and API submission
- UBL 2.1 Compliant: Generates standard-compliant XML invoices
- Digital Signing: Signs invoices with ZATCA certificates
- API Integration: Direct submission to ZATCA clearance/reporting APIs
- Automatic Generation: Generates invoices when orders are processed/completed
- Refund Support: Automatically generates credit notes for refunded orders
- Email Integration: Adds QR codes to WooCommerce emails
- Order Display: Shows ZATCA information on order details pages
- Admin Interface: Complete admin panel for certificate and invoice management
- Certificate Management: CSR generation, certificate storage, and renewal
- Error Handling: Comprehensive error logging and debugging
- REST API: External API endpoints for integration
- AJAX Support: Admin interface with real-time operations
- PDF Integration: QR code embedding in PDF invoices
- Multi-language: Translation-ready with Arabic support
- WordPress: 5.0 or higher
- WooCommerce: 5.0 or higher
- PHP: 7.4 or higher
- MySQL: 5.7 or higher
- SSL Certificate: Required for ZATCA API communication
- ZATCA Account: Valid ZATCA e-invoicing account
📖 Detailed Installation Guide: See INSTALLATION.md for comprehensive installation instructions and troubleshooting.
- WordPress: 5.0 or higher
- WooCommerce: 5.0 or higher
- PHP: 7.4 or higher
- Composer: Required for dependency management (development only)
- SSL Certificate: Required for ZATCA API communication
- ZATCA Account: Valid ZATCA e-invoicing account
- Download the release ZIP from GitHub Releases
- Go to WordPress Admin → Plugins → Add New
- Click "Upload Plugin" and select the ZIP file
- Click "Install Now" and then "Activate Plugin"
- Configure in WooCommerce → ZATCA
Note: The release ZIP includes all dependencies and is ready to use without Composer.
The plugin automatically generates invoices when:
- Order status changes to "Processing"
- Order status changes to "Completed"
- Order status changes to "Refunded" (credit notes)
- Generate Invoice: Create invoice manually from order page
- Submit to ZATCA: Submit pending invoices to ZATCA
- Regenerate QR: Recreate QR codes if needed
- View Status: Check invoice submission status
- Automatic: Generated when order status changes to "Refunded"
- Separate Storage: Credit notes saved in separate database rows
- ZATCA Submission: Automatically submitted if auto-submit is enabled
📖 Detailed Contributing Guide: See CONTRIBUTING.md for comprehensive cONTRIBUTING instructions.
For commercial support and custom development, please contact:
- LinkedIn: husam-almiyah
- Email: Send an Email to [email protected]
Note: This plugin is designed for Saudi Arabian businesses to comply with ZATCA e-invoicing requirements. Ensure you have a valid ZATCA account and understand the compliance requirements before using this plugin in production.