System Architecture

Platform Intelligence

The PDF Smart system utilizes a high-performance "Triple-Engine" routing architecture to simultaneously generate Thermal, A4, and structured Peppol XML documents with mathematical precision.

Deployment Requirements

Upload the plugin to your /wp-content/plugins/ directory and activate it. You must have WooCommerce 10.4.3+ and PHP 7.4+ for full high-performance storage compliance.

Native Core Synchronization

Stop manually typing business addresses. Our native synchronization engine pulls your identity directly from the WooCommerce core via secure hooks.

Navigate directly to WooCommerce > Settings > PDF Smart Receipts in your admin panel.

Locate and execute the "Sync from WooCommerce" protocol in the Unified Customization section.

This operation instantly populates your Store Name, Address, and Contact Email utilizing a hardened `ogpsr_sync_nonce` gateway.

Render Engines

PDF Smart Receipts utilizes three distinct rendering systems, each mathematically optimized for specific hardware outputs.

Thermal Pos System

Hardware-optimized for 58mm and 80mm continuous thermal extruders. Features proprietary "Cut-Line" logical spacing that prevents auto-cutters from destroying printed terms or footers.

A4 Corporate B2B

Standardized A4 matrix. Includes enforced PO Numbers, dynamic BACS wiring blocks, and automated SKU/EAN/GTIN visual identifiers.

Fulfillment Slips

Zero-price logistics documents. Hooked directly into the "Processing" stage of WooCommerce to instantly route to warehouse queue.

Thermal Physics

Roll printers require exact whitespace offsets.

The Auto-Cut Logic

We inject a non-rendering boundary layer after the "Thank You" hook. This commands the thermal printer driver to feed exactly 15mm of blank tape before triggering the internal guillotine, saving a perfect edge.

Enforces 58mm / 80mm width exactly Demands high-contrast Mono JPGs

Peppol UBL Matrix

Our syntax engine translates native WooCommerce tax logics directly into globally validated UBL 2.1 schemas.

WooCommerce Tax Peppol Map Exemption Node
Standard Rate Standard (S) None
Strict Compliance Nodes
EU Exempt Exempt (E) VATEX-EU-F
Reverse Charge Reverse (AE) VATEX-EU-AE

Identity Schemes

You must supply a legally valid EAS Scheme ID (e.g. 0088 for GLN or 0184 for DK CVR). The XML compiler will reject the payload if the node is empty.

Filesystem Fortress

PDF Smart avoids database blob storage, instead writing securely directly to the OS filesystem under strict WordPress permission mapping.

Hardened Directories

Rendered artifacts are locked inside wp-content/uploads/thermal-receipts/. The compiler injects a hardened .htaccess and terminating index.php to utterly block direct HTTP scraping operations.

HPOS Native

Zero table-locking. Built natively for High-Performance Order Storage (WooCommerce 8.0+).

Auto-Scrubbing

The ogpsr_daily_cleanup_event cron job permanently purges artifacts every 24 hours.

System Hooks

Extend the native C-bindings and payload generation using our documented filter loops.

Pipeline Intercepts

// Inject custom fields into the rendering payload add_filter('pdf_smart_invoice_meta', function($meta, $order_id) { $meta['drone_route'] = get_post_meta($order_id, '_drone_gps_data', true); return $meta; }, 10, 2);

Init Callbacks

// Fire custom code when OS mounts add_action('ogpsr_fs_loaded', function() { sys_log("Engine Online."); });

Troubleshooting Matrix

Diagnostics for common hardware misalignments.

Blurry Output / Fragmented Logo

Printers decode visual data blindly. You must supply a mathematically strict 200x80px JPG or PNG (transparent). Do not upload 4K imagery and expect the PHP GD library to downscale it without interpolation blurring.

Silent Attachment Failure

Are customers missing documents? Ensure you explicitly ticked the triggers in the "Attach to Emails" settings matrix (such as "Completed Order"). WooCommerce will not attach external payloads unless authorized.

Address Force-Refresh

If a customer alters their address post-purchase, navigate to the Order Edit UI. Locate the Regenerate hook within the sidebar. Clicking it drops the cached PDF and immediately sequences a new file off the live database vectors.