EDIT: Alright, this is a duplicate: Can a contract view the details of a transaction, given a transaction id?

Edit2: answer is either to oraclize or do the API call to, for example, etherscan: https://etherscan.io/apis

Lets say user A sends either a token or Ethereum to a contract address B. This generates a transaction ID 0x123abc...

What I would like to do next is to have the user input the transaction ID 0x123abc... into a smart contract function, and to get any of the outputs:

-Current transaction status (Fail, Accept, In-Progress,...)

-From address (which is the wallet address A) and To address (which is the contract address B)

-Token amount (or Eth amount) that was transferred

-Token address (if token was transferred)

-Block number if it is a pass

Is it possible to do this? Any pointer to a document or similar would be great.