All updates

Coming Soon rewards in the store, and Streak webhooks

Store rewards can be shown as Coming Soon, Custom Webhooks gain a Streak type, completed orders can be archived, and bulk updates can call back when done.

01 ·Coming Soon for store categories and products

An admin can mark a store category or a single product Coming Soon. Traders see the product with a Coming Soon tag and no price. Its page still opens and says the product is not available to purchase yet, and a Coming Soon product cannot be bought. Coming Soon shows ahead of Out of Stock, Purchase Limit Reached and View Only, and access stays at @all, view only, until the status changes.

Each product in a category has a Status source. Follow category takes the category's status, and Custom product sets its own, so one product can be on sale inside a Coming Soon category or the other way round. A Coming Soon product still needs a price, hidden until it goes on sale, and discounts stay off meanwhile. A category cannot go back to Available while a product that follows it lacks a valid price.

Why it matters

A broker can show a reward before it goes on sale, so traders can see what their coins could buy next.

02 ·Streak events as they happen, in Custom Webhooks

Custom Webhooks gain a Streak type that sends one request per event, as it happens. The admin picks which streaks send it, then one or both events. Streak changed fires when a trader earns a streak period or a completed period is revoked. Streak reset fires when the platform resets a streak to zero after a missed period. An admin editing a count fires neither.

The default request body carries the streak, the kind of change and the previous and current count, along with the trader's profile fields, and the admin can edit it. Send Test sends a sample earned, revoked or reset event built from sample values. Delivery History labels each delivery Earned, Revoked or Reset.

Why it matters

A CRM or messaging tool can respond the moment a streak moves, for example to mark a trader's new period or to remind one whose streak has just reset.

03 ·Archive a completed order, with a reason on record

For exceptional cases, an admin can archive a Completed order from its details in Order History. The order leaves the trader's own purchase history and stays in Order History with its details and status, and Unarchive puts it back. Both actions ask for a reason, and the order's Archive History records the action, who took it, when and why. Order History and its CSV export gain an Archived column.

Archiving changes nothing else about the order: it does not change the status, run a workflow, move coins, change stock or send a notification. Only admins with the Order History permission can archive.

Why it matters

An admin can handle an exceptional case without deleting the order: the team keeps the full record, with a reason for every change.

04 ·A callback when a bulk update finishes

Since 29 Sep, the Users Bulk Update step in Data Workflows has a Callback URL option. When the queued job finishes, which can be after the workflow itself has ended, the platform posts the result to the admin's webhook URL. The admin chooses whether it sends on completion, on failure or both, and whether it includes a summary (processed, successful, failed and skipped rows), error details and a link to the results CSV.

A workflow's failure webhook reports a failed run; this callback reports the bulk update job's own result, on success as well as failure. Every callback carries the job ID and final status, and a completed job can still contain rejected rows. The platform makes up to five delivery attempts, and a failed callback never changes the update itself. The option is off by default, so existing workflows run as before.

Why it matters

The broker's own system hears when a bulk update is done and which rows failed, so it does not have to keep asking the API for the job's details.

Also in this build
Improvement

With unsaved changes in Store Settings, switching product, category or tab keeps the admin in place and asks for a save first, as Milestones already does.

28 Sep
Improvement

The API call that reads channel messages returns the latest messages across all channels when called with no filters, and an unknown channel ID returns a Channel not found error.

28 Sep
Fix

On leaderboards, clicking the position strip jumps to the trader's own row on the first click, even before that row has loaded.

28 Sep