Skip to main content
POST
/
merchant
/
plan
/
new
Create Plan
curl --request POST \
  --url https://api.unibee.dev/merchant/plan/new \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "addonIds": [
    123
  ],
  "amount": 123,
  "cancelAtTrialEnd": 123,
  "currency": "<string>",
  "description": "<string>",
  "externalPlanId": "<string>",
  "gasPayer": "<string>",
  "homeUrl": "<string>",
  "imageUrl": "<string>",
  "internalName": "<string>",
  "intervalCount": 123,
  "intervalUnit": "<string>",
  "metadata": {},
  "metricLimits": [
    {
      "metricId": 123,
      "metricLimit": 123
    }
  ],
  "metricMeteredCharge": [
    {
      "chargeType": 123,
      "graduatedAmounts": [
        {
          "endValue": 123,
          "flatAmount": 123,
          "perAmount": 123,
          "startValue": 123
        }
      ],
      "metricId": 123,
      "standardAmount": 123,
      "standardStartValue": 123
    }
  ],
  "metricRecurringCharge": [
    {
      "chargeType": 123,
      "graduatedAmounts": [
        {
          "endValue": 123,
          "flatAmount": 123,
          "perAmount": 123,
          "startValue": 123
        }
      ],
      "metricId": 123,
      "standardAmount": 123,
      "standardStartValue": 123
    }
  ],
  "multiCurrencies": [
    {
      "amount": 123,
      "autoExchange": true,
      "currency": "<string>",
      "disable": true,
      "exchangeRate": 123
    }
  ],
  "onetimeAddonIds": [
    123
  ],
  "planName": "<string>",
  "productDescription": "<string>",
  "productId": 123,
  "productName": "<string>",
  "trialAmount": 123,
  "trialDemand": "<string>",
  "trialDurationTime": 123,
  "type": 1,
  "usVATConfig": {
    "active": true,
    "fromAddress": {
      "address": "<string>",
      "city": "<string>",
      "countryCode": "<string>",
      "state": "<string>",
      "verified": true,
      "zipCode": "<string>"
    },
    "nexusAddresses": [
      {
        "address": "<string>",
        "city": "<string>",
        "countryCode": "<string>",
        "state": "<string>",
        "verified": true,
        "zipCode": "<string>"
      }
    ],
    "sellOnUSOnly": true,
    "taxCode": "<string>",
    "toAddress": {
      "address": "<string>",
      "city": "<string>",
      "countryCode": "<string>",
      "state": "<string>",
      "verified": true,
      "zipCode": "<string>"
    }
  }
}'
{
  "code": 123,
  "data": {
    "plan": {
      "amount": 123,
      "bindingAddonIds": "<string>",
      "bindingOnetimeAddonIds": "<string>",
      "cancelAtTrialEnd": 123,
      "checkoutUrl": "<string>",
      "createTime": 123,
      "currency": "<string>",
      "description": "<string>",
      "disableAutoCharge": 123,
      "externalPlanId": "<string>",
      "extraMetricData": "<string>",
      "gasPayer": "<string>",
      "homeUrl": "<string>",
      "id": 123,
      "imageUrl": "<string>",
      "internalName": "<string>",
      "intervalCount": 123,
      "intervalUnit": "<string>",
      "merchantId": 123,
      "metadata": {},
      "metricLimits": [
        {
          "metricId": 123,
          "metricLimit": 123
        }
      ],
      "metricMeteredCharge": [
        {
          "chargeType": 123,
          "graduatedAmounts": [
            {
              "endValue": 123,
              "flatAmount": 123,
              "perAmount": 123,
              "startValue": 123
            }
          ],
          "metricId": 123,
          "standardAmount": 123,
          "standardStartValue": 123
        }
      ],
      "metricRecurringCharge": [
        {
          "chargeType": 123,
          "graduatedAmounts": [
            {
              "endValue": 123,
              "flatAmount": 123,
              "perAmount": 123,
              "startValue": 123
            }
          ],
          "metricId": 123,
          "standardAmount": 123,
          "standardStartValue": 123
        }
      ],
      "multiCurrencies": [
        {
          "amount": 123,
          "autoExchange": true,
          "currency": "<string>",
          "disable": true,
          "exchangeRate": 123
        }
      ],
      "planName": "<string>",
      "productId": 123,
      "publishStatus": 123,
      "status": 123,
      "taxPercentage": 123,
      "trialAmount": 123,
      "trialDemand": "<string>",
      "trialDurationTime": 123,
      "type": 123,
      "usVATConfig": {
        "active": true,
        "fromAddress": {
          "address": "<string>",
          "city": "<string>",
          "countryCode": "<string>",
          "state": "<string>",
          "verified": true,
          "zipCode": "<string>"
        },
        "nexusAddresses": [
          {
            "address": "<string>",
            "city": "<string>",
            "countryCode": "<string>",
            "state": "<string>",
            "verified": true,
            "zipCode": "<string>"
          }
        ],
        "sellOnUSOnly": true,
        "taxCode": "<string>",
        "toAddress": {
          "address": "<string>",
          "city": "<string>",
          "countryCode": "<string>",
          "state": "<string>",
          "verified": true,
          "zipCode": "<string>"
        }
      }
    }
  },
  "message": "<string>",
  "redirect": "<string>",
  "requestId": "<string>"
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
amount
integer
required

Plan Amount

currency
string<string>
required

Plan Currency

planName
string<string>
required

Plan Name

addonIds
integer[]

Plan Ids Of Recurring Addon Type

cancelAtTrialEnd
integer

whether cancel at subscription first trial end,0-false | 1-true, will pass to cancelAtPeriodEnd of subscription

description
string<string>

Description

externalPlanId
string<string>

ExternalPlanId

gasPayer
string<string>

who pay the gas for crypto payment, merchant|user

homeUrl
string<string>

HomeUrl,Start With: http

imageUrl
string<string>

ImageUrl,Start With: http

internalName
string<string>
intervalCount
integer

Number Of IntervalUnit,em: day|month|year|week

intervalUnit
string<string>

Plan Interval Unit,em: day|month|year|week

metadata
object

Metadata,Map

metricLimits
object[]

Plan's MetricLimit List

metricMeteredCharge
object[]

Plan's MetricMeteredCharge

metricRecurringCharge
object[]

Plan's MetricRecurringCharge

multiCurrencies
object[]

Plan's MultiCurrencies

onetimeAddonIds
integer[]

Plan Ids Of Onetime Addon Type

productDescription
string<string>

Default Copy Description

productId
integer

Id of product which plan to linked

productName
string<string>

Default Copy PlanName

trialAmount
integer

price of trial period, not available for addon

trialDemand
string<string>

demand of trial, not available for addon, example, paymentMethod, payment method will ask for subscription trial start

trialDurationTime
integer

duration of trial, not available for addon

type
integer
default:1

The type of plan, 1-main plan,2-addon plan, 3-onetime plan, default main plan

usVATConfig
object

Response

200 - application/json
code
integer
data
object
message
string<string>
redirect
string<string>
requestId
string<string>