It will be difficult to help unless you can tell people what programming language or InSim you're going to use.
In LFSLapper ("lapper"), it's fairly easy.
You would run lapper, drive to the area you want the zone (your shop, bank, etc) to be located, type the command word "!ZONE", and you will be given X and Y co-ordinates. These are used in your code to define your zone.
The 1st part of the code would look like;
RegisterZoneAction( "BL1" , -60,106, 5 , Knocking_Shoppe,"" );
Where -60 is X, 106 is Y, and 5 is how big an area (in metres).
The "Knocking_Shoppe" would be the name of your sub-routine to run when someone enters the proscribed zone.
Example:
Sub Knocking_Shoppe()
<define what happens when you enter proscribed zone,
e.g. open Button with text, such as "Welcome to XDriftingKingx's Knocking Shoppe - all welcome">
EndSub
With other Languages/InSims, likely to be bit more complicated, especially if there's no easy way to get the X and Y co-ordinates.
Like I said in my 1st post, first you define a zone, then you run a sub-routine when someone enters the zone.
In the case of lapper, you use "RegisterZoneAction" to define your zone, then within that line of code, you have name of sub-routine, and you will have a sub-routine code which will run when a driver enters the zone.
In some cases, it would also be possible to do exactly the same with a NODE, but you can't define an area as such, just really a line that crosses the track or layout. The Finish line is a Node that has a sub-routine that runs when you finish the lap/race (e.g. give time and/or position, etc). Nodes are also used to give Split/Sector times.
Lines and objects can be placed at the Zone or Node to help define the place bit better than just an anonymous piece of track or off-track area.
So, to recap;
> define (specify X/Y co-ordinates) the area (zone/node) you want your shop (or whatever) to be on the circuit or layout
> append sub-routine code to run (what's to happen) when driver enters the defined area.
Or to put it another way, think of SatNav - you put in your (ZONE) destination, and when you get there, (SUB_ROUTINE) you get message that you've arrived.