The usage of the simple past (Pretérito perfecto simple, llegué) and the compound past (Pretérito perfecto compuesto, he llegado) varies across areas. In Latin America, the simple form is used much more often and in some areas the compound form is only used in sentences of the kind "have you ever...?". My answer refers to the usage in Spain.
The general rule is to use the compound form when the action either occurred in the near past, or has some effect in the present. From this source:
Recuerda, usa el pretérito perfecto simple principalmente para hechos del pasado que no tienen que ver con el presente y el pretérito perfecto para hechos pasados relacionados de algún modo con el presente.
La RAE, en la nueva Gramática Básica de la Lengua Española explica la diferencia entre estos dos estados temporales del pasado y recomienda el uso del pretérito perfecto simple cuando el intervalo de tiempo al que nos referimos se sitúa totalmente en el pasado y no tiene relación con el tiempo del habla y el pretérito perfecto cuando se prolonga al tiempo del habla
In your example
¡Ya estoy en el hotel! Ayer por la noche he llegado a la ciudad de Santiago de Compostela.
the speaker is on a trip, and the fact that he arrived yesterday at Santiago de Compostela has an effect on the present (that he is now at an hotel in Santiago de Compostela). In general, the completion of the necessary tasks to enable a current or future action/state is often expressed in the compound form, even if that completion occurred long time ago.
Practically, the compound form is usually preferred when the sentence uses adverbs such as (but not limited to) ya (completion of tasks) or hoy, esta semana, este mes, este año (near past, where "near" is relative to the time scale that is being used). Your example is not a clear case, as it uses ayer, and it would also be correct to use the simple form:
¡Ya estoy en el hotel! Ayer por la noche llegué a la ciudad de Santiago de Compostela.