Webhooks

Merchant Account Status Updates

Trigger

  • Description: Sent when a merchant account status changes.

Payload

  • createdAt: Unix timestamp indicating when the event was created.
  • type: Always 'MERCHANT' for this webhook.
  • status: Merchant account status, can be one of:
    • ACTIVE
    • INACTIVE
    • SUSPENDED
    • CLOSED
  • merchantAccountId: Unique ID for the merchant account.
  • organizationId: The ID of the organization to which the merchant account belongs.
  • merchantReferenceId: Merchant reference ID that matches the account in your system.
  • balanceAccountId: The ID for the balance account from Adyen associated with this merchant account.
  • accountHolderId: The ID for the account holder from Adyen associated with this merchant account.
  • recurringFeesGroupId: The ID of the recurring fee configuration assigned to the merchant account, or null if none assigned.
  • stores: List of associated stores
    • storeId: Adyen's store id
    • storeReferenceId: Store reference id, used when initiating platform payments with Adyen's API.
    • balanceAccountId: The ID for the balance account from Adyen associated with the store.
    • splitConfigurationId: The ID of the split configuration from Adyen associated with the store.
    • status: Store status (ACTIVE, INACTIVE, CLOSED)
  • merchantAccountAttributes: List of custom attributes assigned to the merchant account. Empty array if none are set.
    • name: The attribute name, matching a custom attribute configured in Zentact admin.
    • value: The attribute value.

Custom attributes for externally boarded merchants

When a merchant is boarded outside of Zentact and imported, Adyen account holder metadata key-value pairs are mapped into merchantAccountAttributes. Only metadata keys that match a custom attribute name configured in Zentact admin (matched case-insensitively) are kept — unrecognized keys and values longer than 80 characters are dropped. If no custom attributes are configured for your tenant, this array will always be empty. Configure the expected attribute names in Zentact admin before boarding merchants externally.

Example

{
  "createdAt": 1697339819,
  "merchantAccountId": "UBWCE2Bfi5xb",
  "organizationId": "bf368afb-ed57-4345-a04a-7c7213431a99",
  "merchantReferenceId": "a5ac988f-857d-43b6-a9ee-e98c7568299f",
  "status": "ACTIVE",
  "type": "MERCHANT",
  "balanceAccountId": "BA32272223222K5JDZCH7DLSZ",
  "accountHolderId": "AH3227C223222K5JDZCBHCJL6",
  "recurringFeesGroupId": "IFGYKMKL2LWVT",
  "stores": [
    {
      "storeId": "ST3224Z22322425JDZCB69NWZ",
      "storeReferenceId": "yyy92999yyyy",
      "balanceAccountId": "BA32272223222K5JDZCH7DLSZ",
      "splitConfigurationId": "SCNF4224Q223223W5K9BKK88X557JG",
      "status": "ACTIVE"
    }
  ],
  "merchantAccountAttributes": [
    {
      "name": "Sales_Rep",
      "value": "Amy"
    }
  ],
  "merchantAccountAttributes": [
    {
      "name": "Opportunity_ID",
      "value": "0061U00000ce0xWQAQ"
    }
  ],
  "storeId": "ST3224Z22322425JDZCB69NWZ", // deprecated
  "storeReferenceId": "yyy92999yyyy", // deprecated
  "splitConfigurationId": "SCNF4224Q223223W5K9BKK88X557JG" // deprecated
}
Previous
Integration Steps