On This Page

{#jumplink-list}  
[Markdown](/docs/cybs/en-us/platform/developer/all/rest/rest-getting-started/restgs-sdk-intro/restgs-sdk-key-intro/restgs-sdk-key-shared-secret-intro.md)  
Filter  
FILTER BY TAG

Create a Shared Secret Key Pair {#restgs-sdk-key-shared-secret-intro}
=====================================================================

This section describes how to create a shared secret key pair and test that it works. A shared secret key pair consists of a *key ID* and a *shared secret key*, which you must have in order to construct JWT messages and enable MLE.

(Optional) Meta Keys
:
If you are using a portfolio or merchant account, you have the option to create a *meta key* of a shared secret key pair. Meta keys enable an organization administrator to assign a single shared secret key pair to some or all transacting merchants in their organization. The purpose of a meta key is to reduce the time needed to manage an organization's keys. For example, by assigning the same meta key to all of your transacting merchants, you only need to update one key when it expires instead of having to update each transacting merchant's key.
:
For more information about meta keys, see the [Meta Key Creation and Management](https://developer.cybersource.com/docs/cybs/en-us/security-keys/user/all/ada/security-keys/keys-meta-intro.md "") section in the *Creating and Using Security Keys User Guide*.
{#restgs-sdk-key-shared-secret-intro_d74e35}

Step 2A: Create a Shared Secret Key Pair {#restgs-sdk-key-shared-secret-create}
===============================================================================

Follow these steps to create a shared secret key pair:

1. Log in to the `Business Center`:
   * **Test:** [`https://businesscentertest.cybersource.com`](https://ebc2test.cybersource.com/ebc2/ "")
   * **Production:** [`https://businesscenter.cybersource.com`](https://ebc2.cybersource.com/ebc2/ "")
     {#restgs-sdk-key-shared-secret-create_step-1}
     {#restgs-sdk-key-shared-secret-create_step-1}
   2. On the left navigation panel, choose ![](/content/dam/documentation/cybs/en-us/common/images/ebc/ebc-icon-pymt-config.svg/jcr:content/renditions/original) Payment Configuration \&gt; Key Management.  
      ![](/content/dam/documentation/cybs/en-us/topics/platform/rest/getting-started/images/left-navigation.png/jcr:content/renditions/original) {#restgs-sdk-key-shared-secret-create_step-2}
      {#restgs-sdk-key-shared-secret-create_step-2}
   3. Click + Generate key on the Key Management page.  
      ![](/content/dam/documentation/cybs/en-us/topics/payments-processing/payment-services/sec-keys/images/generate-key.png/jcr:content/renditions/original) {#restgs-sdk-key-shared-secret-create_step-3}
      {#restgs-sdk-key-shared-secret-create_step-3}
   4. Under REST APIs, choose **REST -- Shared Secret** and then click **Generate key**.  
      ![](/content/dam/documentation/cybs/en-us/topics/payments-processing/payment-services/sec-keys/images/security-keys-create-key.png/jcr:content/renditions/original)  
      ![](/content/dam/documentation/cybs/en-us/topics/platform/rest/getting-started/images/generate-key-bttn.png/jcr:content/renditions/original)  
      The REST API Shared Secret Key page appears. {#restgs-sdk-key-shared-secret-create_d17e26}
      {#restgs-sdk-key-shared-secret-create_d17e26}
   5. Click **Download key** ![](/content/dam/documentation/cybs/en-us/common/images/ebc/ebc-bttn-download.svg/jcr:content/renditions/original) .  
      The *.pem* file downloads to your desktop.  
      ![](/content/dam/documentation/cybs/en-us/topics/platform/rest/getting-started/images/shared-secret-key-download.png/jcr:content/renditions/original)  
      The **Key** value is your *key ID* and the **Shared Secret** value is your *shared secret key*.

   > IMPORTANT
   > Securely store the key credentials and *.pem* file in your system. These credentials are required in order to implement certain products, and you must be able to access them.
   > {#restgs-sdk-key-shared-secret-create_d17e46}
   > {#restgs-sdk-key-shared-secret-create_d17e46}

{#restgs-sdk-key-shared-secret-create_d17e18}  
To create or submit another key, click **Generate another key**. To view all of your created keys, go to the Key Management page.

**What to do next**
:
To test your shared secret key pair, see [Step 2B: Test Your Shared Secret Key Pair](/docs/cybs/en-us/platform/developer/all/rest/rest-getting-started/restgs-http-message-intro/restgs-security-key-pair-intro/restgs-security-key-pair-test-task.md "").

Step 2B: Test Your Shared Secret Key Pair {#restgs-sdk-key-shared-secret-test}
==============================================================================

After creating your shared secret key pair, you must verify that your key pair can successfully process API requests. Follow these steps to validate your key pair in the Developer Center and the `Business Center`.

1. Go to the Developer Center's API Reference page:  
   [https://developer.cybersource.com/api-reference-assets/index.html#payments_payments_static-home-section](https://developer.cybersource.com/api-reference-assets/index.md#payments_payments_static-home-section "")
2. On the left navigation panel, click **[API Endpoints \& Authentication](https://developer.cybersource.com/api-reference-assets/index.md#static-api-endpoints-section "")**.
3. Under Authentication and Sandbox Credentials, go to the Authentication Type drop-down menu and choose **HTTP Signature**.
4. Enter your organization ID in the **Organization ID** field.
5. Enter your key ID in the **Key** field.
6. Enter your shared secret key in the **Shared Secret Key** field.
7. Click **Update Credentials**.  
   A confirmation message displays stating that your credentials are successfully updated.  
   ![](/content/dam/documentation/cybs/en-us/topics/platform/rest/getting-started/images/restgs-dev-center-http.png/jcr:content/renditions/original)
8. Go to the Developer Center's API Reference and navigate to **Payments \&gt; `POST` Process a Payment**.
9. Click **Send**.  
   ![](/content/dam/documentation/cybs/en-us/topics/platform/rest/getting-started/images/restgs-dev-center-ex.png/jcr:content/renditions/original)  
   A message confirms that your request was successful with the status code 201.  
   ![](/content/dam/documentation/cybs/en-us/topics/platform/rest/getting-started/images/rstgs-success-201.png/jcr:content/renditions/original)
10. Log in to the `Business Center`:  
    [`https://businesscentertest.cybersource.com`](https://ebc2test.cybersource.com/ebc2/ "")
11. On the left navigation panel, choose ![](/content/dam/documentation/cybs/en-us/common/images/ebc/ebc-icon-trxn-mgmt.svg/jcr:content/renditions/original) **Transaction Management \&gt; Transactions**.
12. Under Search Results, verify that the request ID from the test authorization response is listed in the Request ID column.  
    If the test authorization was successful, a success message is present in the corresponding Applications column.  
    ![](/content/dam/documentation/cybs/en-us/topics/platform/rest/getting-started/images/restgs-verify-key-pair.png/jcr:content/renditions/original)  
    RELATED TO THIS PAGE

* [Getting Started with REST](https://developer.cybersource.com/docs/cybs/en-us/platform/developer/all/rest/rest-getting-started/restgs-intro.md)
* [Response Codes](https://developer.cybersource.com/api/reference/response-codes.md)
* [API Field Reference Guide](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/rest/api-fields/rest-api-fields-intro.md)
* [API Reference Sandbox](https://developer.cybersource.com/api-reference-assets/index.md#static-home-section)
* [Business Center Test](https://businesscentertest.cybersource.com/ebc2/)
* [Business Center Production](https://businesscenter.cybersource.com/ebc2/)
* [Customer Support](https://support.visaacceptance.com/)

