The Tarana add-on connects Splynx to TCS (Tarana Cloud Suite) — the cloud console of a Tarana Wireless network — and keeps your subscribers' radios in line with billing. When you connect a customer, change their plan, block them for non-payment or deactivate them, Splynx applies the matching speed profile and data VLAN to the customer's Tarana radio automatically, so nobody has to repeat the change by hand in TCS.
Tarana Wireless makes fixed wireless access equipment:
In a Tarana network, the subscriber's speed is set on the radio: each RN carries an SLA profile (a named download/upload speed template defined in TCS) and a Data VLAN (the VLAN that carries the subscriber's traffic).
For every radio, the add-on answers two questions: what to apply and where to apply it.
Internet tariff plan ──linked to──► SLA profile (+ Data VLAN) WHAT is applied
(Tarana SLA profiles page)
Customer ──► Inventory item ──linked to──► Tarana radio (RN) WHERE it is applied
(assigned to the customer) (Tarana devices page)
The profile a radio receives depends on the customer status:
| Customer status | SLA profile applied to the customer's radios |
|---|---|
| Active | The SLA profile (and Data VLAN) of the tariff plan of the customer's active internet service |
| Blocked | The Delinquent SLA profile from the add-on settings |
| Inactive | The Decommission SLA profile from the add-on settings |
| New | Nothing until the customer becomes Active (linking a radio still sets its host name) |
Before every change, the add-on reads the radio's current configuration from TCS and sends only the values that differ. If the radio already has the right configuration, nothing is written to it.
The add-on can be installed in two ways: through the Splynx Web UI or from the command line on the Splynx server.
To install the add-on from the Web UI, navigate to Config → Integrations → Add-ons, and click the Install icon in the Actions column next to splynx-tarana:

Confirm the installation by clicking Ok, confirm:

To install the add-on via CLI on the Splynx server:
apt-get update
apt-get install splynx-tarana
After installation, the add-on appears in Config → Integrations → Modules list:

The installation also adds the following to your system:
| What | Where |
|---|---|
| Tarana SLA profiles and Tarana devices pages | Config → Networking |
| Tarana logs page | Administration → Logs |
Tarana device field with a View / Set button |
The edit form of an inventory item |
Five hooks whose titles start with Tarana: |
Config → Integrations → Hooks |
| An API key named Splynx Tarana Integration | Administration → Main → API keys |
| A notification banner for failed background jobs | Dashboard |
| A nightly reconciliation job (switched off by default) | Runs daily at 02:00 on the Splynx server |
The hooks deliver billing events to the add-on — keep them enabled:

The add-on works through its own API key: it reads administrators, customers, internet services and internet tariff plans, and reads and updates inventory items. Do not delete the Splynx Tarana Integration key or reduce its permissions.
Save.Load SLA profiles. If the profiles appear, the connection to TCS works.Link tariffs).Export devices to import your radios.To open the settings, go to Config → Integrations → Modules list and click the Edit icon in the Actions column of the splynx_tarana row. The settings are in the Addon settings section:

TCS connection
https://api.tcs.taranawireless.com is correct for most installations. Only an http:// or https:// address is accepted.Until both fields are filled in, the add-on pages show a yellow warning, and their Load SLA profiles and Export devices buttons are inactive.
Equipment link
{customer_login}-RN. Supported placeholders: {customer_login}, {customer_id}, {customer_name}. A number is always appended, so the first radio of customer john_doe is named john_doe-RN1. Leave the field empty if Splynx should not change host names (see Host names).Subscriber status
In the SLA profile fields, enter the profile Name as it is shown on the Tarana SLA profiles page, for example Min SLA. A profile can be saved only after it has been loaded with Load SLA profiles — otherwise the error Invalid value for Delinquent SLA profile is shown. So load the profiles first, then fill in these fields.

Webhook receiver — see Receiving alerts from TCS.
Bulk reconciliation — see Nightly reconciliation.
Click Save to apply the settings.
Config → Networking → Tarana SLA profiles lists the SLA profiles of your Tarana tenant and the tariff plans linked to each of them:


