This screen can be displayed from the TransactionResultsScreen at the end of the any of the transactions creation process, or from the TransactionHistory upon tapping on the row. It contains the full information about the transaction itself.
Figma: https://www.figma.com/file/dkDQHRa1zq7tU58MiL6hBR/SaFi---UI---MVP-(Shared)?node-id=13119%3A72522&t=uYL1LyEUSiWRThLT-0

TransactionDetailsScreen is common for any type of transactions. But since the entities, responsible for gathering the data for each type of transactions is different, we came to the following approach to reuse the code:

The screen itself is built using TransactionDetailsAdapter, which is in fact a UI model for this screen. There also is a TransactionDetailsAdaptersFactory, which is responsible for transforming different transaction entities into TransactionDetailsAdapter. This adapter is then passed to the TransactionResultsScreen, so it knows what data to display.

TransactionDetailsScreen displays the full details of the transaction, including amount, sender and beneficiary, category, type, date, status. For the OTC cash-in transactions there is a possibility to cancel the pending transaction. For some of the transactions there is a button for downloading the PDF file with the transaction details. For the interbank transactions with the large amount there is a split transaction functionality, and details should reflect all the subtransactions as a separate blocks.

All the future transaction results should reuse this component.