How to receive bitcoin from the website I want to create a website which needs to achieve the following scenarios:

1.The user can send bitcoin to the bitcoin address we provide. 

2.The website can create a new address every time the user clicks on the send button. For example:
2.1 The user enters 1 bitcoin and then click on Purchase
2.2 The website provide him an address and ask him to transfer the bitcoin to it.
2.3 We log the transaction as waiting for transfer.
2.4 The user enters 1 bitcoin again and click on Purchase button
2.5 The website provide him with another address and log the transaction
2.6 Mark the transaction as completed when the user transfers the money

3.We log each transaction and when the user sends bitcoin, we can detect and mark the transaction as completed.


What APIs should i use to achieve all of these problems above? Can blockchain info's API do?
Actually, all you need is just some basic bitcoin wallet client. There are many opensource wallet clients, most of which will satisfy your needs. Your could search for them on Google.