SaaS engineering
Viralance: the job lifecycle behind video generation
Behind a generation button are waiting states, failures, a library and credit rules.



A request and its result are separate moments
In Viralance, a user starts video generation with a prompt, image or preset. Because the model takes time, sending a request is only one responsibility of the interface. Starting, processing and completion need to be observable. Web and iOS experiences preserve the same product meaning: users should understand which job is pending and which output is ready.
Failure is a product state
Generation tracking and credit refunds are part of Viralance’s product rules. A failed job cannot remain only a console error: it affects the customer’s balance and decision to retry. SaaS design needs explicit completion events, visible pending states and refund conditions. Repeated notifications and interrupted connections are additional scenarios to examine.
The experience continues after generation
Finished videos need to be found, downloaded and managed alongside later generations. This makes Viralance more than a model integration. Membership, credits, job tracking, the content library and management tools are connected. When planning your own AI product, ask early: what will the user see, and what can the operations team do, if the service does not return a result? The case study shows the web and mobile interfaces together.
APPLY IT TO YOUR PRODUCT
SaaS Development
Custom SaaS products with subscriptions, roles, background jobs and management tools. Web and mobile experiences planned together.