I have few question around algorand smart contracts and ASA creation.
Creation of ASA can be done using some sdk or it can be done using smart contracts?
2.The approach i am following in an application is
I created a ASA using normal java transaction.
I created another api to create application and in the approval program wrote a inner trx to check for transfer of asa
next is after compiling approval program the result that is returned i changed that to escrow address.
next i created a group transaction with app call txn,optin asset txn and transfer asa in java and compiled this group tnx to transfer asa
Both can be done. It depends on the use case. But I would say 90% of the applications most likely do not need the ASA to be created by a smart contract. This is only for advanced use cases where ASA need to be dynamically created.
ASA can be created either with SDKs (signing the AssetCreate both with a Single Signature or Multi Signature accounts) either with Smart Contract (signing the AssetCreate both with a Smart Signature or an Inner Transaction).
Hello @chahat , also was going through this problem, I think still the best way is to create lots of ASAs using the goal command(you can calculate how many your project needs by factoring in how much you will issue on a liquidity pool if you will so as to price your ASA, and then some other for your project’s application), then create a smart contract that algorithmically churns out ASAs based on the logic you prefer and then now manually send the ASAs you created using goal again to this smart contract, then reconfigure that smart contract as the new reserve address. I still think it is a waste creating ASAs purely by a smart contract especially using PyTeal/TEAL, you can use Reach though if you want to have a contract command both creation and issuing of ASAs, at least with Reach you wouldn’t need a security audit