Slovenia will only allow 2,500 migrants to cross its borders daily – half the number neighbour Croatia has asked for.
Interior Ministry Secretary of State Bostjan Sefic said Slovenia could not accept Croatia’s request to take 5,000, because Austria’s daily limit is 1,500.
Most migrants – many from Afghanistan, Syria and Iraq – are crossing Croatia and Slovenia to reach western Europe.
The limitation on numbers has led to a build-up of migrants and refugees on Croatia’s border with Serbia.
At the scene: Guy Delauney, BBC News, Croatia-Slovenia border
Slovenia may be no more than a transit country for people who want to make their way to Germany, Sweden and Norway. But the authorities there have no desire to be overwhelmed – or worse still, lumbered with tens of thousands of refugees if countries further along the line close their borders.
So it is sending a message that it can accept no more than 2,500-3,000 people per day. Whether this is the actual number making it across from Croatia is hard to say.
But whatever the statistics, the Croatian authorities say they are worried that people are no longer moving through their country quickly enough. A government official told the BBC that Croatia could run out of room in its transit camps within days.
Around 40 buses of people were backed up in Serbia on Sunday, and tempers flared between frustrated migrants and overstretched police officers.
“We are waiting here four hours on the bus,” Muhammad Samin from Afghanistan told the Associated Press. “The weather is too cold. We wear lots of shirts. The children are also in the cold. No food.”
There are also reported to be 4,000 migrants waiting at a reception centre in the east Croatian town of Opatovac, hoping for an onward journey towards Slovenia.
The migrants have already spent weeks walking from Turkey, via Greece, Macedonia and Serbia.
Mr Sefic told a news conference that Slovenia “cannot accept unlimited numbers of migrants if we know that they cannot continue their journey”.
“Croatia asked us to accept 5,000 migrants per day, but Austria told us they can accept at maximum 1,500,” he said.
He said Slovenia had to turn down a request by Croatia on Sunday to send it a second train of migrants.
The UN’s refugee agency says about 4,000 migrants crossed into Slovenia on Saturday. By Sunday morning, Austria said it had allowed through around 1,000 people.
Slovenia became the main route for migrants after Hungary closed its borders to them on Friday night, citing security concerns.
German Chancellor Angela Merkel is hoping to tackle the crisis at source, visiting Turkey which is currently hosting two million Syrians and hundreds of thousands of Iraqis.
She has promised money, support for Turks to travel to the EU without visas and re-energising Turkey’s bid to join the bloc, all in the hope that Ankara can better police its borders and convince its refugees to stay put, the BBC’s Mark Lowen reports from Istanbul.
At a joint news conference with Mrs Merkel, Prime Minister Ahmet Davutoglu said Turkey would do its best to work with Germany to prevent illegal migration, but added that the crisis could not be resolved without a solution to the Syrian conflict.
Mrs Merkel’s visit was condemned by Selahattin Demirtas, of the pro-Kurdish People’s Democratic Party. He said her visit came too close to Turkey’s general election, on 1 November, and she should be seeking cross-party opinion as “that would be the only way to understand Turkey’s position better”.
Migrants continue to make the perilous sea crossing from Turkey to Greece.
The Italian navy tweeted on Sunday it had rescued 113 migrants and found eight bodies in a rubber boat, attempting to cross the Mediterranean.
On Saturday, 12 refugees – four of them children – drowned while trying to reach the Greek island of Lesbos. They were thought to be from Syria or Afghanistan.