Skip to main content
PATCH
/
v1
/
products
/
{id}
TypeScript SDK
import { Solifyn } from 'solifyn';

const solifyn = new Solifyn({ apiKey: 'your_private_api_key_here' });

// Update product details
const product = await solifyn.products.update('prod_019e56a1...', {
  name: 'Updated Product Name',
  price: 59.99
});
console.log('Product updated:', product);
{
  "message": "Product archived successfully"
}

Authorizations

Authorization
string
header
required

Authenticate requests using your standard bearer API key (e.g. YOUR_API_KEY).

Path Parameters

id
string
required

The unique product ID.

Example:

"prod_123"

Body

application/json
name
string

Product display name.

Example:

"Enterprise SaaS Plan"

description
string

A description of the product.

Example:

"Unlock premium API integration, custom webhooks, dedicated server bandwidth, and priority 24/7 business-critical support tiers."

price
number

Price value.

Example:

99

currency
enum<string>
default:USD

Product pricing currency.

Available options:
USD,
SGD,
INR,
AUD,
BRL,
CAD,
DKK,
EUR,
NOK,
GBP,
SEK,
CHF,
HKD,
HUF,
JPY,
MXN,
MYR,
PLN,
CZK,
NZD,
AED,
COP,
RON,
THB,
BGN,
IDR,
DOP,
PHP,
TRY,
KRW,
TWD,
VND,
PKR,
CLP,
UYU,
ARS,
ZAR,
DZD,
TND,
MAD,
KES,
KWD,
JOD,
ALL,
XCD,
AMD,
BSD,
BHD,
BOB,
BAM,
KHR,
CRC,
XOF,
EGP,
ETB,
GMD,
GHS,
GTQ,
GYD,
ILS,
JMD,
MOP,
MGA,
MUR,
MDL,
MNT,
NAD,
NGN,
MKD,
OMR,
PYG,
PEN,
QAR,
RWF,
SAR,
RSD,
LKR,
TZS,
TTD,
UZS,
RUB,
CNY
Example:

"USD"

imageUrl
string

URL of the product cover image.

Example:

"https://assets.solifyn.com/images/products/saas-enterprise.png"

taxCategory
enum<string>

Tax classification.

Available options:
digital_products,
saas,
physical_products,
service
Example:

"saas"

discount
number

Percentage or flat rate discount.

Example:

0

hasLicenseKey
boolean
default:false

Whether to automatically issue license keys upon successful orders.

Example:

false

hasDigitalDelivery
boolean
default:false

Whether the purchase includes downloadable files.

Example:

false

isTaxInclusive
boolean
default:false

Whether tax is included in the base price.

Example:

false

activationLimit
integer | null

Maximum concurrent activated instances allowed per license key.

Example:

null

brandId
string | null

Brand id for the product, if not provided will default to primary brand.

Example:

"brd_4e29285b8sdf34ff51e07d4"

billingPeriod
integer

Billing period in days (for Subscription products).

Example:

30

trialPeriodDays
integer

Trial duration in days.

Example:

7

expirationDays
integer

Subscription expiration duration in days.

statementDescriptor
string

Custom billing descriptor.

Example:

"SOLIFYN*SAAS"

payWhatYouWant
boolean
default:false

Allow pay-what-you-want pricing.

Example:

false

metadata
object

Developer key-value metadata pairs.

Example:
{
"internal_id": "12345",
"campaign": "summer_sale"
}
customFields
object[]

Form field configurations to gather during checkout.

Example:
[
{
"id": "57aa2241-eae4-43dc-b9ae-36069b84b2da",
"name": "Discord Username",
"order": 0,
"required": true,
"field_type": "text",
"placeholder": "e.g. your_discord#1234"
},
{
"id": "c86da32a-a967-457c-815b-c3440294d70b",
"name": "Company Name",
"order": 1,
"required": false,
"field_type": "text",
"placeholder": "e.g. Acme Corp (Optional)"
}
]
stock
integer

Initial stock quantity limit.

Example:

100

isListed
boolean
default:true

Whether the product is publicly visible.

Example:

true

isFree
boolean
default:false

Whether the product is free of charge.

Example:

false

addons
object[]

Product addons configurations.

Response

200 - application/json

Product updated successfully.

message
string
required

Response message indicating the outcome of the action.

Example:

"Product archived successfully"