We have an upcoming airport in our state. An ICAO code is already in place but who and when will the IATA code will get created ?
Airports are assigned IATA codes when an air servicer (airline, cargo operator, etc) requests a code for an airport. The code is requested by filling out a form on the IATA web site.
This is not done by the airport management because it is meant to be for use by a commercial operation, and not the airport itself. IATA codes don't really have a lot of meaning to pilots and other general airport users. They are of use to air travelers and cargo operations as a means to identify airlines, destinations, baggage codes, accounting codes, and traffic documents. It is designed as a standard for industry wide usage, otherwise airlines may use many different codes/abbreviations for the same thing (an airport for example) that don't mix well with other airline systems.
So after your airport is built (or while it is being built), an airline or cargo operation may (or may not) request an IATA code for the airport. Participation in the IATA program is purely voluntary, and it may be that your airport doesn't handle services that conform to IATA.