This is not a simple task. It involves setting up the VPN (I’m assuming IPSec) and then setting up a GRE tunnel between the two endpoints. This can be done a little easier using tunnel protection profiles.
Once a GRE tunnel is established, one would then configure BGP to use the tunnel interfaces.
Performance will lack, since the GRE and IPSec tunnels will reduce the max mtu on the link.
You’re basically mixing apples and oranges: If both routers use BGP, ensure they both have the proper neighbor adjacencies to each other.
Once BGP routing is established, THEN build your VPN tunnel (IPSEC, SSL, etc) according to the tunnel type you want to use…