Skip to main content

Integration boundary

Digital Products Plugin Architecture Diagram Core installs plugins.digitalproducts and mounts its URLs at /digitalproducts/. Plugin metadata declares Payment as a required dependency. Digital Products delegates cart, checkout, order, and payment processing to Payment Plugin.

Models

  • DigitalProduct: business-owned product metadata, localized price, active state, fulfillment mode, external link/passcode, or uploaded file.
  • DigitalProductSettings: per-business purchase-notification toggle and optional recipient.
  • DigitalProductPurchaseNotification: one delivery record per order for deduplication and auditing.

Fulfillment

Link products return their stored external URL and optional passcode. File products create a signed token containing the order, product, and customer IDs. The download views validate that token and its age before serving the configured file. The default maximum age is 86,400 seconds.

Routes

  • /digitalproducts/digitalproducts/: staff product management.
  • /digitalproducts/digitalproducts_edit/<id> and /digitalproducts/digitalproducts_delete: edit and delete operations.
  • /digitalproducts/checkout/<id>: public product checkout.
  • /digitalproducts/download/<id>/<token>/: validate a signed entitlement.
  • /digitalproducts/download/<id>/<token>/file/: serve an authorized uploaded file.