Skip to main content

Geo Restrictions Guide

Use geo restrictions to define where your transfer offer is available and what minimum age applies in each country or region. Configure these rules in the Partner Portal under Settings → Restrictions.

What The Policy Controls

The transfer policy has two sections:
  • geo controls whether a country or region is allowed or blocked
  • age controls the minimum age for a country or region
At the top level, both sections inherit from defaults:
  • geo.default is the fallback action when no country or region override exists
  • age.default is the fallback minimum age when no country or region override exists

Policy Format

{
  "version": 1,
  "geo": {
    "default": "allow",
    "countries": {
      "CA": {
        "block": ["ON"]
      },
      "US": {
        "default": "block",
        "allow": ["CA", "TX", "NY"]
      }
    }
  },
  "age": {
    "default": 18,
    "countries": {
      "US": {
        "regions": {
          "NE": 19
        }
      }
    }
  }
}

Country And Region Codes

Use:
  • ISO 3166-1 alpha-2 country codes such as US, CA, and MX
  • Region suffixes scoped to the country, such as CA under US, ON under CA, or CMX under MX
The stored policy stays compact by nesting region suffixes under each country. For example:
  • US + CA means California
  • CA + ON means Ontario
  • MX + CMX means Mexico City
The portal also accepts full ISO 3166-2 values such as US-CA and normalizes them to suffixes on save.
Region values are interpreted inside their country. CA under US means California, while CA as a country code means Canada.

How Matching Works

Rules inherit from the broadest scope to the most specific scope:
  1. Start with the global default
  2. Apply the country override if present
  3. Apply the region override if present
That means a region rule always wins over a country rule for the same country.

Common Patterns

Allow everywhere except one region

{
  "version": 1,
  "geo": {
    "default": "allow",
    "countries": {
      "CA": {
        "block": ["ON"]
      }
    }
  }
}

Block a country by default, then allow selected regions

{
  "version": 1,
  "geo": {
    "default": "allow",
    "countries": {
      "US": {
        "default": "block",
        "allow": ["CA", "TX", "NY"]
      }
    }
  }
}

Set a global age, then override one region

{
  "version": 1,
  "geo": {
    "default": "allow",
    "countries": {}
  },
  "age": {
    "default": 18,
    "countries": {
      "US": {
        "regions": {
          "NE": 19
        }
      }
    }
  }
}

Set a country-specific age requirement

{
  "version": 1,
  "geo": {
    "default": "allow",
    "countries": {}
  },
  "age": {
    "countries": {
      "MX": {
        "default": 21
      }
    }
  }
}

Rules And Validation

The Partner Portal normalizes and validates the document before saving. Validation includes:
  • version must be 1
  • geo.default must be allow or block
  • minimum ages must be integers from 1 to 99
  • country codes must be valid alpha-2 codes
  • region codes must be valid for the country when Bankroll has region data for that country
  • the same region cannot appear in both allow and block
The portal also rejects mixed geo formats inside the same country rule. Use either:
  • allow / block arrays
  • or the legacy regions object format
Do not use both in the same country entry.

Previewing The Policy

The Map tab shows the normalized document that will be saved:
  • green regions are allowed
  • red regions are blocked
  • amber labels indicate an age override
Use the country picker above the map to inspect each supported country.

JSON Editing Tips

  • Start from the smallest rule set you can
  • Prefer defaults plus a few overrides instead of listing every region
  • Keep geo and age separate
  • Use the Format JSON action before saving if you want to inspect the normalized output
The portal saves the normalized document, not necessarily the exact whitespace or key casing you typed.