Help & User Guide

Everything you need to know about using NatalieTool.

Getting Started

NatalieTool has two parts: a web app you access in your browser, and a Local Agent that runs on your Windows machine. The web app handles the UI and AI. The Local Agent handles everything that touches your machine — SQL Server, file operations, and Vertex Returns imports.

Install Agent → Configure → Select Database → Generate Data

First-Time Setup

1
Download and install the Local Agent. Go to the Setup page and download the installer. Run it — Windows SmartScreen may warn you because the installer is unsigned. Click More info, then Run anyway. The agent installs to Program Files and starts automatically.
2
Allow browser access to localhost. When you first visit the web app, your browser may ask permission to let the site communicate with your local machine. Click Allow. This is how the web app talks to the Local Agent.
3
Configure your SQL Server. Go to Local Agent Settings and enter your SQL Server instance name (e.g., localhost\SQLEXPRESS). Click Test Connection to verify it works. Then click Save Settings.
4
You're ready. Go to the home page and pick a tool. The green dot on any page means the agent is connected and working.
Auto-updates: The agent checks for updates each time it starts. If a newer version is available, it prompts you and installs silently. You never need to manually download again after the initial install.
↑ Back to top

Data Generator

The Data Generator is the main tool. It creates test companies, generates transaction data, and runs imports against your local Vertex Returns database — all in one operation.

Two Modes

ModeWhen to use it
Create Everything Build a brand-new company from scratch — company record, divisions, departments, locations, returns, deductions, transaction data, and import. Start to finish.
Generate Tax Data Add transaction data to a company that already exists in your database. Useful when you need more data for a company you've already set up.

Two Methods

MethodHow it works
AI-Powered
~3-4 minutes
Describe what you want in plain English. The AI interprets your prompt, queries your database for real geocodes and tax rates, and builds everything to match. Best for complex or realistic scenarios.
Random / Deterministic
~30 seconds
Pick states, location counts, volume, and a date range from a form. Fast and predictable. Best when you need data quickly and don't care about the specifics.

Create Everything — Step by Step

Select DB → Create Everything → Check Code → Choose Method → Generate → Import → Download
1
Select your database from the dropdown. Only Vertex Returns databases (vitr-na-master-*) are listed. A version mismatch warning appears if your database is behind the latest version on the server.
2
Choose "Create Everything" to build a new company from scratch.
3
Enter a company code and name. A random code and a placeholder name are pre-filled for you. Click Check Availability to verify the code isn't already in use.
4
Choose your method — AI or Random. See below for details on each.
5
Generate. The tool creates data files and shows a summary with transaction counts, file counts, and location details.
6
Click "Create Company & Import Data" to insert the company into your database and run the Vertex Returns import in one shot. Or click Download Package to get a ZIP with the SQL scripts and data files to run manually.

Generate Tax Data (Existing Company)

Same flow, but you select an existing company from a dropdown instead of creating one. A summary bar shows the company's current locations, returns, divisions, and departments — click it to open a detailed company report in a new tab.

Setup returns automatically: Check the "Setup returns where none are configured" box and the tool will insert return records for any states that don't have them before running the import.

Writing Good AI Prompts

The AI understands Vertex Returns concepts. You can mention:

Example prompts:

"A mid-size retailer in Pennsylvania and Ohio with 15 locations, heavy transaction volume, all four tax categories, filing monthly."
"Small company with 3 locations in New York City. Cat 1 and Cat 3, light volume, January through March 2026. Include some exempt transactions."
"50 retail transactions in Texas and Illinois, mostly Cat 1 with some Cat 3 exempt."
The AI never asks follow-up questions. If your prompt is ambiguous, it makes reasonable assumptions and generates data. You can always regenerate with a more specific prompt if the result isn't what you wanted.

Random / Deterministic Options

FieldWhat it controls
StatesWhich states to place locations in. Hold Ctrl to select multiple.
Location CountTotal number of locations to create, distributed across selected states.
Tax CategoriesStandard (1–4) or All. Controls which transaction types are generated.
Volume Transactions per location per filing period:
Light = 100  |  Medium = 800  |  Heavy = 1,500  |  Custom = you choose
Filing PeriodStart and end month. Defaults to the database's current MIF month.

What's in the Download Package?

The ZIP file (COMPANYCODE_package.zip) contains:

FilePurpose
setup_company.sqlT-SQL script to create the company, locations, returns, and related records. Run this first if you're setting up manually instead of using the Import button.
setup_deductions.sqlT-SQL script to configure deduction code mappings (Exempt / Non-Taxable) in CompanyDeductions and StateDeductions.
*.txt (one per period)TAX2000 import data files — delimited transaction records with tax amounts calculated from your database's actual rates.
README.txtSummary of what was generated, including company details, locations, returns, and step-by-step manual import instructions.
↑ Back to top

TAX2000 Import File Generator

A simpler tool for generating individual TAX2000 import files. Unlike the Data Generator, this tool only creates data files — it doesn't create companies, run imports, or package anything.

How It Works

1
Enter a company code. This identifies which company the data is for (the company must already exist in the database).
2
Describe the data you need in plain English. Same AI prompt format as the Data Generator — states, tax categories, volume, date ranges, etc.
3
Click Generate. The AI streams its reasoning in real time — you can see it querying your database for geocodes, rates, and returns.
4
Download the files. Each generated file appears as a green download button. One file per filing period.

The page shows the current database MIF month (e.g., "Current database: June 2026") so you know what tax content release you're generating against.

Token usage: After generation, you'll see "Tokens: X in / Y out." This shows how much AI processing was used. It's informational — higher numbers mean the AI did more database lookups and reasoning. It doesn't affect your output.