The table shows the columns Name, DL (Mbps), UL (Mbps), Custom, Usage (the number of radios using the profile in TCS), Data VLAN, Linked tariffs, Stale and Actions. Built-in TCS profiles (Min SLA, SLA 5M … SLA 1000M, Max SLA) show no speeds; custom profiles from ADMIN → Custom SLA in TCS show their download and upload speed and Custom = Yes. A Stale badge marks a profile that no longer exists in TCS.
Click Load SLA profiles to read the profiles from TCS. Profiles are matched by name: new ones are added and known ones are updated. A profile that disappeared from TCS is removed unless tariff plans are linked to it — then it is kept as Stale so that your links are not lost, and it cannot be applied to radios until it appears in TCS again. A stale profile can be deleted with the Delete icon in the Actions column. Loading never changes your tariff links or Data VLANs.
If TCS returns no profiles at all while Splynx already has profiles, nothing is changed and an error message is shown.
Automatic linking by speed. On every load, a tariff plan that is not linked yet is linked automatically when exactly one profile has the same download and upload speed (for example, a plan with 100000/20000 kbps and a profile with 100/20 Mbps). Built-in profiles have no speeds, so link them by hand.
TCS cannot rename a profile: if you delete a profile and create it under another name, the tariff plans stay on the old, now stale profile until you link them to the new one.
Click the Link tariffs icon in the Actions column of a profile:

Save replaces the whole list of the profile.0 resets it to the Tarana default; 1–4091 sets that VLAN.Changes on this page do not reach radios immediately — only with the next event of the customer (status, service or equipment change) or with the nightly reconciliation when correction is on.
Config → Networking → Tarana devices lists the radios of your Tarana tenant and the inventory items they are linked to:


The table shows the columns Serial, Type (RN or BN), Host name, SLA profile, Data VLAN, Connected, Connected BN, Linked item (the barcode of the linked inventory item and the customer ID), Last refreshed and Actions. On narrow screens, the last columns are shown in an expandable row — click the arrow next to the serial.
Note that the SLA profile column shows the TCS identifier of the profile (for example sla-200 for the built-in SLA 200M), and Data VLAN 0 (default) is the Tarana default VLAN.
| Action | What it does | Changes the radio? |
|---|---|---|
Export devices |
Imports the radio list from TCS: adds new radios and removes the ones that disappeared. Data of radios already in the list is not overwritten. A new radio whose serial equals the barcode of a free inventory item is linked to it automatically | No |
| View | Shows the radio details: identity, topology, location, status, service settings and link | No |
| Link inventory item | Links the radio to an inventory item, found by its barcode | Yes, if the item belongs to a customer — see What Splynx sends to TCS |
| Unlink inventory item | Removes the link | No — the radio keeps its host name, SLA profile and VLAN |
| Refresh from Tarana | Reads this one radio from TCS again and updates its row | No |
| Delete | Removes an unlinked radio from the Splynx list; it returns with the next export. A linked radio has no Delete icon — unlink it first | No |
Export or Refresh? Export devices adds and removes radios but does not update the radios already in the list. If a radio was changed directly in TCS, click Refresh from Tarana on its row (or enable the nightly reconciliation, which refreshes all radios). Changes sent by Splynx itself appear in the table automatically.
If TCS returns an empty radio list while Splynx already has radios, the export changes nothing and shows an error message, so a temporary TCS problem cannot remove your radios or their links.
Badges
View shows the radio details as reported by TCS:

Link inventory item — find the item by its barcode and click Link. Items already linked to another radio are not offered:

A radio is linked to a customer through an inventory item: automatically by barcode, with Link inventory item on the Tarana devices page, or from the inventory item itself.
Enter the radio serial number as the item barcode — when you add the item to inventory, or later by editing it. Splynx links the radio to the item by itself (letter case does not matter; it may take up to a minute). If the item already belongs to a customer, the radio is configured for that customer right away.
This is the recommended workflow: register radios in inventory with the serial as the barcode, and the radios link themselves.
Open Inventory → Items, open the item's Actions and click Edit. Click View / Set next to the Tarana device field:

