Germany's federal prosecutor's office announced the espionage charges in a press release on Thursday.
It said the suspect, identified only as Jens F., worked for a company that was hired to carry out checks on electrical equipment by the Bundestag, Germany's lower house of parliament.
In that role, the German national allegedly used his access to collect data and pass it on to "an employee in the Russian Embassy in Berlin, who mainly works for the Russian military secret service GRU," the statement said.
The 55-year-old is alleged to have sent PDF files "on his own initiative" with floor plans of the Bundestag's properties to Russian intelligence between late July and early September 2017.
The Bundestag is based in the Reichstag building in central Berlin, but also uses a number of other sites.
Russia slams 'myth' of aggression
In comments carried by Russia's Interfax news agency, head of the foreign relations committee in the State Duma Leonid Sluzki said: "Such reports about caught 'Russian spies' only serve to fuel an anti-Russian information campaign to support the myth of Moscow aggression."
He also asked why the case had only come to light more than three years after the alleged breach.
Not the first spying case
German intelligence services have repeatedly warned about the danger of attempted espionage or cyberattacks by Russia.
In 2015, the Bundestag's computer systems were targeted in a Russian hacking attack.
In October, the EU imposed sanctions on two Russian officials and part of the GRU over that incident.
The latest spying allegations could increase tensions between Berlin and Moscow. Ties were already strained over the poisoning and jailing of Russian opposition figure Alexei Navalny, who spent months receiving medical treatment in the German capital last year.
Moscow has denied allegations that it had a hand in the Kremlin critic's poisoning, even insinuating that he might have been poisoned in Germany.
In another case, a Russian man accused of killing a Georgian citizen in a Berlin park in 2019 — allegedly at Moscow's behest — is facing trial in the German capital.
The spying charges against Jens F. were filed at a Berlin court earlier this month. The court still has to decide whether to proceed with a trial.
*Editor's note: DW follows the German press code, which encourages protecting the privacy of suspected criminals or victims and refraining from publishing full names in such cases.