40 Omni clips, 3 fail, 2 canceled while queued: where the wallet ends
Forty 8-second Omni clips at 720p reserve $40.00. With 3 failures and 2 cancels before start, the wallet captures $35.00.

If you submit 40 Omni Flash 1.1 clips of 8 seconds at 720p, Sume reserves $1.00 for each, or $40.00 in total. When 3 jobs fail and 2 queued jobs are canceled before they start, those 5 holds are refunded, and the wallet ends $35.00 lower than it started, which is the 35 clips that completed.
fal lists Omni at $0.10 per second at 720p (read 2026-10-07), so 8 seconds is $0.80 at list and $1.00 on Sume after the 1.25 margin.
The ledger in three states
The usage ledger records each job as reserved, captured or refunded. Reserved is the hold at submit. Captured is the charge after success. Refunded is a hold released after a failure or a cancellation before work starts.
| Outcome | Jobs | Reserved | Captured | Refunded |
|---|---|---|---|---|
| Completed | 35 | $35.00 | $35.00 | $0.00 |
| Failed | 3 | $3.00 | $0.00 | $3.00 |
| Canceled before start | 2 | $2.00 | $0.00 | $2.00 |
| Total | 40 | $40.00 | $35.00 | $5.00 |
What to quote
The usage dashboard docs give one rule for reporting spend: quote debited_usd_micros, the amount the wallet deducted, not the held amount. Holds that are still open are not spend yet, and refunded holds are not spend at all.
While the batch runs, the wallet balance can look $40.00 lower than it ends. Do not read that as the cost. On a Free plan only 6 jobs are accepted at once and on Pro 24, so a 40-job batch is submitted in waves, and the hold at any moment is at most the accepted capacity times $1.00: $6.00 on Free and $24.00 on Pro.
- Cancel works only before generation starts; after that cancel returns 409 and the job runs on.
- A failed job is refunded; a completed clip you dislike is not.
- GET /v1/usage lists the ledger entries, including reservations, captures and refunds.
What to check in the ledger
After the run, list the entries with GET /v1/usage and group them by job. Each completed job should show a reservation and a capture of the same amount; each failed or canceled job should show a reservation and a refund. A job with a reservation and neither is still open.
If the totals do not match the table above, look first for jobs that were still queued or running when you read the ledger. Wait until every job has reached a final state before you reconcile.
Sizing the wallet for the next batch
The next batch of 40 needs the same $40.00 only if all 40 are accepted at once. With a capacity of 24 on Pro, at most $24.00 is held at one time, and each completed job releases its slot. Keep a balance above the held peak, plus the amount you expect to spend for jobs not yet submitted, or later submits will return 402 insufficient_credits.
Reconcile before you rerun
Rerun only the 3 failures, not the batch. Three more clips cost $3.00. See do failed jobs cost money for the refund path, and preview the queue and balance for a pre-submit check.
Sources
Related posts
More in Developers
- frame_images and input_references together: frame_images wins
Send both and Sume runs image-to-video, not reference-to-video. How to pick one field per request and check the model's catalog entry first.
- Gemini 3.8 Flash TTS takes 8,192 input tokens: splitting a long script
Gemini 3.8 Flash TTS lists 8,192 input tokens and 16,384 output tokens. Sume TTS takes 20,000 characters per job. Here is how to split a long script.
- Gemini TTS streams raw PCM; Sume returns a finished wav or raw file
Gemini 3.8 Flash TTS streams headerless audio/l16 at 24 kHz. Sume returns a hosted file from an async job. Wrap the PCM in WAV and match the formats.
- Gemini Omni Flash 1.1 API: a vertical 4K clip with curl on Sume
Request a 9:16 4K clip from Gemini Omni Flash 1.1 on Sume: model id, resolution 4K, 3 to 10 seconds, audio always on, and the $3.00 price for 8 seconds.
Written by Sume