How can I track bitcoin transaction(I am receiving) programatically? Building something where I will be getting bitcoins in my bitcoin address, so is there a way I can keep track and know who sent me bitcoin?
You can run Bitcoin Core with the walletnotify feature, which will execute a script of your choice every time you receive a payment.

See How do I use walletnotify?

There are also lots of third-party service providers which have APIs to notify you of incoming payments.