A 45-second test for MagnusBilling providers

    Your customer does not care if Asterisk, AGI, MySQL or the datacenter failed. He only knows the call did not complete.

    Most providers do not wake up planning to buy high availability. They buy it after the first serious outage, after the first traffic spike, or after a customer proves the platform became more important than the architecture behind it.

    If your MagnusBilling already makes money, the real question is not "Do I need the C Application?". The real question is "Can I afford to wait until I need it urgently?"

    Mark what is true in your operation

    This is not a technical quiz. It is a business risk check. If several statements are true, your customer base has already outgrown a single-server call path.

    One Asterisk server still handles most of my production calls.If that server is busy, unstable or offline, the business feels it immediately.
    How the C Application architecture solves this:

    SIP Proxy receives the call first and sends it to weighted slave Asterisk servers, so production traffic is not tied to one machine. You can add new slaves when traffic grows or set a slave weight to 0 to remove it from production without changing the customer proxy address.

    If my main Asterisk fails, calls do not automatically continue on another server.A backup that depends on manual action is recovery, not high availability.
    How the C Application architecture solves this:

    SIP Proxy dispatcher can send traffic to another available slave when one slave is down or overloaded. This also lets you remove a slave temporarily by setting weight to 0 for maintenance, troubleshooting or capacity control.

    Every call still depends on AGI execution.AGI is useful, but at scale every extra process and delay becomes part of your capacity limit.
    How the C Application architecture solves this:

    app_mbilling runs as a native C application inside Asterisk, reducing AGI overhead in the live call path. Because the slave role is lighter, many deployments can use modest hardware such as 2 CPU cores and 4 GB RAM.

    My slaves need the master database online to keep processing calls.This is simple, but it can turn the master DB into the point that stops everything.
    How the C Application architecture solves this:

    A slave can read replicated local tables for call authorization, while CDR import updates the master when connectivity returns.

    I have customers who would complain after a few minutes without calls.When customers depend on your platform, downtime becomes a commercial problem, not only a technical one.
    How the C Application architecture solves this:

    Proxy plus slave capacity reduces the chance that one server incident becomes a customer-visible outage. It also lets you prepare capacity before the next large customer arrives.

    I want to use more than one datacenter, region or group of servers.That requires traffic distribution, weights, and a clean way to assign proxies to slaves.
    How the C Application architecture solves this:

    Each proxy can be assigned to specific slave groups, making it easier to separate regions, datacenters or customer traffic. You can dedicate slaves to a high-traffic callcenter and keep it separated from common customers.

    I want one MagnusBilling panel, but many call-processing servers.Centralized billing with distributed Asterisk processing is exactly where the C Application fits.
    How the C Application architecture solves this:

    MagnusBilling remains the master panel while app_mbilling on slaves handles the call processing locally. You can keep one central panel while adding or removing call-processing servers as needed.

    A bad hour of traffic would cost more than USD 40.The license is small compared to the cost of a serious interruption.
    How the C Application architecture solves this:

    At USD 40 per server, the app is cheaper than accepting repeated interruption risk for paid traffic. The lower hardware requirement also helps you scale with more small slaves instead of one expensive server.

    The moment this becomes obvious is usually too late

    Customers do not ask how elegant your architecture is. They ask why calls failed, why balance was not updated, why failover was manual, and why you did not prepare before selling them production traffic.

    BeforeYou think one server is enough because yesterday was normal.
    DuringCalls fail, support messages arrive, and every minute feels longer.
    AfterYou finally search for the architecture you could have installed earlier.

    What changes with the C Application

    Without it

    • AGI remains in the live call path for every decision.
    • Scaling often means bigger servers, not a better architecture.
    • Failover depends on manual work or improvised scripts.
    • The master database can become the dependency that stops slaves.
    • Adding more Asterisk servers increases operational complexity.

    With it

    • Call processing runs inside Asterisk through a native C module.
    • SIP Proxy can distribute calls to slave servers using weights.
    • Specific proxies can use specific groups of slaves.
    • Slaves can read local replicated tables when that model is preferred.
    • MagnusBilling remains the central panel while calls are processed across servers.

    Operational advantages you feel after installation

    The C Application is not only about surviving a failure. It changes how you operate, scale and troubleshoot MagnusBilling every day.

    Add or remove slaves whenever you need

    With SIP Proxy and weighted slaves, you can add capacity when new customers arrive or traffic grows. You can also remove a slave from production by setting its weight to 0, without changing the customer-facing proxy address.

    Always ready for the next customer

    Instead of waiting for one server to reach the limit, you keep the architecture ready. New slave servers can be prepared and added to the proxy pool as the business grows.

    Lower hardware cost

    Because call processing runs in native C and the slave role is lighter, many deployments can use small slave servers. A 2-core CPU with 4 GB RAM can be enough for a slave server in this architecture.

    Easier troubleshooting

    When one customer has a difficult issue, you can stop sending normal traffic to a slave by setting weight to 0, point only that customer to the slave, and analyze calls without noise from all other clients.

    Dedicated slaves for special customers

    A high-traffic callcenter does not need to share the same call-processing servers used by common customers. You can isolate that customer on specific slaves and keep the rest of the platform cleaner.

    Cleaner operations with one panel

    You keep MagnusBilling centralized while the actual call processing is distributed. This gives you more control without turning every new Asterisk server into a separate billing system.

    Common reasons people delay, and the honest answer

    "My server is working fine today."That is the best time to install. High availability is much cheaper before an emergency.
    "I do not have huge traffic yet."You do not need huge traffic to lose customers. You only need enough customers who expect calls to work.
    "I already have backups."Backups help you recover after failure. Proxy and slave architecture helps calls continue during failure.
    "I can wait."You can. But if the test above described your operation, waiting means accepting the risk instead of reducing it.
    Clear commercial terms The C Application license costs USD 40 per month per server. The monthly payment is only for using the application and does not include support, troubleshooting, training, custom assistance, emergency help or operational guidance. Installation/configuration requires SSH root access. Support requires a separate commercial support contract and is not offered partially or on demand without that contract.

    Information and conditions before you buy

    The first part of this page helps you understand why you need the C Application. This part explains exactly what you are buying, how the architecture works, and the commercial conditions.

    What the license includes

    The monthly payment is for the right to use the MagnusBilling C Application on each server where it is installed. The price is USD 40 per month, per server.

    Installation and SSH access

    Installation/configuration of the C Application requires SSH root access to the server because the native Asterisk module must be installed and compiled in the Asterisk environment.

    Support is not included

    The monthly C Application payment does not include support, troubleshooting, training, custom work, emergency help or operational assistance. Support requires a separate commercial support contract.

    No partial support without contract

    Support is not provided partially, casually, or on demand without the proper commercial support contract. There are no exceptions.

    One task at a time for support customers

    If you have commercial support, requests must be clear and specific. Ask one task or topic at a time so the support can be handled efficiently.

    MagnusBilling remains open source

    MagnusBilling is open source. The monthly payment is not for MagnusBilling itself; it is exclusively for using the C Application addon.

    Database and CDR architecture options

    Slaves connected directly to the master database

    This model is simpler and balances are updated immediately, but it is recommended mainly when servers are in the same datacenter or have very stable connectivity. If the master database is offline, slaves can stop processing calls.

    Slaves with a local replicated database

    This model lets slaves keep reading local data and continue processing calls when the master is temporarily unavailable. It is useful for different datacenters, regions or countries.

    CDR import and balance update

    The C Application call path is read-oriented. CDRs are imported later on the master, and the balance is discounted when those CDRs are processed.

    Important prepaid-credit risk

    If slaves use a local database and the master stays offline for too long, calls may continue while CDRs are waiting to be imported. When the master returns, balances are updated and prepaid customers can become negative.

    Proxy, slaves and scaling rules

    Weighted distribution

    SIP Proxy can distribute calls to slaves using weight. Stronger servers can receive more calls, smaller servers can receive less.

    Add or remove slaves at any moment

    You can prepare new slaves and add them to the proxy pool as traffic grows. You can also set a slave weight to 0 to stop sending normal traffic to that slave without changing the customer's proxy address.

    Multiple proxies with specific slaves

    A proxy can be configured to use specific slaves. This allows separated structures while still keeping one centralized MagnusBilling panel.

    Dedicated slaves for special customers

    High-traffic customers, such as callcenters, can be isolated on dedicated slaves instead of being mixed with common customers.

    Problem analysis with weight 0

    For troubleshooting, set a slave weight to 0, send only the affected customer to that slave, and analyze calls without noise from other clients.

    Lower hardware requirement

    Because app_mbilling is native C and the slave role is lighter, many slave servers can run with modest hardware, such as 2 CPU cores and 4 GB RAM.

    If you marked 3 or more risks, this is not a future upgrade. It is your next infrastructure step.

    You do not buy the C Application because it is written in C. You buy it because your MagnusBilling is already important enough that calls should not depend on one fragile path.

    C Application for Asterisk


    USD 40,00   Buy Now
    © 2026 Your Company. All Rights Reserved.