> ## Documentation Index
> Fetch the complete documentation index at: https://primer.io/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# PrimerPaymentMethodTokenData

`PrimerPaymentMethodTokenData` will be returned by the `primerDidTokenizePaymentMethod(_:decisionHandler:)`
when the payment method has been tokenized. Use the `token` to create a payment, or to store it when using
the vault manager.

## Parameters

<Expandable title="Parameters" defaultOpen>
  <ResponseField name="paymentMethodTokenData" type="PrimerPaymentMethodTokenData">
    <Expandable title="Parameters" defaultOpen>
      <ResponseField name="analyticsId" type="String" />

      <ResponseField name="id" type="String" />

      <ResponseField name="paymentInstrumentData" type="PaymentInstrumentData">
        <Expandable title="Parameters" defaultOpen>
          <ResponseField name="paymentMethodConfigId" type="String" />

          <ResponseField name="paymentMethodType" type="String" />

          <ResponseField name="sessionInfo" type="SessionInfo" />

          <ResponseField name="first6Digits" type="String" />

          <ResponseField name="last4Digits" type="String" />

          <ResponseField name="accountNumberLast4Digits" type="String" />

          <ResponseField name="expirationMonth" type="String" />

          <ResponseField name="expirationYear" type="String" />

          <ResponseField name="cardholderName" type="String" />

          <ResponseField name="network" type="String" />

          <ResponseField name="isNetworkTokenized" type="String" />

          <ResponseField name="binData" type="BinData" />

          <ResponseField name="threeDSecureAuthentication" type="ThreeDS.AuthenticationDetails" />

          <ResponseField name="paypalBillingAgreementId" type="String" />

          <ResponseField name="externalPayerInfo" type="ExternalPayerInfo">
            Additional PayPal data.

            <Expandable title="Properties" defaultOpen>
              <ResponseField name="email" type="String">
                The payer's email address.
              </ResponseField>

              <ResponseField name="externalPayerId" type="String?">
                The payer's unique ID.
              </ResponseField>

              <ResponseField name="firstName" type="String?">
                The payer's given name.
              </ResponseField>

              <ResponseField name="lastName" type="String?">
                The payer's given surname.
              </ResponseField>
            </Expandable>
          </ResponseField>

          <ResponseField name="shippingAddress" type="ShippingAddress" />

          <ResponseField name="klarnaCustomerToken" type="String" />

          <ResponseField name="sessionData" type="SessionData" />

          <ResponseField name="bankName" type="String" />
        </Expandable>
      </ResponseField>

      <ResponseField name="paymentInstrumentType" type="PaymentInstrumentType">
        <Expandable title="Cases" defaultOpen>
          <ResponseField name="paymentCard" />

          <ResponseField name="offSession" />

          <ResponseField name="cardOffSession" />

          <ResponseField name="payPalOrder" />

          <ResponseField name="payPalBillingAgreement" />

          <ResponseField name="applePay" />

          <ResponseField name="googlePay" />

          <ResponseField name="klarna" />

          <ResponseField name="klarnaPaymentSession" />

          <ResponseField name="klarnaCustomerToken" />

          <ResponseField name="apayaToken" />

          <ResponseField name="hoolah" />

          <ResponseField name="unknown" />
        </Expandable>
      </ResponseField>

      <ResponseField name="threeDSecureAuthentication" type="ThreeDS.AuthenticationDetails" />

      <ResponseField name="token" type="String" required />

      <ResponseField name="tokenType" type="TokenType">
        <Expandable title="Cases" defaultOpen>
          <ResponseField name="multiUse" />

          <ResponseField name="singleUse" />
        </Expandable>
      </ResponseField>

      <ResponseField name="vaultData" type="VaultData" />
    </Expandable>
  </ResponseField>
</Expandable>
