Promotions

  • INTERVENTION PLUS - Complete Management of Interventions

    The “Intervention Plus” module is a revolutionary tool that simplifies and optimizes intervention management, from planning to invoicing. Designed for sales and technical teams, it offers a complete suite of features to ensure transparent and efficient monitoring of each intervention.

    250.00 €  (500€)
  • CRM 360

    This module provides a comprehensive overview of customer interactions and data, centralizing all relevant information in one place.

    175.00 €  (350€)

New products

  • Beauty Center Management – Complete Beauty Salon Platform for Dolibarr

    Turn Dolibarr into a complete beauty salon platform: dashboard, clients and prospects, beauty CRM pipeline, treatments, appointments and agenda, treatment records, staff and leave, cabins, equipment and maintenance, cosmetic products and stock, sales, till, packages, gift cards, loyalty, reviews, marketing, notifications, automations, purchases, expenses, client portal and reporting.

    299.00 €
  • ServerMonitor — Technical monitoring inside Dolibarr

    Monitor server health, resources, disk usage and latency from the Dolibarr home dashboard, with fully configurable visibility.

    6.00 €

Dolishortener, URL shortener

mp1246d20260813135434

Shrink URLs from any Dolibarr module with one line of code. DoliShortener plugs into Bitly, TinyURL or is.gd — perfect for SMS invites, push notifications and printed documents. Per-entity connector config, full usage registry, and silent fallback: a shortener outage never breaks your calling module.

10.00 €
Excl. tax

  • Author Massaoud Bouzenad
  • Module version 1.0.0
  • Release date 08/13/2026
  • Access to download and updates 1 year
  • How to contact support support@dzprod.net
  • Compatibility Dolibarr V17 - V24   -   PHP>= 7.4
  • Last update 09/14/2026 10:16 AM

More info...

DoliShortener

The universal URL shortener API for Dolibarr modules

One shortenIt() call. Any connector. Zero broken links.

Every Dolibarr module that needs to send a link through a constrained channel — SMS, push notification, printed document — ends up reinventing the same shortening logic: pick a service, manage an API key, handle outages. DoliShortener centralizes that brick once: a single abstraction class, interchangeable connectors configured once by the admin, and a usage registry to audit everything.

🔌 One class, three connectors

Call DoliShortener::shortenIt($url) from any module — DoliShortener resolves the entity's active connector (Bitly, TinyURL or is.gd) and returns a short URL. Your module never needs to know which service is behind it.

  • ✅ is.gd works out of the box — no API key needed
  • ✅ Bitly and TinyURL supported via access token
  • ✅ Force a specific connector per call if needed

🛡️ Never breaks your calling module

If the active connector is down, over quota, or misconfigured, shortenIt() never throws — it silently falls back to the original long URL and logs the failure. An SMS invite never fails because of a Bitly outage.

  • ✅ Silent fallback to the original URL on any connector failure
  • ✅ Configurable HTTP timeout to protect your module's latency
  • ✅ Every attempt — success or failure — logged for diagnosis

📋 Full usage registry

Every shortened link is recorded — long URL, short URL, connector used, calling module, date, author — filterable by module and connector. Audit which module is generating traffic, and diagnose a connector issue in seconds.

  • ✅ Filterable, paginated registry screen
  • ✅ Success/failure status per entry
  • ✅ Manual "Shorten now" admin tab, logged the same way

Key features

🏢 Per-entity configuration

Each Dolibarr entity configures its own connectors, API keys and default connector — built for multi-company setups with distinct Bitly/TinyURL accounts per company.

🔐 Encrypted API keys

API keys and secrets are stored encrypted via Dolibarr's native dol_encrypt() — never in clear text.

🧪 Test connection button

Validate a connector configuration directly from the admin screen before relying on it.

👨 💻 Built for developers

A documented, stable shortenIt() contract (see doc/API.md) so third-party modules can integrate with an optional, non-breaking dependency.

How it works

  1. Install and activate DoliShortener.
  2. Enable one or more connectors in Setup — is.gd needs no configuration, Bitly and TinyURL need an API key. Choose your default connector.
  3. From any module, call DoliShortener::shortenIt($long_url, ['caller_module' => 'yourmodule']) — or use the Shorten now admin tab for a one-off manual link.
  4. Review usage anytime in the Links registry tab.

Try it

DoliShortener is a developer-facing API module with no dedicated business-document UI in v1.0 — the best way to try it is to install it on a test instance, enable the free is.gd connector (no API key required), and call shortenIt() from the Shorten now admin tab.

Support

DoliShortener is available on the Dolistore for a symbolic €10 — occasionally offered free with other DZProd modules (e.g. bundled with DoliSMS) or during promotions. For integration help, custom connectors, or priority support: onboarding at 90€/h, custom development on quote.

📧 products@dzprod.net

Changelog

v1.0.0

  •  Initial release
  •  shortenIt() abstraction class with Bitly, TinyURL and is.gd connectors
  •  Per-entity connector configuration with encrypted API keys
  •  Usage registry with filters (module, connector, status)
  •  Manual "Shorten now" admin tab

Questions? 📧 support@dzprod.net

DoliShortener is actively maintained with regular updates.




If you think this module is a fork of another one (published after the first one) or violates some terms or conditions of use (for users or vendors), you can make a report at dolistore@dolibarr.org