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

# Create digital wallet provisioning request for Google Wallet

> Use the /digitalwalletprovisionrequests/googlepay endpoint to return card data for use in provisioning a digital wallet token into Google Wallet.

POST/digitalwalletprovisionrequests/googlepay

Use the `/digitalwalletprovisionrequests/googlepay` endpoint to return card data for use in provisioning a digital wallet token into Google Wallet.

The returned card data is encrypted using the digital wallet provider's encryption key, thereby reducing your Payment Card Industry (PCI) compliance overhead.

## Header parameter

| Fields | Description |
| - | - |
| req-sys-id string  Optional | Random pseudo-unique identifier of a request, used for troubleshooting between multiple parties. Usually a globally unique identifier (GUID). **Allowable Values:**  1–36 chars |
| region string  Optional | Region of the card requested for provisioning. Applicable to both physical and virtual cards. **Allowable Values:**  `NAM`, `EMEA`, `APAC` |
| isVirtualCard boolean  Optional | Header flag to identify the type of the card requested for provisioning. Value is `true` for virtual cards, `false` for physical cards. **Allowable Values:**  Example: `true` |

## Request body

| Fields | Description |
| - | - |
| encrypted\_card\_data object  Required | Encrypted data object. This object is first encrypted using the recipient's public key and sent in [JSON Web Encryption (JWE) format](https://openid.net/specs/draft-jones-json-web-encryption-02.html) and then signed using the sender's private key using [JSON Web Signature (JWS)](https://openid.net/specs/draft-jones-json-web-signature-04.html). It represents the decrypted format. **Allowable Values:**  `card_token`, `card_type`, `cardholder_info`, `expiration`, `metadata`, `primary_account_number` |
| encrypted\_card\_data.**expiration** object  Required | Specifies the expiry date for the card. **Allowable Values:**  `month`, `year` |
| encrypted\_card\_data.expiration.**month** string  Required | Specifies the expiry month for the card in MM format. `01`, for example. **Allowable Values:**  Format: MM |
| encrypted\_card\_data.expiration.**year** string  Required | Specifies the expiry year for the card in yyyy format. `2024`, for example. **Allowable Values:**  Format: yyyy |
| encrypted\_card\_data.**card\_token** string  Optional | Unique identifier of the card. **Allowable Values:**  1–36 chars |
| encrypted\_card\_data.**primary\_account\_number** string  Required | Account number of the card being tokenized. **Allowable Values:**  12–19 chars |
| encrypted\_card\_data.**card\_type** string  Optional | Specifies the type of card. This field is required for Samsung Wallet. **Allowable Values:**  `CREDIT`, `DEBIT` |
| encrypted\_card\_data.**cardholder\_info** object  Optional | Contains personal information about the cardholder. **Allowable Values:**  `cardholder_address`, `email_address`, `first_name`, `last_name`, `phone_number` |
| encrypted\_card\_data.cardholder\_info.**first\_name** string  Optional | First or given name of the cardholder. **Allowable Values:**  40 char max |
| encrypted\_card\_data.cardholder\_info.**last\_name** string  Optional | Last or family name of the cardholder. **Allowable Values:**  40 char max |
| encrypted\_card\_data.cardholder\_info.**cardholder\_address** object  Optional | Specifies the cardholder's address. **Allowable Values:**  `address_line_1`, `address_line_2`, `city`, `country_code`, `postal_code`, `state` |
| encrypted\_card\_data.cardholder\_info.cardholder\_address.**address\_line\_1** string  Required | Street address of the cardholder. **Allowable Values:**  1–255 chars |
| encrypted\_card\_data.cardholder\_info.cardholder\_address.**address\_line\_2** string  Optional | Additional address information for the cardholder, such as a suite, floor, room, PO Box or apartment number. `Suite 600`, for example. **Allowable Values:**  255 char max |
| encrypted\_card\_data.cardholder\_info.cardholder\_address.**postal\_code** string  Required | Postal code of the cardholder. **Allowable Values:**  1–50 chars |
| encrypted\_card\_data.cardholder\_info.cardholder\_address.**city** string  Optional | City of the cardholder. **Allowable Values:**  40 char max |
| encrypted\_card\_data.cardholder\_info.cardholder\_address.**state** string  Optional | State or province code associated with the cardholder's address. **Allowable Values:**  3 char max |
| encrypted\_card\_data.cardholder\_info.cardholder\_address.**country\_code** string  Optional | Two-character [ISO 3166-1 alpha-2 country code](https://www.iso.org/iso-3166-country-codes.html). `US`, for example. **Allowable Values:**  2 char max |
| encrypted\_card\_data.cardholder\_info.**email\_address** string  Optional | Email address of the cardholder. **Allowable Values:**  255 char max |
| encrypted\_card\_data.cardholder\_info.**phone\_number** string  Optional | Phone number of the cardholder. This number is used when Marqeta performs step-up authentication on your behalf. **Allowable Values:**  255 char max |
| encrypted\_card\_data.**metadata** array of objects  Optional | Additional metadata related to the card details object. **Allowable Values:**  Valid array of card details metadata objects |
| encrypted\_card\_data.metadata\[].**name** string  Required | Specifies the metadata attribute name, such as `CARD_ART_ID`, `MAX_TOKENS_PER_CARD`, and so on. **Allowable Values:**  255 char max |
| encrypted\_card\_data.metadata\[].**value** string  Required | Specifies the value of the metadata attribute. **Allowable Values:**  255 char max |
| card\_token string  Optional | Unique identifier of the card. **Allowable Values:**  1–36 chars |
| device\_type string  Optional | Specifies the type of device. **Allowable Values:**  `APPLIANCE`, `GAMING_DEVICE`, `LAPTOP`, `MOBILE_PHONE`, `MOBILE_PHONE_OR_TABLET`, `PERSONAL_COMPUTER`, `TABLET`, `UNKNOWN`, `UNRECOGNIZED`, `VEHICLE`, `WATCH` |
| provisioning\_app\_version string  Optional | Specifies the version of the application making the provisioning request. This field is used for debugging and fraud prevention. **Allowable Values:**  50 char max |
| wallet\_account\_id string  Required | User's Google Wallet account ID, as provided by Google during the provisioning process. Google refers to this field as `ActiveWalletId`. **Allowable Values:**  1–50 chars |
| device\_id string  Required | Unique identifier of the user's Google device, as provided by Google during the provisioning process. Google refers to this field as `StableHardwareId`. **Allowable Values:**  1–24 chars |

## Sample request body

Sample Google Pay request

```json JSON expandable lines wrap theme={null}
{
  "encrypted_card_data": {
    "expiration": {
      "month": "01",
      "year": "2025"
    },
    "card_token": "card-token-811",
    "primary_account_number": "4111111111111111",
    "cardholder_info": {
      "first_name": "Jane",
      "last_name": "Liu",
      "cardholder_address": {
        "city": "Oakland",
        "state": "CA",
        "address_line_1": "180 Grand Ave",
        "address_line_2": "Floor 6",
        "postal_code": "94612",
        "country_code": "US"
      },
      "email_address": "marqetaTest@marqeta.com",
      "phone_number": "1234567890"
    }
  },
  "device_id": "W85OGhjZTk2dsr452dgsr51j",
  "wallet_user_id": "ae25OGhjZTk2dsr452dgsr51",
  "provisioning_app_version": "2.13.3",
  "wallet_account_id": "ae123GhjZTk1dsr123dgsr12"
}
```

## Response body

| Fields | Description |
| - | - |
| created\_time datetime  Returned | Date and time when the resource was created, in UTC. **Allowable Values:**  date-time **Format:** yyyy-MM-ddThh:mm:ssZ |
| last\_modified\_time datetime  Returned | Date and time when the resource was created, in UTC. **Allowable Values:**  date-time **Format:** yyyy-MM-ddThh:mm:ssZ |
| card\_token string  Conditionally returned | Unique identifier of the card. **Allowable Values:**  1–36 chars |
| push\_tokenize\_request\_data object  Returned | Contains data pertaining to a Google push tokenization request. **Allowable Values:**  `display_name`, `last_digits`, `network`, `opaque_payment_card`, `token_service_provider`, `user_address` |
| push\_tokenize\_request\_data.**display\_name** string  Returned | Name of the card as displayed in the digital wallet, typically showing the card brand and last four digits of the primary account number (PAN). `Visa 5678`, for example. **Allowable Values:**  255 char max |
| push\_tokenize\_request\_data.**last\_digits** string  Returned | Last four digits of the funding primary account number (FPAN), which is the primary account number of the physical or virtual card. **Allowable Values:**  4 chars |
| push\_tokenize\_request\_data.**network** string  Returned | Card network, as defined by Google; expected to align with the value of the `token_service_provider` field. **Allowable Values:**  `Mastercard`, `Visa` |
| push\_tokenize\_request\_data.**token\_service\_provider** string  Returned | Token service provider, as defined by Google; expected to align with the value of the `network` field. **Allowable Values:**  `TOKEN_PROVIDER_MASTERCARD`, `TOKEN_PROVIDER_VISA` |
| push\_tokenize\_request\_data.**opaque\_payment\_card** string  Returned | Encrypted card data passed to Google in base64 format. This data should not be modified in transit. For more information, see [[https://developers.google.com/pay/issuers/apis/push-provisioning/android/push-provisioning-objects#opaque\_payment\_card\_opc](https://developers.google.com/pay/issuers/apis/push-provisioning/android/push-provisioning-objects#opaque_payment_card_opc)](https://developers.google.com/pay/issuers/apis/push-provisioning/android/push-provisioning-objects#opaque_payment_card_opc). **Allowable Values:**  1–5000 chars |
| push\_tokenize\_request\_data.**user\_address** object  Returned | Contains cardholder address information for a Google Wallet push tokenization request. Although not required, Marqeta recommends that you provide all the information in this object. Any missing or invalid address information may result in the user being prompted to complete or correct the address. For more information, see [[https://developers.google.com/pay/issuers/apis/push-provisioning/android/push-provisioning-objects#useraddress](https://developers.google.com/pay/issuers/apis/push-provisioning/android/push-provisioning-objects#useraddress)](https://developers.google.com/pay/issuers/apis/push-provisioning/android/push-provisioning-objects#useraddress). **Allowable Values:**  `address1`, `address2`, `city`, `country`, `name`, `phone`, `postal_code` |
| push\_tokenize\_request\_data.user\_address.**name** string  Conditionally returned | Name of the cardholder. **Allowable Values:**  255 char max |
| push\_tokenize\_request\_data.user\_address.**address1** string  Returned | Street address of the cardholder. **Allowable Values:**  1–255 chars |
| push\_tokenize\_request\_data.user\_address.**address2** string  Conditionally returned | Secondary address information, such as a suite or apartment number **Allowable Values:**  255 char max |
| push\_tokenize\_request\_data.user\_address.**city** string  Conditionally returned | City of the cardholder. **Allowable Values:**  255 char max |
| push\_tokenize\_request\_data.user\_address.**state** string  Conditionally returned | State or province code of the address. **Allowable Values:**  3 char max |
| push\_tokenize\_request\_data.user\_address.**postal\_code** string  Returned | Postal code of the cardholder, such as a United States ZIP code. **Allowable Values:**  1–50 chars |
| push\_tokenize\_request\_data.user\_address.**country** string  Conditionally returned | Two-character [ISO 3166-1 alpha-2 country code](https://www.iso.org/iso-3166-country-codes.html). **Allowable Values:**  2 char max |
| push\_tokenize\_request\_data.user\_address.**phone** string  Conditionally returned | Phone number of the cardholder. **Allowable Values:**  50 char max |

## Sample response body

Sample Google Pay response

```json JSON expandable lines wrap theme={null}
{
  "created_time": "2025-09-09T18:08:07Z",
  "last_modified_time": "2025-09-09T18:08:07Z",
  "card_token": "my_card_01",
  "push_tokenize_request_data": {
    "display_name": "Visa Card",
    "last_digits": "1008",
    "network": "Visa",
    "token_service_provider": "TOKEN_PROVIDER_VISA",
    "opaque_payment_card": "eyJraWQiOiIzVkhSWVVSUlRVT1....",
    "user_address": {
      "name": "Jane Liu",
      "address1": "180 Grand Avenue",
      "city": "Oakland",
      "state": "CA",
      "zip": "94612",
      "country": "US",
      "phone": "18000001111",
      "postal_code": "94612"
    }
  }
}
```


## Related topics

- [Digital Wallet Provisioning Requests Overview](https://www.marqeta.com/docs/core-api/tokenization-as-a-service/provisioning-requests.md)
- [Tokenization-as-a-Service Overview](https://www.marqeta.com/docs/core-api/tokenization-as-a-service.md)
- [Create digital wallet token provisioning request for Google Wallet](https://www.marqeta.com/docs/core-api/digital-wallets-management/google-wallet/create-token-provisioning-request-google.md)
- [Create a digital wallet provisioning request for Google Wallet (UPP)](https://www.marqeta.com/docs/core-api/tokenization-as-a-service/provisioning-requests/create-digital-wallet-provisioning-request-google-wallet-upp.md)
- [Create a digital wallet token provisioning request for Google Wallet as part of UPP](https://www.marqeta.com/docs/core-api/digital-wallets-management/google-wallet/create-token-provisioning-request-google-as-part-upp.md)
