Pricing & Credits
The ATS Widget is a B2B product. Usage requires an active subscription and incurs per-registration fees.
Subscription
Section titled “Subscription”Access to the ATS Widget requires an active subscription with the Allfeat team. The subscription covers widget access, API usage, and support. Contact the Allfeat team for subscription details and pricing.
Per-Registration Fees
Section titled “Per-Registration Fees”Every blockchain operation has three fee components:
| Fee | Description |
|---|---|
| Network fee | The blockchain transaction cost. Estimated via a dry-run simulation before the actual submission. |
| Deposit | On-chain storage deposit required by the Allfeat blockchain. Includes a base deposit (for new works) or a version deposit (for version updates). |
| Service fee | Allfeat platform fee, calculated as a percentage (basis points) of the transaction cost. |
The total price displayed in the widget is the sum of all three:
total_price = network_fee + deposit + service_feeHow It Works
Section titled “How It Works”The pricing is calculated during the prepare phase of the registration flow:
- The user fills the form and submits
- The widget calls
POST /v1/works/prepare(or/versions/prepare) - The API performs a dry-run simulation of the blockchain transaction
- The response includes the exact pricing breakdown:
network_fee_credits— estimated blockchain transaction costtotal_deposit_credits— on-chain storage depositservice_fee_credits— platform service feetotal_price_credits— sum of all fees
- The widget proceeds to confirmation and deducts credits automatically
Credit Balance
Section titled “Credit Balance”Checking Your Balance
Section titled “Checking Your Balance”Monitor your credit balance in the Allfeat Dashboard.
Insufficient Credits
Section titled “Insufficient Credits”If your organization’s credit balance is too low:
- Session creation (
POST /v1/sessions) will fail — preventing any widget operation - Your backend will receive an error response when trying to obtain a token
Handle this gracefully in your backend:
const response = await fetch('https://ats.api.allfeat.org/v1/sessions', { method: 'POST', headers: { 'Content-Type': 'application/json', 'Origin': 'https://yoursite.com' // domain where the widget is embedded }, body: JSON.stringify({ secret_key: process.env.ALLFEAT_SECRET_KEY, action_type: 'register', allowed_network: 'testnet', }),});
if (!response.ok) { const error = await response.json(); // Handle insufficient credits or other errors return res.status(response.status).json({ error: 'Unable to start registration. Please try again later.', });}Topping Up
Section titled “Topping Up”Credits can be purchased and managed through the Allfeat Dashboard.
Pricing Differences by Operation
Section titled “Pricing Differences by Operation”| Operation | Fees Included |
|---|---|
| Register (new work) | Network fee + base deposit + version deposit + service fee |
| Update (new version) | Network fee + version deposit + service fee |
| Access (read-only) | No fees — access mode is free |