Best way to install private/paid plugins with Composer?

I’m trying to include a MU-Plugin thats hosted on my private bitbucket.

I’ve added the following to my projects composer.json

{
    "type": "vcs",
    "url": "[email protected]:kjprince/disable-year-month-uploads.git"
    }, 

In the require section I’ve added this:

"kjprince/disable-year-month-uploads": "dev-master"

When I do composer update it fails and shows the following error:

[LogicException]
  Downloader "Composer\Downloader\GitDownloader" is a source type downloader and can not be used to dow
  nload dist

I updated my composer.json to use source instead of dist and I get the error below:

Skipped branch master, Package kjprince/disable-year-month-uploads's source key should be specified as {"type": ..., "url": ..., "reference": ...},
{"url":"[email protected]:kjprince\/disable-year-month-uploads.git","type":"git"} given.

My plugin contains the following composer.json

{
    "name": "kjprince/disable-year-month-uploads",
    "version": "master",
    "type": "wordpress-muplugin",
    "source": {
        "url": "[email protected]:kjprince/disable-year-month-uploads.git",
        "type": "git"
    }
}

Anyone know what’s going on here?