The Sea-Eye 4, one of the ships operated by the German non-profit, was off the coast of Palermo in northwestern Sicily late Wednesday when it learned it would be allowed to dock in the island's southern port of Pozzallo, its spokesman Gorden Isler tweeted.
The ship had earlier been denied entry into a port in Malta.
It was the first mission for the ship, which left the port of Rostock, Germany in April to sail towards the Mediterranean.
While welcoming Italy's decision, the NGO expressed frustration at having to delay disembarking in order to sail from Palermo to the southeastern port of Pozzallo.
"How did you get the idea to send a rescue ship with hundreds of exhausted people and 150 children on a two-day voyage, even though it was already in front of a safe harbour," the NGO tweeted late Wednesday.
Italy is one of the main points of entry into Europe for migrants from North Africa, mainly from Libya and Tunisia.
More than 13,350 people have arrived on Italian shores since January, three times more than in the same period a year earlier, according to the interior ministry.
Italian Interior Minister Luciana Lamorgese and European Commissioner for Home Affairs Ylva Johansson were in Tunisia on Thursday to offer economic aid in exchange for a greater effort by Tunis to prevent migrants from reaching Europe.
At least 685 migrants have died since January in the Mediterranean, the vast majority of them on the central route that is considered the deadliest, according to the UN.