DEVELOPERS
One REST API for the whole quote-to-cash flow.
Catalog, configuration, pricing, quotes, orders, services, e-signature and billing, exposed as REST endpoints your CRM, ERP and storefront call directly.
Build and price transactions from any system. Lines are priced with the account’s live agreements, volume tiers and promotions.
curl -X POST "$BASE/api/v1/pricing" \
-H "Content-Type: application/json" \
-d '{
"account_id": "ACME",
"lines": [
{ "sku": "VX-2000", "quantity": 4 },
{ "sku": "CARE-PLUS", "quantity": 4 }
]
}'A reusable finite-domain constraint solver. Validate a configuration, propagate remaining valid options, solve for a complete (or cheapest) build, or get minimal repairs. Pass an inline model, or reference a platform configurator/product and the rules are loaded for you.
curl -X POST "$BASE/api/v1/solve" \
-H "Content-Type: application/json" \
-d '{
"sku": "VX-2000",
"mode": "propagate",
"assignment": { "Operating Environment": "ATEX Zone 22" }
}'
# Or solve an inline model for the cheapest valid build:
curl -X POST "$BASE/api/v1/solve" \
-H "Content-Type: application/json" \
-d '{
"variables": [
{ "name": "Drive", "values": [ {"value":"1.5 kW"}, {"value":"3.0 kW","price":500} ] },
{ "name": "Belt", "values": [ {"value":"Standard"}, {"value":"Heavy","price":300} ] }
],
"rules": [
{ "kind":"ensure", "expression":"NOT is(\'Belt\',\'Heavy\') OR num(\'Drive\') >= 3.0",
"message":"Heavy belt needs a 3.0 kW+ drive" }
],
"mode": "optimize",
"objective": { "minimize": "price" },
"assignment": { "Belt": "Heavy" }
}'Place an order, decompose it across fulfillment systems, and let ERP sync status back in. Change fees are computed from policy.
curl -X POST "$BASE/api/v1/orders" \
-H "Content-Type: application/json" \
-d '{ "quote_id": "QUOTE_ID" }'
# ERP syncs fulfillment status back:
curl -X POST "$BASE/api/v1/orders/ORDER_ID/status" \
-H "Content-Type: application/json" \
-d '{ "fulfillment_system": "ERP-MFG", "status": "shipped", "tracking": "1Z999" }'Renew, amend or terminate a recurring service contract. Termination fees follow the commitment.
curl -X POST "$BASE/api/v1/services/CONTRACT_ID" \
-H "Content-Type: application/json" \
-d '{ "action": "amend", "changes": { "coverage_level": "Total" } }'The integration surface a CRM calls to push accounts and opportunities, and to open and document quotes.
curl -X POST "$BASE/api/v1/crm/sync" \
-H "Content-Type: application/json" \
-d '{
"crm": "salesforce",
"account": { "external_id": "0016E00001", "name": "Acme Manufacturing", "region": "US" },
"opportunity": { "external_id": "0066E00002", "name": "Line 4 expansion", "amount": 260000, "stage": "proposal", "close_date": "2026-09-30" },
"create_quote": true
}'Subscribe to domain events. Every event is persisted and delivered to active subscribers over HTTPS.
curl -X POST "$BASE/api/v1/webhooks" \
-H "Content-Type: application/json" \
-d '{ "url": "https://example.com/hooks/vektra", "events": ["order.placed","order.status_changed"] }'