The transactions do not have addresses. The information in a transaction is not base58check encoded.
Addresses are simply a "shortcut" or "slang" that we humans use to exchange the information that the wallet software needs when it builds transactions. It doesn't actually use the addresses itself in the transaction. When wallets see a transaction, they convert the data that is in the transaction into an address when it displays it to us so that we can use that when talking to other humans. Block explorers do the same thing (attempt to convert raw data back into an address before showing it to us humans).
What is actually in the transaction (and the blockchain) are OUTPUT SCRIPTS. Those output scripts encumber the output with a requirement that must be met if the output is to be used as an input into a new transaction.
So, I could tell you to please:
Create a transaction that has at least one output with an integer value of 100,000 which is encumbered with a requirement to provide an ECDSA signature (using the Secp256k1 curve) of the transaction which can be validated with a public key that will result in a hexadecimal value of 0x359ad1c9d00b23f3279f068efc995eedb63c7ba9 when that public key is first hashed with SHA256 and the result of that is then hashed with RIPEMD160.
Or I could just tell you to please send 0.01 BTC to 15tSHDP5d4ovRJgywCt5MB1NR1BeWrEf7B
These two sentences mean the same thing. The address "15tSHDP5d4ovRJgywCt5MB1NR1BeWrEf7B" encodes all the necessary information for the wallet to know what type of script to create, and what the requirements are for that script (signature type, curve, public key hash value, hash functions to use, order to use the hash functions).
The first one is what the wallet is actually doing. The second is how we humans tell the wallet what to do (or how it tells us what it did). The checksum in the address is just to protect you (the human) from errors such as a typo when you enter the address. The wallet checks the checksum BEFORE it creates the script. If the checksum is incorrect, then it tells you that your address is invalid and it DOES NOT CREATE THE SCRIPT at all. If the checksum IS correct, then the wallet discards the checksum and builds the requested script.