KitClear: BOM Stock Allocation and Shortage Report
Pricing
$0.50 / completed product packet
KitClear: BOM Stock Allocation and Shortage Report
Turn on-hand parts, reserved stock and priority orders into a checked kitting allocation, pick quantities and shortage report. Fixed single-level BOMs; explicit partial-fill policy.
Pricing
$0.50 / completed product packet
Rating
0.0
(0)
Developer
US Tech Automations
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
14 hours ago
Last modified
Categories
Share
KitClear
Create a checked allocation from your on-hand components and order priorities, then download the pick quantities and shortages.
Named buyer
A materials planner or kitting lead who must say, from on-hand stock and fixed bills of materials, how many units of each open order can be filled this cycle.
This is not a warehouse management system. It does not count physical inventory, talk to a shop-floor system, buy missing parts, or claim a globally optimal plan.
What it does
It allocates on-hand stock to orders using a fixed, single-level bill of materials. Priority is descending; ties keep input order. Reservations are locked stock and are not given to these orders. partial_fulfillment must be set true or false by you.
PASS means the packet was checked against the engine's own rules. It does not mean every order is filled. Unfulfilled rows stay in the files for a person to review.
Exact limits (from the engine)
- 1–100 orders
- 1–2,000 stock components
- 1–200 products (BOMs)
- 1–100 components per BOM
- IDs: printable strings, 1–64 characters
- Stock and reservations: integers 0–1,000,000
- BOM units: 1–10,000
- Order quantity: 1–100,000
- Priority: 1–10,000
- Product IDs and component IDs must not overlap (no nested BOMs)
- JSON input cap at the adapter: 1 MiB
- Unknown fields and non-finite numbers are refused
Input JSON example
This is the native sample (example.json). Paste this object into the payload JSON field.
{"synthetic": true,"partial_fulfillment": true,"stock": {"board": 12,"case": 7,"cable": 20},"reservations": {"board": 2},"boms": {"sensor-kit": {"board": 1,"case": 1,"cable": 2},"board-pair": {"board": 2,"cable": 1}},"orders": [{"id": "ORDER-A", "sku": "sensor-kit", "quantity": 6, "priority": 10},{"id": "ORDER-B", "sku": "board-pair", "quantity": 3, "priority": 5},{"id": "ORDER-C", "sku": "sensor-kit", "quantity": 2, "priority": 2}]}
Public Apify input schema (input_schema.json) wraps that object as payload with a JSON editor. example and default are this sample. Extra fields are not documented and the engine rejects them.
Exact artifacts
The adapter returns status='PASS', the engine summary object, files (JSON/CSV/README bytes unchanged; HTML is the branded report), and archive (a zip of those files only).
Zip members:
| File | Contents |
|---|---|
allocation.json | Full allocation evidence (orders, picks, remaining stock, shortages, input SHA-256, algorithm version) |
orders.csv | order_id, sku, priority, requested, filled, unfulfilled |
materials.csv | component, picked, locked, remaining_available, additional_for_unfulfilled |
README.txt | Limits, algorithm id, input hash, limitations |
report.html | Branded allocation report (tables, limitations, USTA shell) |
styles.css | Shared USTA stylesheet used by the report |
On the sample, filled units are 6, 2, 0 (ORDER-C unfilled). Weighted fulfilled units are 70. Unfulfilled rows stay in the CSV and JSON.
What unresolved / unfilled means
An unfilled or partly filled order is left in the packet for manual review. The tool does not rewrite history, substitute parts, or purchase stock. "Additional components" is a shortage count, not a purchase order.
Claims this product does not make
- No physical inventory count or warehouse integration
- No optimality claim (priority-then-input-order only)
- No substitutions, forecasts, purchasing, or assembly instructions
Hosting
When you run this Actor, the payload is sent to Apify. It is not local-only. You control how long Apify keeps the run. US Tech Automations does not offer a lasting availability promise (no SLA) for Apify uptime.
Run and download
- Review the supported input and try the included synthetic example. Replace payload with your authorized records. For API runs, send an object with a single payload field containing that input.
- Run the Actor. Open Status and coverage to inspect the result.
- For a completed result, open Download completed ZIP or the artifact link in the dataset. Save and extract the ZIP before Apify retention expires. Open the HTML report where provided; retain the JSON and CSV evidence.
Price and unsuccessful runs
$0.50 per completed packet, with one packet per run and no start fee. A retry of the same run reuses the packet and the same billing identity. Starting a separate run is a separate request. Invalid input or an incomplete UNKNOWN result produces a diagnostic without a completed-packet charge. A completed conflict or shortage report can still require manual review; PASS does not mean every business problem was resolved.
The minimum run budget is $0.50. The example is a normal run and follows the same price; it is not a free preview promise. Apify handles account billing. These files are not permanent storage: download them promptly.
Access and support
Your input and output are processed on Apify under the run owner's account. Use authorized data and opaque IDs; do not upload passwords or sensitive personal records. Treat artifact URLs as access-bearing links and share them only intentionally. The USTA report may fetch the Satoshi font; it does not upload your report. For a product issue, use this Actor's Issues tab with the run ID and a redacted example. Never post private input or access-bearing links in a public issue.