# Deploying
source: https://developer.mastercard.com/mastercard-checkout-solutions/documentation/deploy/index.md

Once you have a test site working properly in sandbox, you need to complete a certification process with Mastercard. Your [Mastercard representative](https://developer.mastercard.com/mastercard-checkout-solutions/documentation/support/index.md#get-help) will guide you through this process prior to requesting production access. After completing the certification process, you can request production access to start accepting live transactions.
Note: This production project will have no data from any of the sandbox projects. A production project will have a separate SRC Client ID and you will need to add/create new keys and upload your DPA data.

## 1. Request Production Access {#1-request-production-access}

1. Go to [Mastercard Connect](https://www.mastercardconnect.com) and access **My Items**.
2. Open Mastercard Checkout Solutions onboarding application.
3. In the dashboard, switch to the **Production** tab and click **Request Access**.
4. Fill out all the necessary details such as Project Name, Description, and provide the Support Email Address.
5. Select the Requirements check box to confirm you can accept payment credentials in the payload response sent by the Click to Pay System.
6. Click **Submit**.

![Production access request](https://static.developer.mastercard.com/content/mastercard-checkout-solutions/documentation/images/request_production_access.png "Production access request")

Your production access request is sent to Mastercard for approval. The **Notifications** tab displays the status of your production access request. If your production access is still under review and has not been approved, the **Notifications** tab displays the status of the approval request along with the details submitted for production access.

![Production access request](https://static.developer.mastercard.com/content/mastercard-checkout-solutions/documentation/images/production_access_pending.png "Production access request")

A new notification is displayed once your production access request has been approved, you can then view your production project details and edit the project details except for your production project name.

![Production access approved](https://static.developer.mastercard.com/content/mastercard-checkout-solutions/documentation/images/production-access-approved.png "Production access approved")

## 2. Generate Keys {#2-generate-keys}

You will need to generate a new set of keys in your production project. You can use the **Key Management** tab to create new keys.

### Generating Private Keys {#generating-private-keys}

Generate private keys for production using the **Key Management** tab in the Mastercard SRC Onboarding and Registration Application in Mastercard Connect.

![Add API Signing and Encryption Keys](https://static.developer.mastercard.com/content/mastercard-checkout-solutions/documentation/images/add-signing-encryption-keys.png "Add API Signing and Encryption Keys")

To learn more see **Adding New Keys** in \[Key Management\] section of the Integration guide.

|              Name              |                       Purpose                       |                                                                                                               Description                                                                                                               |
|--------------------------------|-----------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **API Signing Key (OAuthkey)** | Authenticated API calls                             | When you call our APIs you will need to include an OAuth Authentication header. You use the private part of this Signing Key to generate this OAuth header, so that the Mastercard API server can authenticate your access to the APIs. |
| **\[Payload\] Encryption Key** | Payload encryption for payment credentials security | Mastercard uses the public part of this Encryption Key to encrypt response payloads containing payment card credentials. You will need the corresponding private part to decrypt these responses.                                       |

Tip: You can check your API Signing Key using Insomnia. Detailed instructions are provided at [use-insomnia-rest-client-for-mastercard-apis](https://developer.mastercard.com/mastercard-send/tutorial/using-insomnia-with-send-apis/).

## 3. Download Public Keys {#3-download-public-keys}

In addition to encrypting the payload with your public \[Payload\] Encryption Key, Mastercard signs it using the private part of the Payload Signing Key. Use the corresponding public part to verify the payload has come from Mastercard.

Download the public Payload Signing Key via the following URL:

| Environment |                URL                |
|-------------|-----------------------------------|
| Production  | <https://src.mastercard.com/keys> |

To learn more see the Key Management \<\<Provide link here\>\> section of the Integration guide.

## 4. Use Production Endpoints {#4-use-production-endpoints}

Register your DPAs using the DPA Registration API. Refer to \[Registering your DPA Data\] to learn how to register DPAs in a batch and check the status of the batch load.

Access the `transaction/credentials` endpoint to retrieve the encrypted payload from the Click to Pay System. See [Checkout API Reference](https://developer.mastercard.com/mastercard-checkout-solutions/documentation/api-reference/apis/index.md) for details.

Change to the production endpoints for the APIs:

|        Endpoint         |                             URL                              |
|-------------------------|--------------------------------------------------------------|
| DPA Registration API    | <https://api.mastercard.com/src/onboarding>                  |
| transaction/credentials | <https://api.mastercard.com/src/api/transaction/credentials> |
| confirmations           | <https://api.mastercard.com/src/api/confirmations>           |

## 5. Test in Production {#5-test-in-production}

Replace the test card details provided with your own test card data and send the transaction through Mastercard Click to Pay. Test submitting the results of the authorization to Mastercard Click to Pay.

## 6. Go Live {#6-go-live}

Go live with your implementation of Secure Remote Commerce.
