Según el manual de referencia, corresponde START TRANSACTION, ya que BEGIN es cláusula de inicio de un bloque de sentencias dentro de un stored procedure.
Respecto del uso del BEGIN para las transacciones, el manual dice:
Cita: BEGIN y BEGIN WORK se soportan como alias para START TRANSACTION para iniciar una transacción. START TRANSACTION es sintaxis SQL estándar y es la forma recomendada para iniciar una transacción ad-hoc . El comando BEGIN difiere del uso de la palabra clave BEGIN que comienza un comando compuesto BEGIN ... END.
Ver
13.4.1. Sintaxis de START TRANSACTION, COMMIT y ROLLBACK 19.2.7. Sentencia compuesta BEGIN ... END