---
title: Use a credit card test certificate
description: Learn how to use a test certificate with credit card payments app extensions.
source_url:
  html: 'https://shopify.dev/docs/apps/build/payments/credit-card/test-certificate'
  md: 'https://shopify.dev/docs/apps/build/payments/credit-card/test-certificate.md'
api_name: payments-apps
---

# Use a credit card test certificate

This guide provides information on using Shopify test certificates to test a credit card payments apps extension.

**Note:**

You should only use this test certificate for non-production credit card payments apps extensions.

***

## Requirements

* You've [created a credit card payments app extension](https://shopify.dev/docs/apps/build/payments/credit-card/use-the-cli).
* You're a [Partner organization owner](https://help.shopify.com/partners/dashboard/account-access).

***

## Using the test certificate

To use Shopify's test certificate, set the value of the `encryption_certificate_fingerprint` field to `Test Certificate` in your [credit card payment extension](https://shopify.dev/docs/apps/build/payments/credit-card/use-the-cli?framework=remix#create-a-payments-extension) then, [deploy and release the extension](https://shopify.dev/docs/apps/build/payments/credit-card/use-the-cli?framework=remix#deploy-and-release-your-extension).

```text
encryption_certificate_fingerprint = "Test Certificate"
```

With the test certificate configured, Shopify will always send the same static [test payload data](https://shopify.dev/docs/apps/build/payments/credit-card/test-certificate#test-payload) in the `payment_method` hash for every payment session request.

***

## Test private key

The private key which is used to decrypt the encrypted payload.

```text
-----BEGIN EC PRIVATE KEY-----
MHcCAQEEIPdk1Yrjq9UNZBPRFfY2/JFiNXVWbKNwkhqADTm46XUyoAoGCCqGSM49
AwEHoUQDQgAEPwwyTcNvVwInu9COj3WZooI+Aj1/KRolD6u7XmjpuBXlHq2nopJh
qkKwdrnUzWjkiJuY1qrUucT2mH+VkUGBSA==
-----END EC PRIVATE KEY-----
```

***

## Test certificate

The test certificate which is used to encrypt the test payload.

```text
-----BEGIN CERTIFICATE-----
MIIBvTCCAWMCCQCvVT/6sodnSjAJBgcqhkjOPQQBMGcxCzAJBgNVBAYTAkNBMQsw
CQYDVQQIDAJPTjEPMA0GA1UEBwwGT3R0YXdhMRAwDgYDVQQKDAdTaG9waWZ5MSgw
JgYDVQQDDB9TaG9waWZ5UGF5bWVudHNQYXJ0bmVyc1BsYXRmb3JtMB4XDTIzMDYw
OTE1NTgxM1oXDTI0MDYwODE1NTgxM1owZzELMAkGA1UEBhMCQ0ExCzAJBgNVBAgM
Ak9OMQ8wDQYDVQQHDAZPdHRhd2ExEDAOBgNVBAoMB1Nob3BpZnkxKDAmBgNVBAMM
H1Nob3BpZnlQYXltZW50c1BhcnRuZXJzUGxhdGZvcm0wWTATBgcqhkjOPQIBBggq
hkjOPQMBBwNCAAQ/DDJNw29XAie70I6PdZmigj4CPX8pGiUPq7teaOm4FeUeraei
kmGqQrB2udTNaOSIm5jWqtS5xPaYf5WRQYFIMAkGByqGSM49BAEDSQAwRgIhAPIA
kL2hr+QMnhvKSFJjsQPyUj8FEogfjBECPjlXbAtoAiEA9D6Ub/wCCfsbjcz89k4W
Xill1yq6fp9cHlnIpGQfVpw=
-----END CERTIFICATE-----
```

***

## Test payload

This section details the payloads you'll receive, which depends on the API version of your payments app extension.

## Encrypted message contents

##### API version 2024-07 and later

```json
d2Zlzlt2ePtL8wB0AeiAdEfD2L+vt8evkaVki7Y9qMHVN8EAbNQjTdLvZoAjUd9Mbo2Zt0BnJaHleKZUF7aGIvQ+LIAiuJFt2GNKtBbmArA9FLoEu5ltteKRtNyXeJiUqjP6LOK3XT6rhSGlhA6nAhXqi7r5RE2z55cZtRqaE1WdQ/E66XHYv+DRv6cMVwES1A==
```

##### API version 2023-07

```json
mz3MA17RMq/OpuppvzBrd8C47DgH4LBHbyT9E+o9Z3/IxUP1UhC+PAd/UW+PjfiA+IXeqyoxFuuynW9Sntr1iiA4qjXJlsTUmZepIJoXhfAW5ZgjemViB1+Cs6roKAonREupFh6xznPyFilYZ6v3sSHIeArD8MHp2+WJb2Rj
```

##### API version 2023-04 and earlier

```json
XQ3BAPK0UieJOObj05TCU/HvBmDhesiHbV/VCG43F2xWEmQRTPPDNiP8fBpGHNlobybZQpUt8fTnVhP151aAxKzjFWHAW2Oz2DEtVc0N3YG3Af7mwsXtQXXUY/nddldoVf2V4t18SAiJuof8TrgO76T1wydb
```

## Decrypted message contents

##### API version 2024-07 and later

```json
{
    "type": "card",
    "data": {
        "full_name": "Percy Parker",
        "pan": "4242424242424242",
        "month": 12,
        "year": 2050,
        "verification_value": "123",
        "network": "visa"
    }
}
```

##### API version 2023-07

```json
{
    "type": "card",
    "data": {
        "full_name": "Percy Parker",
        "pan": "4242424242424242",
        "month": 12,
        "year": 2050,
        "verification_value": "123"
    }
}
```

##### API version 2023-04 and earlier

```json
{
    "type": "card",
    "full_name": "Percy Parker",
    "pan": "0123456789012345",
    "month": 12,
    "year": 2050,
    "verification_value": "123"
}
```

***
