Following is how I've implemented the possibility to charge the stripe fee onto the user.
Unfortunately, Stripe does not offer any API endpoint to get the stripe fees for a specified country so I had to do it manually.
It is not perfect nor elegant but it works.


var stripe.charge = true;
var euCountries = ['AT','BE','BG','CY','CZ','DK','EE','FI','FR','DE','GR','HU','IE','IT','LV','LT','LU','MT','NL','PL','PT','RO','SK','SI','ES','SE','GB'];

/**
 *  the following hash-map is used to calculate the stripe fee to apply to the user
 *  Add here any new country we intend to serve
 */
var stripe_fees = {
    GB: {
        percentage: function(card){
            return (euCountries.indexOf(card.country)>=0) ? 0.014 : 0.029;
        },
        fixed:0.20,
        VAT:1
    },
    IE: {
        percentage: function(card){
            return (euCountries.indexOf(card.country)>=0) ? 0.014 : 0.029;
        },
        fixed:0.25,
        VAT:1.23
    }
};

function charge(card, amount, country){

    // Calculate the Stripe fee to charge the user
    // Setting Stripe percentage and fixed price as GB by default
    var stripePercentage    = stripe_fees.GB.percentage(card) * stripe_fees.GB.VAT
    var stripeFixed         = stripe_fees.GB.fixed * stripe_fees.GB.VAT;

    // ifjacking the stripe percentage and fixed value with the value of the country in the config,if any
    if(country && stripe_fees[country]){
        stripePercentage    = stripe_fees[country].percentage(card) * stripe_fees[country].VAT
        stripeFixed         = stripe_fees[country].fixed * stripe_fees[country].VAT;
    }

    /**
     * Formula to calculate the total amount
     *
     * P(amount)     = amount + transaction_fee
     * S(fixed)      = stripe_fixed * country_vat
     * S(percentage) = stripe_percentage * country_vat
     * T(amount)     = P(amount) + S(fixed) / (1-S(percentage))
     *
     * Example:
     * Irish payment of 40.00 with no transaction_fee
     * P(amount)     = 40 + 0
     * S(fixed)      = 0.25  * 1.23
     * S(Percentage) = 0.014 * 1.23
     * T(amount)     = 40 + 0.3075 / (1 - 0.0174) = 41.01
     */

    return ( parseFloat(amount) + stripeFixed) / (1 - stripePercentage);
};