Select a free radio and click Link:

For an item that already has a radio, the field shows its serial; to unlink it, use the Tarana devices page. The field is available only when editing an existing item, not in the add item form.
When a radio is linked to a customer, it gets a host name built from Host name template. The number counts the customer's radios — john_doe-RN1, john_doe-RN2 — and re-linking the same radio to the same customer keeps it.
., _ and - are removed (John Doe → JohnDoe).Changes are sent in the background a few seconds after you save in Splynx; they never block or undo the billing action.
| Event in Splynx | What is applied | To which radios |
|---|---|---|
An internet service is created or edited — including Change plan — and is Active, for an Active customer |
SLA profile and Data VLAN of that service's tariff plan | All radios of the customer |
| The customer becomes Blocked | Delinquent SLA profile (and its Data VLAN) | All radios of the customer |
| The customer becomes Inactive | Decommission SLA profile | All radios of the customer |
| The customer becomes Active again | SLA profile and Data VLAN of the customer's tariff plan | All radios of the customer |
| The last active internet service of an Active customer is deleted | Service deletion SLA profile (if Apply an enforcement SLA on service deletion is on) | All radios of the customer |
| An inventory item with a linked radio is assigned to a customer (assign, rent, sale), or a radio is linked to such an item | Host name, plus the profile the customer's status calls for (host name only for a New customer) | That radio only |
| Nightly reconciliation with correction on | The expected profile and VLAN | Radios found out of line |
If a customer has several active internet services, the oldest one whose plan is linked to an SLA profile decides which profile is applied.
Nothing is sent for: loading SLA profiles, linking tariff plans or changing a Data VLAN, saving the add-on settings, unlinking or deleting a radio, exporting devices, returning an item to stock, services of a customer in status New, and services that are not active yet (for example, created as Pending). Also:
When TCS is unavailable, Splynx retries the change automatically for about an hour. Changes TCS refuses (for example, because of a wrong API key) and changes made with Link are not retried — see Troubleshooting. Every change and its result is recorded in Tarana logs.
To see what a radio carries in TCS, open Devices → Device List, select the radio and open the Configuration tab. The Network Configuration block shows its Hostname, SLA Profile and Data VLANю
Connecting a new subscriber
The order of steps 2 and 3 does not matter: whichever comes last applies the host name, SLA profile and VLAN.
Changing a plan — use Change plan (effective now) or edit the service. The SLA profile of the new plan is applied.
Blocking for non-payment and restoring — when the customer becomes Blocked, the Delinquent SLA profile is applied (for example, Min SLA). When the customer becomes Active again, the plan's profile is restored.
Disconnecting a subscriber — set the customer to Inactive: the Decommission SLA profile is applied. Returning the equipment to stock does not change the radio, so deactivate the customer first.
Replacing a radio — unlink the old radio (it keeps its configuration) and link the new radio to the customer's item, or register the new radio with its serial as the barcode and assign it to the customer. The new radio gets the host name and the plan's profile.
Moving equipment to another customer — return the item to stock, then assign it to the new customer. The radio is renamed after the new customer and gets their plan's profile.
The nightly reconciliation runs every day at 02:00 and is switched off by default. It reads all radios from TCS, refreshes their data on the Tarana devices page and compares the SLA profile and Data VLAN of every linked radio with what billing expects for its customer. Host names are not compared.
Configure it in the Bulk reconciliation block of the add-on settings:
| Run the bulk reconciliation cron | Correct the drift the run finds | Only report what the correction would push | Result |
|---|---|---|---|
| Off | — | — | The run is skipped |
| On | Off | — | Radios out of line are reported in Tarana logs; nothing is changed in TCS |
| On | On | On | The log shows what would be sent to each radio; nothing is changed in TCS |
| On | On | Off | The expected SLA profile and VLAN are applied to the radios out of line |
Start with correction off, check what the run reports in Tarana logs, and switch correction on once the results look right.
If the last run failed or found radios out of line, the Dashboard shows a notification until the next clean run. Switching the reconciliation off does not remove the notification:

