Barclays Bank is to pay $298m (£190m) to settle charges that it violated US sanctions in dealings with Cuba, Iran, Libya, Sudan and Burma.
The bank was charged with breaching the International Emergency Economic Powers Act and the Trading with the Enemy Act in dealings between 1995 and 2006.
The settlement was detailed in US court documents filed on Monday.
According to the documents, Barclays voluntarily disclosed some of the transactions, and co-operated fully.
Barclays has agreed to pay $149m to the US government and a separate $149m in a deferred prosecution agreement with the district attorney in New York.
A federal judge must still approve the agreement.
Barclays fully acknowledged responsibility for its actions, according to the documents.
The bank said earlier this month that it had set aside £194m in the first half of the year to cover a possible resolution to the case.
According to the court documents, Barclays facilitated and hid transactions for countries facing US sanctions.
According to the court papers, Barclays concealed the transactions that it carried out with banks in the sanctioned countries.
As early as November 1987, sanctioned banks directed Barclays not to mention their names on payment messages sent to the United States, the documents say.
However, in 2006 Barclays voluntarily disclosed four transactions that violated US sanctions, and the bank began cooperating with a broad review by federal and state prosecutors in 2007.
The bank could not immediately be contacted for comment.