The act came amid ongoing concerns about how Germany will deal with the 1.1 million asylum-seekers that flooded in last year.
Peter Dreier, a Landshut district councilor, said he wanted to "send a sign that refugee policy cannot continue like this."
Dreier said he had talked with Merkel on the phone last year.
He said he warned her that Landshut was reaching its capacity for housing asylum-seekers and told her he'd put refugees on buses to Berlin if his district could no longer handle the influx.
Also Read
Several police officers shielded the 31 refugees from reporters as officials asked them to board another bus waiting nearby that was to take them to local shelters.
However, the refugees refused to leave the bus and after a two-hour wait in front of the chancellery, the bus left for an overnight accommodation.
Merkel's spokesman Steffen Seibert said in a statement that the city of Berlin had agreed to offer accommodation for the refugees for their first night in Berlin.
Both German news channel n-tv and Zeit newspaper's online edition reported their reporters had talked to refugees during the ride to Berlin and that the migrants didn't know the trip had been organized as an act to criticize Merkel's refugee policy.
Landshut spokesman Elmar Stoettner told The Associated Press earlier today that all 31 refugees on the bus had been granted asylum in Germany and volunteered to participate in the bus trip.
Stoettner also said that some have relatives in the German capital and others would probably "go back to Bavaria if in Berlin they say that they don't want them."
Countering the district councilor's criticism of the government's refugee policy, Seibert said in the statement, that while the government is aware of the fact that the high number of refugees is a challenge for the communities, it also supports them financially in handling the refugee crisis.