Service Add-ons & Extras

Service Add-ons

Service add-ons (also called extras) let buyers customize orders with additional features beyond base packages. Add-ons are stored in the wpssserviceaddons database table and increase average order value.

Add-on Limits

VersionMaximum Add-ons
Free3 add-ons per service
[PRO]Unlimited (filter: wpssservicemax_extras returns -1)

Add-on Field Types

Four field types are supported by ServiceAddonService:

1. Checkbox

Simple yes/no toggle for binary options.

Constant: ServiceAddonService::TYPE_CHECKBOX

Use Cases:

  • Rush delivery
  • Source files
  • Commercial license
  • Priority support

Example:

'field_type' => 'checkbox',
'title' => 'Express Delivery',
'price' => 25.00,
'price_type' => 'flat'

Buyer Interface: Single checkbox ()

2. Quantity

Select number of units with min/max range.

Constant: ServiceAddonService::TYPE_QUANTITY

Use Cases:

  • Extra revisions (1-10)
  • Additional pages
  • Extra hours
  • Product count

Fields:

  • min_quantity – Minimum units (default: 1)
  • max_quantity – Maximum units (default: 10)

Example:

'field_type' => 'quantity',
'title' => 'Additional Revisions',
'price' => 10.00,
'price_type' => 'quantity_based',
'min_quantity' => 1,
'max_quantity' => 5

Buyer Interface: Number input or quantity selector

Price Calculation:

$total = $addon->price * $quantity;
// Example: $10 × 3 revisions = $30

3. Dropdown

Choose one option from a list.

Constant: ServiceAddonService::TYPE_DROPDOWN

Use Cases:

  • Resolution selection (720p, 1080p, 4K)
  • Format choice
  • Delivery speed tiers

Options Structure:

{
  "options": [
    {"label": "HD 720p", "value": "720p", "price": 0},
    {"label": "Full HD 1080p", "value": "1080p", "price": 10},
    {"label": "4K UHD", "value": "4k", "price": 25}
  ]
}

Buyer Interface: