Prepositions like à and de in French and “to” in English have so many different meanings that they only have very loose connotations, and there is no equivalence between the languages.
When paired to express an interval in space or time, the diptych “from/to” in English does generally correspond to the diptych de/à in French.
“This train goes from Paris to London.” = Ce train va de Paris à Londres.
“The shop is open from 10am to 6pm.” = Le magasin est ouvert de 10h à 18h.
But on its own, à does not particularly connote movement. It is the default preposition for an indirect complement (replacing a Latin dative). The general rule (which of course has many exceptions) is that when someone is affected by an action, the affected person is an indirect complement (complément d'objet indirect) of the verb, introduced by the preposition à. For example, whether you're selling something or buying something, the other participant in the exchange is introduced by à. In French, it feels perfectly logical to use the same preposition for both verbs, since the other participant is affected in a similar way. The fact that the object moves towards the other participant in one case and away from the other participant in the other case does not feel like a reason to use different prepositions.
This is an aspect of a more general difference between English and French: English prepositions are more likely to convey movement on their own, compared to French. Another manifestation of this phenomenon is how, when expressing both the direction and the manner of movement, English tends to use a preposition for the direction and a verb for the manner, whereas French tends to use a verb for the direction and a complement for the manner.
“He ran out of the building.” = Il sortit du bâtiment en courant.
(This is of course a tendency and not an absolute rule: you can say “he exited the building at a run” and il a couru hors du bâtiment, but these tend to be idiomatic in fewer circumstances.)
The preposition de is somewhat more likely to be used when an object is taken out. Contrast:
J'ai pris le chapeau au voleur pour le rendre à son propriétaire. (The thief is affected by the action.)
J'ai pris le chapeau du placard pour le rendre à son propriétaire. (The object is taken out of the closet.)