Ivandt logo

Smart fix

Automatic error correction for your users

Smart fix helps your users correct validation errors with a single click. Even if you don't define transformers in your schema, Ivandt can automatically suggest fixes for common data issues.

Why it matters

Your users often have messy data: emails in uppercase, phone numbers with extra characters, dates in wrong formats. Smart fix detects these issues and offers one-click corrections.

Example:

  • User imports: "JOHN@EXAMPLE.COM"
  • Validation fails (you require lowercase)
  • Smart fix button appears
  • One click → "john@example.com"
  • Validation passes ✓

How it works

When a cell fails validation, Ivandt shows a "Fix" button in the error tooltip. Behind the scenes, smart fix uses Ivandt's transformation system to intelligently correct the data based on the validation error type.

Common fixes:

Error TypeExample Fix
Email format"JOHN@EXAMPLE.COM" → "john@example.com"
Phone format"4139009670" → "+1 413 900 9670"
URL format"example.com" → "https://example.com"
Number format"$1,234.56" → 1234.56
Boolean format"yes" → true
Date format"12/31/2024" → "2024-12-31"
Typos in dropdowns"Californiaa" → "California"
Out of range150 → 100 (if max: 100)

Respecting your validation rules

Smart fix respects the options you define in your validators. This ensures fixes match your requirements.

Example:

{
  key: 'email',
  label: 'Corporate email',
  validators: [
    {
      type: 'email',
      options: {
        allow_underscores: true,
        require_tld: true
      }
    }
  ]
}

When smart fix runs:

  • Input: "FIRST_LAST@ICLOUD"
  • Smart fix applies your rules: keeps underscores, adds TLD
  • Output: "first_last@icloud.com"

Combining with transformers

You can define transformers in your schema to clean data automatically on import. Smart fix complements this by handling errors that slip through.

Recommended approach:

{
  key: 'email',
  label: 'Email',
  validators: [
    {
      type: 'email',
      options: {
        require_tld: true
      }
    }
  ],
  transformers: [
    {
      action: 'formatEmails',
      payload: {
        options: {
          require_tld: true
        }
      }
    }
  ]
}

This gives you:

  • Automatic cleanup on import (transformer)
  • One-click fixes for errors (smart fix)
  • Consistent behavior (same options)

Smart fix examples

Phone number formatting

Cleans phone numbers by removing extra characters and formatting according to the specified country.

Phone number smart fix

Number cleaning

Removes currency symbols, commas, and other non-numeric characters to extract the actual number.

Number smart fix

Boolean conversion

Converts common boolean representations (yes/no, on/off, 1/0) to proper true/false values.

Checkbox smart fix

Fuzzy matching for dropdowns

Corrects typos in dropdown values by finding the closest match from available options.

Fuzzy fix for dropdowns