working on my paypal integration and its going great - I was wondering that in the case a refund needs to be made is there a way to have a refund made programmatically?
Doing a refund in PayPal is straight forward if you follow the API documentation mentioned by Machine.
You may also find, if you prefer to save money, that you can Void a transaction in PayPal, before it is captured (usually before midnight on the day of the transaction), which is free.
I have found that always sending a void first, then if the void fails, sending the refund works well without much overhead.