PayNowPro

Product groups

Relate products that belong to one offering and configure upgrade-proration behavior.

A product group organizes related products in a tenant. It is useful when several plans belong to one offering and customers may move between those plans.

Group data

A product group has an ID, tenant alias, name, creation time, and optional metadata, update time, and prorateUpgrades setting.

FieldMeaning
nameThe name of the product family or offering.
metadataOptional integration-specific data. Do not use it for secrets or payment data.
prorateUpgradesControls whether eligible upgrades in the group are prorated. When disabled, an upgrade is not prorated and is charged at the end of the old subscription's billing period.

Create a group before you assign products to it. When you retrieve a group, the response includes the products that belong to it.

Assign a product to a group

Set the product's groupId when you create or update the product.

curl -X POST "https://api.paynowpro.com/api/v1/groups" \
  -H "api-key: YOUR_API_KEY" \
  -H "content-type: application/json" \
  -d '{
    "tenantAlias": "YOUR_TENANT_ALIAS",
    "name": "Membership plans",
    "prorateUpgrades": true
  }'

curl -X PATCH "https://api.paynowpro.com/api/v1/products/PRODUCT_ID" \
  -H "api-key: YOUR_API_KEY" \
  -H "content-type: application/json" \
  -d '{
    "tenantAlias": "YOUR_TENANT_ALIAS",
    "groupId": "GROUP_ID"
  }'

Use groups with subscriptions

Groups provide the plan relationship used by subscription-change flows. A subscription change record identifies whether the requested change is an upgrade or downgrade and reports pending, successful, or failed status.

Do not grant a changed plan until your application has confirmed the final result for its subscription flow. Read Create and manage subscriptions for the end-to-end sequence.

For endpoint fields, see the Product groups API reference.

On this page