Smart Contract Crisis

Hello, I’ve been stuck on this for about 2 weeks now. I want a smart contract that will receive AAVE, UNI, SUSHI, USDC, USDT, or DAI from wallets then send those coins received to the wallet that created the contract(on polygon/matic). Can anyone help?

Strictly speaking, smart contracts do not receive any ERC20 tokens. They just have a non-zero balance in these ERC20 token contracts. You can just call up the transfer functions in those token contracts in your smart contract.

Can you show me a full solidity contract with openzeppelin that uses SafeTransfer?

safeTransferFrom(contract IERC20 token, address from, address to, uint256 value)

The contract will only transfer ERC20 tokens upon being called.