Create Region Map Visualization on Kibana with only Iso Code

Hello!!
How is going?
I'm trying to build a Map visualization here in kibana.
My data only has the iso 2 letters abbreviation code, and I want to do a "region" map, without points, because our data granularity doesn't need to be that specific for now.
However, I'm struggling to find how may I do that on the new Maps section.
I'm using Kibana latest version.
And when adding a new layer, it says it can't find geospatial indexes, and by looking for the documentation I can only find for geopoint with lat and long.
Can you help me, please?

Follow this documentation for creating a region map.

Thanks, Nathan for the answer!! However, I've tried it here and still hasn't loaded the map. How should be the right index? In my case is a string keyword for the two letters abbreviation, e.g.: Brazil -> "BR", or USA -> "US". Should I map it as another type other than string?

What does your layer configuration look like?

Here how it is set up:

What is returned in the response for the join request under inspector adaptors?

Request:

{
  "size": 0,
  "aggs": {
    "join": {
      "terms": {
        "field": "country_abbrev.keyword",
        "order": {
          "_count": "desc"
        },
        "size": 10000
      },
      "aggs": {
        "__kbnjoin__avg_of_document_balance_usd_groupby_war_geo_complete_index.country_abbrev.keyword": {
          "avg": {
            "field": "document_balance_usd"
          }
        }
      }
    }
  },
  "stored_fields": [
    "*"
  ],
  "script_fields": {},
  "docvalue_fields": [
    {
      "field": "@timestamp",
      "format": "date_time"
    },
    {
      "field": "entry_date",
      "format": "date_time"
    },
    {
      "field": "issue_date",
      "format": "date_time"
    },
    {
      "field": "settled_date",
      "format": "date_time"
    }
  ],
  "_source": {
    "excludes": []
  },
  "query": {
    "bool": {
      "must": [],
      "filter": [
        {
          "match_all": {}
        },
        {
          "range": {
            "issue_date": {
              "gte": "2020-07-01T17:54:26.867Z",
              "lte": "2020-07-01T18:09:26.867Z",
              "format": "strict_date_optional_time"
            }
          }
        }
      ],
      "should": [],
      "must_not": []
    }
  }
}

Response:

{
  "took": 4,
  "timed_out": false,
  "_shards": {
    "total": 1,
    "successful": 1,
    "skipped": 0,
    "failed": 0
  },
  "hits": {
    "total": 0,
    "max_score": null,
    "hits": []
  },
  "aggregations": {
    "join": {
      "doc_count_error_upper_bound": 0,
      "sum_other_doc_count": 0,
      "buckets": []
    }
  }
}

It looks like there are no matching documents. Does your right index have a default time field? Does kibana's global time picker match the time range for any of your data?

Go to discover and view your right side index. What time range do you need to show data? Use that time range in the maps app.

Hahahah it was the time picker!!!
Every now and then I'm caught on this hahahaha
Thanks it is working now!!!