Skip to main content
POST
/
merchant
/
subscription
/
config
/
update
Update Merchant Subscription Config
curl --request POST \
  --url https://api.unibee.dev/merchant/subscription/config/update \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "downgradeEffectImmediately": true,
  "downgradeNonImmediatelyEffectBeforePeriodEnd": 123,
  "gatewayVATRule": [
    {
      "gatewayNames": "<string>",
      "ignoreVatNumber": true,
      "taxPercentage": 123,
      "validCountryCodes": "<string>"
    }
  ],
  "incompleteExpireTime": 123,
  "invoiceEmail": true,
  "showZeroInvoice": true,
  "tryAutomaticPaymentBeforePeriodEnd": 123,
  "upgradeProration": true
}
'
{
  "code": 123,
  "data": {
    "config": {
      "downgradeEffectImmediately": true,
      "downgradeNonImmediatelyEffectBeforePeriodEnd": 123,
      "fiatExchangeApiKey": "<string>",
      "gatewayVATRule": "<string>",
      "incompleteExpireTime": 123,
      "invoiceEmail": true,
      "invoicePdfGenerate": true,
      "showZeroInvoice": true,
      "tryAutomaticPaymentBeforePeriodEnd": 123,
      "upgradeProration": true
    }
  },
  "merchantId": 123,
  "message": "<string>",
  "redirect": "<string>",
  "requestId": "<string>"
}

Endpoint Overview

POST https://api.unibee.dev/merchant/subscription/config/update Update Merchant Subscription Config

Authorization

All UniBee Merchant API requests require authentication via API key.
HeaderRequiredDescription
AuthorizationYesBearer <your_api_key>
Content-TypeYesapplication/json (for request body)

Parameters

Parameters for this endpoint are listed below. The schema is also shown in the Try it panel.

Request body

NameTypeRequiredDescription
downgradeEffectImmediatelybooleanNoDowngradeEffectImmediately, Immediate Downgrade (by default, the downgrades takes effect at the end of the period )
downgradeNonImmediatelyEffectBeforePeriodEndintegerNoDowngradeNonImmediatelyEffectBeforePeriodEnd, seconds, For non-immediate downgrade, can take effect before period end (default 30 minutes, 1800 seconds)
gatewayVATRulearrayNo
incompleteExpireTimeintegerNoIncompleteExpireTime, seconds, Incomplete Status Duration(The period during which subscription remains in
invoiceEmailbooleanNoInvoiceEmail, Enable Invoice Email (Toggle to send invoice email to customers)
showZeroInvoicebooleanNoShowZeroInvoice, Display Invoices With Zero Amount (Invoice With Zero Amount will hidden in list by default)
tryAutomaticPaymentBeforePeriodEndintegerNoTryAutomaticPaymentBeforePeriodEnd, Auto-charge Start Before Period End (Time Difference for Auto-Payment Activation Before Period End)
upgradeProrationbooleanNoUpgradeProration, Prorated Upgrade Invoices(Upgrades will generate prorated invoice by default)

Request examples

cURL

curl -X POST "https://api.unibee.dev/merchant/subscription/config/update" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "downgradeEffectImmediately": false,
  "downgradeNonImmediatelyEffectBeforePeriodEnd": 0,
  "gatewayVATRule": [],
  "incompleteExpireTime": 0,
  "invoiceEmail": "user@example.com",
  "showZeroInvoice": false,
  "tryAutomaticPaymentBeforePeriodEnd": 0,
  "upgradeProration": false
}'

Sandbox

curl -X POST "https://api-sandbox.unibee.top/merchant/subscription/config/update" \
  -H "Authorization: Bearer YOUR_SANDBOX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "downgradeEffectImmediately": false,
  "downgradeNonImmediatelyEffectBeforePeriodEnd": 0,
  "gatewayVATRule": [],
  "incompleteExpireTime": 0,
  "invoiceEmail": "user@example.com",
  "showZeroInvoice": false,
  "tryAutomaticPaymentBeforePeriodEnd": 0,
  "upgradeProration": false
}'

Response

Success responses return a JSON envelope with code, data, message, redirect, and requestId. code 0 indicates success.
FieldTypeDescription
codeintegerResponse code. 0 = success
dataobjectResponse payload
data.configobject
messagestringHuman-readable message
requestIdstringRequest ID for support

Error handling

HTTP statusMeaning
400Bad request — invalid or missing parameters. Check message in the body.
401Unauthorized — missing or invalid API key.
404Not found — invalid path or resource.
500Server error — retry with backoff.
When code in the response body is non-zero, check message for details. Use requestId when contacting support.

Authorizations

Authorization
string
header
required

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

Body

application/json
downgradeEffectImmediately
boolean<*bool>

DowngradeEffectImmediately, Immediate Downgrade (by default, the downgrades takes effect at the end of the period )

downgradeNonImmediatelyEffectBeforePeriodEnd
integer<*int64>

DowngradeNonImmediatelyEffectBeforePeriodEnd, seconds, For non-immediate downgrade, can take effect before period end (default 30 minutes, 1800 seconds)

gatewayVATRule
object[]
incompleteExpireTime
integer<*int64>

IncompleteExpireTime, seconds, Incomplete Status Duration(The period during which subscription remains in

invoiceEmail
boolean<*bool>

InvoiceEmail, Enable Invoice Email (Toggle to send invoice email to customers)

showZeroInvoice
boolean<*bool>

ShowZeroInvoice, Display Invoices With Zero Amount (Invoice With Zero Amount will hidden in list by default)

tryAutomaticPaymentBeforePeriodEnd
integer<*int64>

TryAutomaticPaymentBeforePeriodEnd, Auto-charge Start Before Period End (Time Difference for Auto-Payment Activation Before Period End)

upgradeProration
boolean<*bool>

UpgradeProration, Prorated Upgrade Invoices(Upgrades will generate prorated invoice by default)

Response

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