Getting Started with VynFi in 5 Minutes
A quick walkthrough: sign up, create an API key, generate your first dataset, and inspect the results. All in under 5 minutes.
This tutorial walks you through signing up for VynFi, creating an API key, and generating your first synthetic financial dataset. By the end, you will have real data in your terminal.
Step 1: Create Your Account
Head to vynfi.com/signup and create a free account. The free tier includes 10,000 credits per month, which is enough for thousands of rows of journal entries. No credit card required.
Step 2: Get Your API Key
Once logged in, navigate to Dashboard > API Keys. Click 'Create New Key', give it a name like 'my-first-key', and copy the key. It will start with vf_test_ (sandbox) or vf_live_ (production). For testing, a sandbox key is perfect.
Store your API key securely. It will only be shown once. If you lose it, you can always create a new one.
Step 3: Generate Your First Dataset
Use the quick generation endpoint to create 1,000 journal entries. Here is how to do it with curl, Python, and TypeScript:
# Replace with your actual API keycurl -X POST https://api.vynfi.com/v1/generate/quick \ -H "Authorization: Bearer vf_test_your_key_here" \ -H "Content-Type: application/json" \ -d '{ "sector": "retail", "tables": [{ "name": "journal_entries", "rows": 1000 }], "format": "json" }'# pip install vynfiimport vynficlient = vynfi.Client(api_key="vf_test_your_key_here")result = client.generate.quick( sector="retail", tables=[{"name": "journal_entries", "rows": 1000}], format="json",)print(f"Generated {result.metadata.row_count} rows")print(f"Credits used: {result.credits_used}")# Access individual entriesfor entry in result.data.journal_entries[:5]: print(f" {entry.date} | {entry.account} | ${entry.debit:.2f}")// npm install vynfiimport VynFi from "vynfi";const client = new VynFi({ apiKey: "vf_test_your_key_here" });const result = await client.generate.quick({ sector: "retail", tables: [{ name: "journal_entries", rows: 1000 }], format: "json",});console.log(`Generated ${result.metadata.rowCount} rows`);console.log(`Credits used: ${result.creditsUsed}`);Step 4: Explore the Response
The API returns your generated data with metadata about performance and credit consumption. Each journal entry includes a date, account code, debit/credit amounts, a description, and an anomaly flag. If you enabled fraud injection, anomalous entries will have is_anomaly set to true.
{ "id": "gen_r4kX8mN2", "status": "completed", "credits_used": 1000, "data": { "journal_entries": [ { "date": "2026-01-03", "account": "4100 - Sales Revenue", "debit": 15420.50, "credit": 0.00, "description": "POS sales - Store #7", "is_anomaly": false } ] }, "metadata": { "duration_ms": 342, "row_count": 1000, "sector": "retail", "format": "json" }}Step 5: Check Your Usage
Monitor how many credits you have used this billing period:
curl https://api.vynfi.com/v1/usage \ -H "Authorization: Bearer vf_test_your_key_here"On the free tier, you get 10,000 credits per month. A simple journal entry costs 1 credit per row, so 1,000 rows costs 1,000 credits. More complex generation types like P2P cycles or audit blueprints use more credits per row.
What Is Next
Now that you have generated your first dataset, here are some next steps to explore:
- Try different sectors: banking, insurance, manufacturing, and cannabis each have unique table types and data patterns.
- Enable anomaly injection: Add fraudPacks and a fraudRate to your request to generate labeled fraud scenarios.
- Use audit blueprints: Generate complete engagement packages aligned with Big 4 methodologies.
- Explore the dashboard: The generation wizard provides a visual interface for building complex configurations.
- Read the API reference for a complete list of endpoints, parameters, and output formats.
The quickstart guide in our docs has more detailed examples including async generation for large datasets and quality metric inspection.