Skip to content

Paze onboarding

Configure Paze in the Unity Portal and connect your merchant account.

Before you start

If you haven't already, make sure that you have activated the Components service in the Unity Portal. For more information, see Activate Components.

You'll also need an existing Paze client ID, provided by Paze.

Step 1: Ensure Paze is enabled at the merchant group level

Paze must be enabled for your merchant group before it can be configured on individual sites.

  1. In the Unity Portal, go to Merchant setup > Merchant groups.
  2. Select your merchant group.
  3. In the Services tab, find Paze service.
  4. If Paze isn't listed, click Add service and select Paze.

Step 2: Get your PXP API credentials

Your backend needs API credentials to create checkout sessions with HMAC authentication.

  1. In the Unity Portal, go to Merchant setup > Merchant groups.
  2. Select your merchant group.
  3. Click the Inbound calls tab.
  4. Copy the Client ID shown in the top-right corner.
  5. Click + New token to create an authentication token.
  6. Choose an expiry period and click Save.
  7. Copy both the token ID and token value. Store these securely on your backend.

Never expose your token value or HMAC credentials in your iOS app. Session creation must happen on your backend.

Step 3: Configure Paze on your site

Register your Paze client ID against the site where you'll accept Paze payments.

  1. In the Unity Portal, go to Merchant setup > Sites.
  2. Select the site you want to enable Paze for.
  3. Click the Services tab.
  4. Find Paze service and switch the Active toggle to on.
  5. Click Edit, then Paze Account Settings.
  6. Enter your Client ID as provided by Paze.
  7. Optionally, enter a Profile ID (if provided by Paze). If you only have a client ID, you can leave this field blank.
  8. Click Save in the top right.

Step 4: Verify session configuration

After saving your Paze account settings, create a test session from your backend and confirm that Paze is included in the response.

A correctly configured session includes Paze wallet settings:

{
  "sessionId": "c5f0799b-0839-43ce-abc5-5b462a98f250",
  "hmacKey": "904bc42395d4af634e2fd48ee8c2c7f52955a1da97a3aa3d82957ff12980a7bb",
  "encryptionKey": "20d175a669ad3f8c195c9c283fc86155",
  "allowedFundingTypes": {
    "wallets": {
      "paze": {
        "clientId": "your-paze-client-id",
        "profileId": "optional-profile-id",
        "merchantCategoryCode": "5812"
      }
    }
  }
}

iOS requires merchantCategoryCode in the session for the Paze complete step (after checkout succeeds). If it is missing, the SDK throws SDK1202A when building the complete request — not at component creation or presentment. Web integrations may not require this field depending on your configuration.

If allowedFundingTypes.wallets.paze is missing or clientId is empty at create(.pazeButton), the SDK throws SDK0118 — typically before presentment runs. If presentment validation runs without a valid clientId, the SDK throws SDK1202. See Portal and session setup.