Fast, full-featured and highly scalable email processing platform

Your premium alternative to an open source MTA, supplemented with commercial anti-spam and anti-virus from Cyren and Sophos.

More than a "good enough" platform

Halon is known and highly praised by engineers and sysadmins, and adopted by large operators such as Dutch telco KPN and Danish web hosting provider, as well as government agencies and municipalities. You and your customers deserve more than a "good enough" email platform. Halon is one of the fastest, most scalable messaging platforms available, optimized for large-scale email receiving and sending operations. Read more about the platform.

Get an edge on your competition

If you go for a product with a cheaper price tag, you are missing a big opportunity to get an edge on your competition and advance your own growth. A majority of email servers today are running on traditional legacy software, making you and your customers vulnerable to updates and integrations, while also costing you a ton of man-hours. Read more about how to get an edge your competition.

Streamline your receiving and sending

Halons capabilities are out of proportion to open source and commodity MTA technology. With Halon Scripting Language, the software takes a unique approach to how email can be managed. It will reduce OPEX and CAPEX by streamlining your receiving and sending at every touch point. Increase efficiency, performance and speed, while also increasing choice and flexibility around integration with applications and data sources. Read more about streamlining your infrastructure.

if (!$senderip) {
    SetProtocol("smtp"); // Use SMTP for locally generated DSNs
// Use a more robust lookup like
$route = cache ["ttl" => 3600] http("$apiurl/route", [], [$recipientdomain]);
$route = json_decode($route);
if (!is_array($route))
    Reschedule(3600, ["reason" => "Invalid route", "increment_retry" => false]);
if (GetMetaData()["spam"] == "yes") {
    // Bulk IP
} else {
    // Source hash
    $addrs = ["netaddr:1", "netaddr:2", "netaddr:3"];
    $sourcehash = number("0x".md5($senderdomain)[0:6]);
    SetSourceIP($addrs[$sourcehash % count($addrs)]);
$ptr = cache ["ttl" => 3600] dnsptr($sourceip, ["extended_result" => true]);
if (isset($ptr["result"][0]))
// In the post-delivery script
if ($errorcode >= 400)
    rate("delivery-failures", $senderdomain, 1000, 3600);

// In the MAIL FROM script
if (rate("delivery-failures", $senderdomain, 0, 3600) > 999)
    Defer("$senderdomain has more than 1000 failed deliveries during the last hour");
// Per-domain DKIM signing using external database
function Deliver() {
    // Override the deliver function
    global $apiurl, $senderdomain;
    // Use a more robust lookup like
    $dkim = cache ["ttl" => 86400, "size"=> 32768, "ttl_override" => ["" => 60]]
        http("$apiurl/dkim/$1", ["timeout" => 10], [$senderdomain]);
    $dkim = json_decode($dkim);
    if (is_array($dkim))
        DKIMSign($dkim["selector"], $dkim["domain"], $dkim["rsakey"]);
    builtin Deliver();