veltor
One integration. Rules you control.

Abuse prevention
API for SaaS

Prevent users from creating extra accounts to repeatedly claim your trials, free plans, credits, and other benefits.

THE BENEFIT REQUESTPOST /v1/decisions

A customer requests credits

Your app sends the claim and identity signals

Veltor evaluates your policy

Available signals + previous benefit history

Your app enforces the result

You control benefit delivery

allow · deny
Benefits, with boundaries

Decide who qualifies.
Keep the rules in your hands.

Protect limited benefits

Evaluate trials, free plans, signup credits, and offers when a customer requests them.

Learn more

Change rules in Veltor

Edit eligibility rules using the inputs your integration already supplies.

Learn more

Understand each decision

Review the policy version, matched rule, and retained evidence behind an allow or deny.

Learn more
Built around your application

One claim. A clear result.

Your application manages authentication, payments, and benefit delivery. Veltor evaluates eligibility against the policy you publish.

Detection depends on the identifiers and history available. A shared network or device does not prove that accounts belong to one person.

const result = await veltor.decide({
  benefit: "signup_credits",
  claim_id: "signup_customer_123",
  subject: {
    external_id: "customer_123",
    email: "alex@example.com"
  },
  context: { ip: customerIp }
}, "attempt_customer_123");

// Deliver once, using your own grant ledger.