# WalletProviderRegistrationUpdateDto

A model the API reference uses in a request or a response. The operation pages link every field typed as this model here.

## Fields
- `providerType` ([WalletProviderType](https://devportal.demo.winkpg.io/docs/api/models/WalletProviderType.md)): Wallet provider this operation targets.
  Values:
  - `Unknown`: Unknown wallet provider.
  - `ApplePay`: Apple Pay wallet provider.
  - `GooglePay`: Google Pay wallet provider.
  - `NetworkToken`: Network tokenization provider (Visa, Mastercard etc).
  - `Paze`: Paze (Early Warning) wallet provider.
- `level` ([WalletRegistrationLevel](https://devportal.demo.winkpg.io/docs/api/models/WalletRegistrationLevel.md)): Scope of the registration. `Platform`  must be paired with `merchantId` = null;  `Merchant` must be paired with a  non-null `merchantId`. Server-side validation rejects any  other combination.
  Values:
  - `Platform`: PSP / Platform Integrator-level row (MerchantId = null).
  - `Merchant`: Per-sub-merchant row (MerchantId set).
- `merchantId` (string(uuid)): Identifier of the merchant this registration belongs to. Required when  `level` = `Merchant`;  must be null when `level` = `Platform`. Conditional: When ForbidsMerchantId(Level) is true. Required: When RequiresMerchantId(Level) is true. (nullable)
- `providerMerchantIdentifier` (string): Provider-side identifier: the value the wallet provider should use for  this merchant going forward. Free-form when allowed by the provider  (Apple Pay accepts any partner-supplied string). Required: Conditional (see validator source). (nullable, max length 128)
- `gatewayMerchantId` (string): The merchant's identifier <b>at this gateway</b>, required by a provider whose model  round-trips one. Google Pay sends it to the browser as  `tokenizationSpecification.parameters.gatewayMerchantId` and copies it into the  encrypted payment token, so the decrypted message says which merchant the shopper  believed they were paying. (nullable)
- `merchantDisplayName` (string) required: Merchant display name surfaced to the wallet provider. (nullable, max length 256)
- `merchantUrl` (string) required: Canonical merchant URL. Must be an absolute HTTPS URL. (nullable)
- `domains` (array<string>): Domains to register. Apple Pay accepts multiple; Paze accepts exactly one (the HPP SDK  initializes with a single profile id, so a Paze registration maps to one domain / one  profile: enforced by the validator). Each domain must already host the  provider-specified verification file before this call is made. Required: Conditional (see validator source). (nullable)
- `isSandbox` (boolean): Platform-level gateway environment toggle: `true` = Sandbox, `false` =  Production (default). Honored only when `level` =  `Platform`; merchant-level rows ignore it and  derive the environment from the merchant's `IsTest` flag.
- `onboarding` ([WalletMerchantOnboardingInput](https://devportal.demo.winkpg.io/docs/api/models/WalletMerchantOnboardingInput.md)): Richer onboarding details for providers whose registration contract needs them  (see `WalletProviderRegistrationTraits.RequiresOnboardingDetails`: Paze today).  Required for those providers, and ignored for the rest. Required: Conditional (see validator source).
  Fields:
  - `merchantCategoryCode` (string) required: Merchant category code, ISO 18245 (Paze `profile[].merchantCategoryCode`). (nullable, pattern ^[0-9]{4}$)
  - `profileId` (string): Self-assigned profile id. Optional: the provider generates a stable one when omitted.  Paze is single-domain / single-profile (the HPP SDK initializes with one profile id),  so there is exactly one profile id per registration. (nullable)
  - `address` ([WalletMerchantAddressInput](https://devportal.demo.winkpg.io/docs/api/models/WalletMerchantAddressInput.md)) required: Business address (Paze `data.address`). Defaulted to a non-null instance so the  create form's always-mounted Paze address fields can two-way-bind without a null-deref  on the first render (see `WalletProviderRegistrationCreateOrUpdateDtoBase.Onboarding`). Conditional: When Address is not null.
- `concurrencyStamp` (string): (nullable)

## See also

- [All documentation](https://devportal.demo.winkpg.io/llms.txt): the machine-readable index of every public page on this site.
