Arbitrary-length currying
JavaScript (ES6), 18 bytes

f=n=&gt;m=&gt;m?f(m+n):n


Pass a falsy value to retrieve the sum. Zeros could be allowed for a cost of 2 bytes.

Try it online

Ungolfed:

f = function(n) {
    return function(m) {
        if (m) {
            return f(m+n);
        } else {
            return n;
        }
    }
}