Dexterity assumes that the template of an add form is just for the form and not the entire page—so it takes the form template and wraps it in another template that uses main_template.
Since your custom template does render the entire page, you should turn off the wrapping using the form.wrap directive:
from five import grok
from plone.directives import form
from plone.directives import dexterity
class BusinessTransactionFormAddForm(dexterity.AddForm):
grok.name('ebpls.app.businesstransactionform')
form.wrap(False)