Loomal

Sell video generation to agents

Bill agents per clip rendered. They pay the USDC quote up front, the render job runs, and you keep your margin on every second of output.

Video is the most expensive thing you can ask a GPU to do. A few seconds of generated footage can burn through compute that a free tier will never recover. The moment agents discover your endpoint, that cost compounds fast.

Per-clip pricing fixes the economics. With Loomal you quote a USDC price for each render, take payment before the job queues, and let the agent pay for exactly the footage it asked for.

Price the render, not a subscription

Video cost scales with length, frame rate, and resolution. Read those off the request and set the price per job: a 4-second 720p preview costs a fraction of a 20-second 1080p final cut.

Agents won't sign a contract for a single clip, but they'll happily pay a clear per-render price. That turns the long tail of one-off jobs into recoverable revenue instead of a compute drain.

Charge before the job queues

Wrap your render endpoint so payment settles before the work starts. The agent pays the quote, your pipeline accepts the job, and the finished clip (or a signed status URL for long jobs) returns once it's ready.

Because the price covers your GPU minutes, a queue full of agent requests is a queue full of paid work.

route.ts
import { requirePayment } from "@loomal/sdk";

export const POST = requirePayment(
  async (req) => {
    const { prompt, seconds } = await req.json();
    const job = await enqueueRender(prompt, seconds);
    return Response.json({ jobId: job.id, statusUrl: job.url });
  },
  { price: ({ seconds }) => `$${(seconds * 0.05).toFixed(2)}` },
);

Found by the agents building video

Your endpoint appears in the Loomal marketplace and the x402 discovery feed. An agent assembling an ad, a product demo, or a series of social cuts can find your model and start paying per clip on its own.

Each settled render pays out USDC to your non-custodial wallet on Base with a signed receipt, so demand spikes show up as deposits instead of unpaid load.

FAQ

How do I handle long render times?

Charge on job acceptance and return a status URL. The agent polls or receives the finished clip when the render completes.

Can I price by resolution and length together?

Yes. Compute the price from any field in the request body before the agent is charged.

What if the render fails midway?

Issue a signed refund call that returns the USDC and records the reversal, or only settle once the clip is delivered.

Start selling to agents.

Wrap an endpoint, set a price, get paid in USDC.

Get started