Load package

<< GaussInt.m

f is our test function, its variables q[i]+(qix, qiy) are considered to be two-dimensional vectors. Dot products q[i].q[i]= qix^2+qiy^2 and
wedge products q[i]⋀q[j] = qix qjy - qiy qjx are explicitly supported.

f = Fold[ 
            Function[{x, i}, {x[[1]] + q[i], 
                x[[2]] ((-1/2) (q[i] . q[i]) 
                        Exp[I/2 Wedge[x[[1]], q[i]]] + 
                      2  I Sin[1/2 Wedge[x[[1]], q[i]]])}], {q[1], 
              1}, {2, 3}][[2]] (-1/2) (q[1] . q[1]) 
        Exp[-q[1] . q[1]/2 - q[2] . q[2]/2 - q[3] . q[3]/2]

GaussInt[f, {q[1], q[2], q[3]}]

GaussInt[Exp[-q[1] . q[1]], {q[1]}]