> For the complete documentation index, see [llms.txt](https://docs.payments.thalescloud.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.payments.thalescloud.io/payment-passkeys-issuers/implement-payment-passkeys/create-a-payment-passkey.md).

# Create a payment passkey

### Overview

After the end user signs in to the issuer application and selects a card, they can create a payment passkey.

The payment passkey is linked to the selected card and device.

The flow differs by payment network.

### User experience

#### Visa

<figure><img src="/files/4AqY3ewYIvWZwe0TV73g" alt=""><figcaption><p>Visa user experience for payment passkey creation.</p></figcaption></figure>

Visa requires a short initialization step in an issuer-hosted web page.

This step gets the payment passkeys so the issuer application can display them on the next screen.

Run this step once every 8 minutes for each device.

The selected card does not affect this timer.

#### Mastercard

<figure><img src="/files/QPPwiRoFZt8XYQgw4OIX" alt=""><figcaption><p>Mastercard user experience for payment passkey creation.</p></figcaption></figure>

You cannot check whether a payment passkey already exists on the device before the flow starts.

Let the end user start the creation flow each time.

If a payment passkey already exists, Mastercard shows a different page during the flow.

### Flow

#### 1. Initialize and get payment passkeys (Visa only)

<figure><img src="/files/HSKkk7LJpXUEiwZS6eGc" alt=""><figcaption><p>Visa initialization flow for payment passkey creation.</p></figcaption></figure>

{% hint style="info" %}
This step is required for Visa only.
{% endhint %}

The D1 SDK redirects the end user to an issuer-hosted web page, such as a loading page.

That page loads the D1 JavaScript SDK.

The D1 JavaScript SDK then starts the Visa SDK in a hidden iframe.

If the same device completed this step in the last 8 minutes, the D1 SDK skips it automatically.

#### 2. Create the payment passkey

<figure><img src="/files/Bs3JdmPQGx26KkwiHJlQ" alt=""><figcaption><p>Payment passkey creation flow for Visa and Mastercard.</p></figcaption></figure>

When the creation flow starts, the D1 SDK redirects the end user to the Visa or Mastercard page.

The payment network authenticates the end user and creates the payment passkey on the device.

After the flow succeeds, a notification is sent to the issuer backend.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.payments.thalescloud.io/payment-passkeys-issuers/implement-payment-passkeys/create-a-payment-passkey.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