To run the reconciliation now instead of waiting for the night, run on the Splynx server:
sudo -u splynx /var/www/splynx/addons/splynx-tarana/yii cron/reconcile
TCS can send its alerts (for example, a disconnected radio) to Splynx. The add-on records each alert in Tarana logs against the radio it concerns — nothing else in Splynx changes. This step is optional.
The webhook address is https://<your-splynx-domain>/splynx-tarana/webhook. To check that it is reachable from outside, open https://<your-splynx-domain>/splynx-tarana/webhook/health — it answers {"status":"ok"}.
Save. Optionally, list the TCS addresses in Allowed source addresses; if Splynx is behind a reverse proxy or CDN, list the proxy's address.Add New Webhook. Enter a Webhook Name and the webhook address, enable Use custom secret key and enter the same secret as in Splynx. TCS saves the webhook only if Splynx accepts its test request.
Add New Alert. Select the Alert Type, Alert Name, Device Type and Alert Scope, keep Notification Format set to Default, tick Receive Webhook Notifications, select the webhook from step 2 and save. Create one configuration for every alert type you want to receive.
A webhook on its own delivers nothing — TCS sends alerts only through an alert configuration. The Custom notification format is not supported.
Received alerts appear in Tarana logs as Alert "<name>" RAISED for <serial>. (or CLEARED). If the webhook receiver fails to process a delivery, the Dashboard shows the notification The webhook receiver failed to process its last delivery. until the next accepted delivery.
Administration → Logs → Tarana logs records everything the add-on does: actions on its pages, changes sent to radios, billing events, the nightly reconciliation and incoming alerts. Records are kept for six months.


Customer is not active, nothing pushed.).
API keys and secrets are never written to the log.
Load SLA profiles, Export devices, Data VLAN changes and Tarana logs are available only to administrators who are not assigned to a partner.| Symptom | Cause and solution |
|---|---|
Yellow warning Set the TCS API host and key in the addon configuration …, buttons inactive |
Fill in TCS API host and TCS API key in the add-on settings |
Invalid API Key. or TCS auth failed. Check the API key. |
The API key is wrong or revoked — enter a valid key |
Tarana request failed: cURL error … |
Splynx cannot reach TCS API host — check the address and the server's outgoing connection |
Invalid value for Delinquent SLA profile when saving the settings |
Load the SLA profiles first and enter the profile Name as shown on Tarana SLA profiles |
| A radio did not change after a billing action | Check Tarana logs: is the radio linked to an item of this customer, is the plan linked to a non-stale SLA profile, are the customer and the service Active? |
| A change failed and you have fixed the cause (for example, the API key) | A refused change is not resent automatically. Unlink the radio and link it again to resend it, or let the nightly reconciliation with correction restore the SLA profile and VLAN |
Device linked, but it could not be provisioned. See the add-on log. |
The link is saved but TCS was not updated — see the Failed row in Tarana logs, fix the cause, then unlink and link the radio again |
Delinquent SLA profile "…" is not a loaded TCS profile, nothing pushed. |
The profile in the settings no longer exists in TCS — choose another profile in the settings |
| Host name on Tarana devices differs from TCS | The radio was changed directly in TCS — click Refresh from Tarana |
| A radio shows the Barcode badge | The item's barcode no longer matches the radio serial — correct the barcode or re-link the radio |
| A radio shows Stale | The radio is no longer in TCS. If it was replaced, unlink it and link the new radio |
Dashboard: A scheduled job of the add-on failed on its last run. |
Open Tarana logs, search for type cron and see what the last nightly run reported |
Dashboard: The webhook receiver failed to process its last delivery. |
See the last Failed webhook row in Tarana logs; most often the alert configuration uses the Custom format |
TCS shows Test Webhook Failed, or the log shows Signature verification failed. / Source address is not allowed. |
Check that the secret in TCS matches Webhook shared secret, and that Allowed source addresses includes the address Splynx sees |