# Create a New Project 
source: https://developer.mastercard.com/benefit-allocation-service-mtls/documentation/tutorials-and-guides/create-project-tutorial/index.md

## What you will learn {#what-you-will-learn}

* How to create a new Benefit Allocations Service(MTLS) API project.
* Obtain the keys required for the Sandbox environment.
* Get access to the Sandbox environment.

<br />

Click **Next** to begin.

### Step 1 - Create a new API project {#step-1---create-a-new-api-project}

Once you are logged into [Mastercard Developers](https://developer.mastercard.com/), go to the My Projects section and click **Create New Project** in the upper right corner of the screen.

![My Projects screen](https://static.developer.mastercard.com/content/benefit-allocation-service-mtls/uploads/sandbox-tutorial/my-proj.png)

### Step 2 - Add the Benefit Allocations service(MTLS) API {#step-2---add-the-benefit-allocations-servicemtls-api}

Enter a descriptive name for your project

![Create project - Enter project name](https://static.developer.mastercard.com/content/benefit-allocation-service-mtls/uploads/sandbox-tutorial/projectName.png)

From the dropdown list, select **Benefit Allocations service(MTLS)** and then click **Proceed**.

![Create project - Select API](https://static.developer.mastercard.com/content/benefit-allocation-service-mtls/uploads/sandbox-tutorial/apiName.png)

### Step 3 - Create Certificate {#step-3---create-certificate}

Once the Certificate alias and Keystore password fields are filled in, click **Proceed** . If you already have your own Certificate, you can click **Skip this step**

![Create project - Enter MTLS cert alias and password](https://static.developer.mastercard.com/content/benefit-allocation-service-mtls/uploads/sandbox-tutorial/createMTLSCert.png)

### Step 4 - Create Signing Certificate {#step-4---create-signing-certificate}

Once you have a populated the Client Signature Verification Key alias and Keystore password, then click **Create Project**.

![Create project - Create client encryption and client signature verification keys](https://static.developer.mastercard.com/content/benefit-allocation-service-mtls/uploads/sandbox-tutorial/createSigningKeys.png)

### Step 5 - Mastercard generated keys {#step-5---mastercard-generated-keys}

Download the files and store them in a safe place. You can also download the client encryption key from the **Sandbox credentials** tab in your project dashboard, but this is the only time you'll be able to download the client verification key.

![Create project loading icons and download keys button](https://static.developer.mastercard.com/content/benefit-allocation-service-mtls/uploads/sandbox-tutorial/generatingKeys.png)

Once ready, click **Open Project**.

### Step 6 - Skipping client keys, client encryption {#step-6---skipping-client-keys-client-encryption}

If you still choose to skip click **Proceed** after reading the text carefully.

![Skip add credentials confirmation modal](https://static.developer.mastercard.com/content/benefit-allocation-service-mtls/uploads/sandbox-tutorial/ifSkip.png)

Because the client encryption key is required, on the project dashboard click on **Sandbox Credentials** . Your client certificate will be at the top followed by a section called **API Keys**.

![Project Summary screen](https://static.developer.mastercard.com/content/benefit-allocation-service-mtls/uploads/projectView.png)
![Project Sandbox credentials screen - MTLS certs](https://static.developer.mastercard.com/content/benefit-allocation-service-mtls/uploads/sandbox-tutorial/clientCert.png)
![Project Sandbox credentials screen - API keys](https://static.developer.mastercard.com/content/benefit-allocation-service-mtls/uploads/sandbox-tutorial/ifSkip2.png)

In order to generate a client encryption key, click on **Add Key** . From the menu, select **Client Encryption Key** , and then click on **Proceed**.

![Add client encryption key flow](https://static.developer.mastercard.com/content/benefit-allocation-service-mtls/uploads/sandbox-tutorial/pemGenerate-clientEnc.png)

Download the key file and store it in a safe place. You can also download the client encryption key from the **Sandbox credentials** tab where you just went to generate this key.

![Add client encryption key confirmation screen](https://static.developer.mastercard.com/content/benefit-allocation-service-mtls/uploads/sandbox-tutorial/clientEnc2.png)

Once you click **Open Project** and go back to **Sandbox Credentials** you should now see the fingerprint there.

![Project Sandbox credentials screen - Client encryption key](https://static.developer.mastercard.com/content/benefit-allocation-service-mtls/uploads/sandbox-tutorial/clientEnc3.png)

Because client signature verification is required you still have to add another key to your project. If you want to use Mastercard generated keys go to the **next step** . If you'd like to use Signing and provide your own CSR file go to **step 8**.

### Step 7 - Mastercard generated client verification {#step-7---mastercard-generated-client-verification}

In order to generate a client signature verification key, from within your project, click **Sandbox credentials** and scroll past your certificate to the **API Keys** section and click on **Add Key** . On the menu that shows up select **Client Signature Verification Key** and then click **Proceed**.

![Add client signature verification key flow](https://static.developer.mastercard.com/content/benefit-allocation-service-mtls/uploads/sandbox-tutorial/clientSig.png)

When selecting a method click **Generate a new private key** and click proceed.

![Select generate a new private key](https://static.developer.mastercard.com/content/benefit-allocation-service-mtls/uploads/sandbox-tutorial/generated.png)

Provide a keyalias and password and make sure to store this somewhere safe as you will not be able to access or change it later, then click **Generate Keys** .
![Enter key alias and password](https://static.developer.mastercard.com/content/benefit-allocation-service-mtls/uploads/sandbox-tutorial/generated-keyAndPwd.png)

Your client signature verification key will now be generated. Make sure to download and store the key file somewhere safe along with all the other files generated during this tutorial. You will not be able to download this file again. Once ready click **Open Project**
![Add client signature verification confirmation screen](https://static.developer.mastercard.com/content/benefit-allocation-service-mtls/uploads/sandbox-tutorial/generatedP12.png)

![Project Sandbox credentials screen - Client signature verification key](https://static.developer.mastercard.com/content/benefit-allocation-service-mtls/uploads/sandbox-tutorial/ifAliasAndPwd2.png)

If you're interested in providing your own csr file for client signature verification, i.e. Signing, go to **Step 8** for more information on how to add that to your project.

Otherwise, you now have the certificates for authentication and encryption necessary to invoke Benefit Allocations Service(MTLS) API on the Sandbox environment. Please contact your Mastercard Representative/Account Manager to get test data and to configure your API key on our platform.

### Step 8 - Signing {#step-8---signing}

In order to provide your own csr for client signature verification, from within your project, click **Sandbox credentials** and scroll past your certificate and click on **Add Key** . On the menu that shows up select **Client Signature Verification Key** and then click **Proceed**.

![Add client signature verification key flow](https://static.developer.mastercard.com/content/benefit-allocation-service-mtls/uploads/sandbox-tutorial/clientSig.png)

When selecting a method click **Use an existing private key** and click proceed.

![Select use an existing private key](https://static.developer.mastercard.com/content/benefit-allocation-service-mtls/uploads/sandbox-tutorial/signing.png)

Provide a keyalias and upload the corresponding CSR file. Once ready click **Create Key**
![Enter key alias and upload CSR file](https://static.developer.mastercard.com/content/benefit-allocation-service-mtls/uploads/sandbox-tutorial/provideSigning.png)

You now have added your own csr file to the project, but if you already had another key, which would be the case if you opted to have mastercard generate your during step 4 or 5, then you must activate your new key. To do so, go back to the **Sandbox credentials** tab from within your project, scroll down to the **API Keys** section. Here find the keyalias you provided earlier when uploading and click on **Manage** to show a dropdown. On this menu click activate and now you'll be able to use your own CSR file as your client signature verification key.
![Project Sandbox credentials screen - Client signature verification key](https://static.developer.mastercard.com/content/benefit-allocation-service-mtls/uploads/sandbox-tutorial/activateSigning.png)

You now have the certificates for authentication and encryption necessary to invoke Benefit Allocations Service(MTLS) API on the Sandbox environment. Please contact your Mastercard Representative/Account Manager to get test data and to configure your API key on our platform.