When to Use This vs. the Data Generator

Use TAX2000 Generator when...Use Data Generator when...
You just need data files to import manually You want the full pipeline — company creation, import, everything
The company already exists and is fully configured You're starting from scratch or need the import run for you
You want direct control over what gets generated You want a one-click end-to-end experience
↑ Back to top

Import Setups

Extract import setup configurations from one database and load them into another. This lets you share proven import configurations across environments without manual re-entry.

What's an Import Setup?

An import setup defines how Vertex Returns reads your TAX2000 data files — the file format (delimited or fixed-width), delimiter, text qualifier, field mappings, and validation rules. Each setup maps to an Import Type (e.g., Separate Tax, Combined Tax) and contains a list of field positions.

Extracting a Setup

1
Select the source database from the dropdown.
2
Find the setup you want in the grid and click Extract.
3
A JSON file downloads to your machine containing the full setup configuration and all field mappings.
Tip: The JSON file is portable — it includes the source server and database name for traceability, but loads cleanly into any Vertex Returns database regardless of origin.

Loading a Setup

1
Select the target database from the dropdown.
2
Click Load from File and choose a previously extracted JSON file.
3
Review the details in the confirmation dialog. You can rename the setup if needed.
4
Click Load into Database. The setup is created with a new ID — it never overwrites existing setups.
Note: Loading always creates a new import setup. If you load the same file twice, you'll get two copies. Delete the duplicate from the Returns application if this happens.

What's in the JSON File?

The exported file contains:

↑ Back to top

Database Migration

Migrate data from SQL Server to Babelfish/PostgreSQL using the Vertex Returns EF CLI tool. This is an advanced tool for teams moving to cloud-native databases.

Prerequisites

Operations

OperationWhat it does
Migrate Data Full migration — copies both schema and data from a SQL Server database to Babelfish/PostgreSQL. Optionally specify a tenant GUID or drop the tenant schema first.
Apply Migrations Runs Entity Framework schema migrations only. No data is transferred. Use this when you need to update the target database schema without touching data.
Reset Database Drops all tables and functions from the Babelfish qsutr32 database. This is destructive and cannot be undone. A confirmation dialog appears before execution.
Drop Tenants Removes tenant schemas from PostgreSQL. Specify a GUID to drop one tenant, or leave blank to drop all. This is destructive and cannot be undone.
Destructive operations (Reset Database and Drop Tenants) show a confirmation dialog before executing. You must explicitly click "Yes, proceed" to continue.

All operations stream their output in real time in a terminal-style display. Green text = stdout, red text = stderr. When the operation finishes, a status indicator shows success (green) or failure (red) with the exit code.

↑ Back to top

Local Agent Settings

Configure the companion service that runs on your machine. All settings are stored in the Windows Registry and encrypted where appropriate.

SettingWhat to enter
SQL Server Your SQL Server instance name, e.g., localhost\SQLEXPRESS or .\MSSQLSERVER. Uses Windows Authentication — no username/password needed. Click Test Connection to verify.
Import Input Path Directory where generated data files are written. Click Validate to check the path exists.
Import Error Path Directory where import error output is written. Click Validate to check.
PostgreSQL Endpoint Host, port (default 5432), username, and password for the PostgreSQL database. Only needed if you use the Database Migration tool.
Babelfish TDS Endpoint Host, port (default 1433), username, and password for the Babelfish TDS endpoint. Only needed for Database Migration.
Passwords are encrypted using Windows DPAPI before being stored in the registry. They're tied to your Windows user account — only you can decrypt them.

Agent Log

Click View Log to see the agent's activity log. The log shows every API call, errors, and diagnostic information. Use Download to save the log as a text file — handy when you need to share it for troubleshooting.

Program Files Cache

Vertex Returns program files are downloaded automatically when needed during import. The agent fetches the correct version from the cloud, verifies its integrity (SHA256 hash), and caches it locally. You never need to manage this manually — the cache status is displayed here for informational purposes.

↑ Back to top

Troubleshooting

"Local Agent is not detected"

This means the web app can't reach the Local Agent on your machine. Try these in order:

  1. Is the agent installed? If not, go to the Setup page and download it.
  2. Is the agent running? Check your system tray or Task Manager for NatalieTool.LocalAgent.exe. It should auto-start on login, but you can also run it manually from the Start menu.
  3. Did your browser block localhost access? Click the lock or tune icon in your browser's address bar. Find "Access to local network" (or "Access other apps and services on this device") and set it to Allow. Then reload the page.
  4. Is another application using port 9500? The agent scans ports 9500–9549 for an available port. If all 50 ports are occupied (extremely unlikely), close some applications and restart the agent. Check the agent log for details.

Browser Download Warnings

The installer is code-signed by Vertex, but browsers flag executables from newer sites until they build download reputation. This is normal.

Chrome may show "this file isn't downloaded often":

  1. Click the ⇧ arrow (or Show more) on the download bar.
  2. Choose Keep anyway.

Edge SmartScreen may block the download entirely:

Windows SmartScreen may show "Windows protected your PC" when you run the installer:

  1. Click More info (it's small, below the warning text).
  2. Click Run anyway.

Database Not Listed

The database dropdown only shows databases that:

If your database isn't listed, verify the SQL Server connection in Agent Settings and make sure the database is online.

Import Fails or Shows Errors

If the import reports errors:

Program Files Not Available

If the import can't find the right program files, the agent attempts to download them automatically from the cloud. If this fails:

Still Stuck?

Download the agent log from the Agent Settings page (View Log → Download) and send it to your NatalieTool administrator. The log contains timestamped entries for every operation, including errors and diagnostic details.

↑ Back to top