Button reference:

using UnityEngine.UI;

[SerializeField]
private Button buyButton;

Subscribe:

void Awake()
{
    buyButton.onClick.AddListener(Buy);
}

Remove:

buyButton.onClick.RemoveListener(Buy);

Enable or disable interaction:

buyButton.interactable =
    coins >= price;