# Create a Loyalty Transactions Sandbox Project
source: https://developer.mastercard.com/transactions-service/documentation/tutorials-and-guides/sandbox-access-tutorial/index.md

Set up Sandbox access for Loyalty Transactions Service, listed as **Loyalty Transactions Service** in project creation. Before testing a rewards transaction search, you need project credentials, Client ID enablement, and an available test account RANAC. Creating a project alone does not complete enablement.

This guide covers access and test-account preparation. For a signed request, an example response containing points earned, and success checks, follow [Test loyalty transactions in Sandbox](https://developer.mastercard.com/transactions-service/documentation/quick-start-guide/index.md). Use [Integration and Testing](https://developer.mastercard.com/transactions-service/documentation/tutorials-and-guides/api-testing-tutorial/index.md) for error-path tests before [requesting production access](https://developer.mastercard.com/transactions-service/documentation/tutorials-and-guides/production-access-tutorial/index.md).

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

* How to create Mastercard Developers Sandbox project
* How to configure it
* How to set up test data

## Create a Project {#create-a-project}

The Loyalty Transactions Service supports **OAuth 1.0a** authentication methods. Choose the path that matches your authentication preference.

### OAuth 1.0a Project {#oauth-10a-project}

1. Go to your [My Projects](https://developer.mastercard.com/dashboard) page.

2. Click the **Create New Project** button in the upper right portion of the screen.
   ![My Projects](https://static.developer.mastercard.com/content/transactions-service/uploads/create_project.png)

3. Enter a descriptive name for your project.
   ![Name project](https://static.developer.mastercard.com/content/transactions-service/uploads/configureprojects.png)

4. Indicate whether you are creating a project on behalf of a client (optional).

5. Click on the **Select your API service** dropdown list and select the **Loyalty Transactions Service** option.
   ![Create new project](https://static.developer.mastercard.com/content/transactions-service/uploads/select_an_api_transactions_service.png)

6. When prompted, select **OAuth 1.0a** as your authentication method.

7. Enter the key alias and keystore password for generating your OAuth 1.0a signing key.
   ![Project Credentials](https://static.developer.mastercard.com/content/transactions-service/uploads/projectcredentials.png)

8. Click **Confirm and Continue** to complete the Sandbox setup.

## Add Mastercard Loyalty Management API to your project {#add-mastercard-loyalty-management-api-to-your-project}

(This step is included in the project creation flow above. If you need to add the API to an existing project, follow these steps.)

1. Click on the **Choose API** dropdown list and select the **Mastercard Loyalty Management** option.
2. Click **Continue** . ![Add API](https://static.developer.mastercard.com/content/transactions-service/uploads/select_an_api.png)

## Name Your Project {#name-your-project}

1. Enter a descriptive name for your project and click **Continue**.
2. You can optionally choose to invite other people to your project by selecting the **Invite Team Members** option. Invited members will have full access to the project. ![Name project](https://static.developer.mastercard.com/content/transactions-service/uploads/create_project_name.png)

## Sandbox OAuth Credentials {#sandbox-oauth-credentials}

The Loyalty Transactions Service supports **OAuth 1.0a** authentication methods. Follow the steps below for the authentication method you are using.

### OAuth 1.0a Credentials {#oauth-10a-credentials}

1. After the project is successfully created, the Sandbox .P12 access credentials will be available for download.
2. Click the **Download key file** button to download a zip file containing the .p12 file required for OAuth authentication in Sandbox.
3. Click **Continue** . Note: You are required to capture the Keystore password and key alias shown on the screen. The Keystore password is used in conjunction with the .p12 file and Client ID for OAuth 1.0a authentication. Click **Confirm and Continue** to complete the Sandbox setup process.

![Download key file](https://static.developer.mastercard.com/content/transactions-service/uploads/downloadkeys.png)
Note: Downloading Sandbox keys does not complete Client ID enablement. Follow [Share Your Sandbox Client ID](https://developer.mastercard.com/transactions-service/documentation/tutorials-and-guides/sandbox-access-tutorial/index.md#share-your-sandbox-client-id) and wait for confirmation before testing. Use an available Sandbox RANAC; ask your Mastercard representative for a test account if the specification's example is not available to your project. Follow the [Quick Start Guide](https://developer.mastercard.com/transactions-service/documentation/quick-start-guide/index.md) for the first call.

### Share Your Sandbox Client ID {#share-your-sandbox-client-id}

After Sandbox credentials are created, share the project Client ID with your Mastercard Product Delivery or CIS Implementation Manager:

1. From the project summary page, go to **Sandbox Keys** and use the **Actions** menu to select **Copy Consumer Key**.
2. Paste the Client ID value into your email to your Account Manager or assigned CIS Implementation Manager.
3. Wait for confirmation that your Client ID has been enabled before beginning Sandbox API testing.

For more details on supported authentication methods, see [API Basics - Client Authentication](https://developer.mastercard.com/transactions-service/documentation/api-basics/index.md#client-authentication).

## Generate Encryption Keys {#generate-encryption-keys}

1. The encryption keys are auto-generated. The Client Encryption key will be used to encrypt the request and the Mastercard Encryption key will be used to decrypt the response. ![Encryption keys](https://static.developer.mastercard.com/content/transactions-service/uploads/additionalcredentials.png)
2. Click **Create Project**.
3. After confirmation, you will receive an email confirming the provisioning request and keys.

## Download Encryption Keys {#download-encryption-keys}

1. After the sandbox environment is provisioned, navigate to **My Projects** and select your project.
2. Click on **manage** under **Client Encryption Keys** and click **Download** to download the client encryption key. ![Sandbox keys](https://static.developer.mastercard.com/content/transactions-service/uploads/sandboxkeys.png)
3. The Client Encryption key will be used to encrypt the request and the Mastercard Encryption key will be used to decrypt the response.

Note: **Mastercard Encryption Keys** will be automatically downloaded upon project creation.

## Provide information to Mastercard Product Delivery or CIS Implementation manager {#provide-information-to-mastercard-product-delivery-or-cis-implementation-manager}

Once you have the consumer key, provide it to your Mastercard Product Delivery or Customer Implementation Services Implementation Manager (CIS IM).
To complete this, perform the following steps:

1. From the Mastercard Developers project summary page, go to the Sandbox Keys section, click on the Actions dropdown button, and select the Copy Consumer key option.
2. Paste the Client ID value into an e-mail and send it to your Product delivery or CIS IM. The first 48 characters of this key value (up to the exclamation point) will be the Mastercard API Client ID, which will be used for the Sandbox environment. An example of the key value, with Client ID represented in bold **6Fmo7rEvHmVFTrv73a0m6qfUExPxMzOdY5Rs32KI09979c7f**!aea8847fa4b84b9886143a40ac117aee0000000000000000.
3. Once the CIS team adds the Client ID you would be able to test the APIs.

## Ready to Test in Sandbox {#ready-to-test-in-sandbox}

Once your Client ID is enabled and an available test account is confirmed, follow [Sandbox First Call](https://developer.mastercard.com/transactions-service/documentation/quick-start-guide/index.md#sandbox-first-call) to send and validate a request. Then use [Integration and Testing](https://developer.mastercard.com/transactions-service/documentation/tutorials-and-guides/api-testing-tutorial/index.md) for positive and negative tests, and [Code and Formats](https://developer.mastercard.com/transactions-service/documentation/code-and-formats/index.md) to resolve errors before [moving to Production](https://developer.mastercard.com/transactions-service/documentation/tutorials-and-guides/production-access-tutorial/index.md).
