Smart contract ABI

Hi @here, I have a use-case like,
I want to use the one common ABI for the ERC721/ERC1155 smart contracts by changing the ERC721/ERC1155 addresses. Can I use one common ABI for these standard ?

Why I want to use this.

  1. Currently i have a platform for ERC721 & ERC1155 smart contracts deployed on ethereum main chain and i have those smart contracts ABIs stored into my DB. When any user wants to transfer an NFT which is minted or transferred externally on his/her wallet address. Now as this NFT is not exist into my smart contracts so I am asking to user to import their smart contract addresses for which NFTs is being minted or transferred and then using my Platform's ABI to transfer those NFTs to someone else. But here is the error.
    "response": "contract.safeTransferFrom(address,address,uint256) is not a function"

My thinking is that I can use the same ABIs which i already have into my system for all of the ERC721/ERC1155 smart contracts. Correct me If i am wrong?

Thanks in advance!

You can't use the same ABI for ERC721 and ERC1155 contracts because they have different interfaces. Technically, you can merge both ABIs into a single JSON document and use that... But you will still have to use different functions to interact with each token depending on its type.