Subscriptions
A subscription enables you to charge customers at specified intervals for a plan of their choice.
Attribute
live
, trial
, dunning
, unpaid
, non_renewing
, cancelled
, creation_failed
, cancelled_from_dunning
, expired
, trial_expired
or future
.billing_cycle
is set for a plan. A subscription expires on the last day of the last billing cycle.months
or years
. For interval=2 and interval_unit=months, the customer is billed every two months.currency_code
is not specified here, the currency chosen in your Zoho Billing organization will be used for billing. currency_id
and currency_symbol
are set automatically in accordance to the currency_code.end_of_term
is set to false. If end_of_term
is set to true, the subscription changes take effect only after the current term of the subscription ends.plan_code
, name
, price
, quantity
.exclude_setup_fee
is true
is_taxable
is true
.exclude_trial
is true
addon_code
, name
, price
and quantity
.coupon_code
and discount_amount
applied to the invoice total.payment_gateway
, last_four_digits
, expiry_month
and expiry_year
.test_gateway
, payflow_pro
, stripe
, 2checkout
, authorize_net
, payments_pro
, forte
, worldpay
, wepay
.display_name
, company_name
, first_name
, last_name
, email
, fax
, currency_code
and billing_address
.attention
, street
, city
, state
,zip
, country
and fax
.attention
, street
, city
, state
,zip
, country
and fax
.is_taxable
is true
.contactperson_id
.note_id
, description
, commented_by
and commented_time
test_gateway
, payflow_pro
, stripe
, 2checkout
, authorize_net
, payments_pro
, forte
, worldpay
, wepay
.{
"subscription_id": "90300000079200",
"name": "GatorHost-Basic",
"status": "live",
"amount": 50,
"created_at": "2016-06-11",
"activated_at": "2016-06-15",
"current_term_starts_at": "2016-06-05",
"current_term_ends_at": "2016-06-05",
"last_billing_at": "2016-06-05",
"next_billing_at": "2016-06-30",
"expires_at": "2016-06-05",
"interval": 1,
"interval_unit": "months",
"auto_collect": true,
"created_time": "2016-06-11T17:57:13-0700",
"updated_time": "2016-06-04T16:44:15-0700",
"reference_id": "bowmanfurniture",
"place_of_supply": "TN",
"salesperson_id": "903000000058001",
"salesperson_name": "Franklin",
"child_invoice_id": "90300000079210",
"currency_code": "USD",
"currency_symbol": "$",
"end_of_term": false,
"product_id": "90300000079065",
"product_name": "Bowman Furniture",
"plan": {
"plan_code": "basic-monthly",
"name": "GatorHost-Basic",
"quantity": 1,
"price": 50,
"tags": [
{
"tag_id": 0,
"tag_option_id": 0
}
],
"item_custom_fields": [
{
"label": "string",
"value": "string"
}
],
"discount": 20,
"total": 50,
"setup_fee": 20,
"plan_description": "Monthly Basic plan",
"tax_id": "903000002345",
"trial_days": 0
},
"addons": [
{
"addon_code": "Email-basic",
"name": "Monthly Addon",
"addon_description": "Monthly addon.",
"quantity": 1,
"tags": [
{
"tag_id": 0,
"tag_option_id": 0
}
],
"item_custom_fields": [
{
"label": "string",
"value": "string"
}
],
"price": 50,
"discount": null,
"total": null,
"tax_id": null
}
],
"coupon": {
"coupon_code": "Flat10",
"discount_amount": 44
},
"card": {
"card_id": "9030000079226",
"last_four_digits": 2145,
"payment_gateway": "payflow_pro",
"expiry_month": 9,
"expiry_year": 2030
},
"payment_terms": 0,
"payment_terms_label": "Due On Receipt",
"can_add_bank_account": true,
"customer": {
"customer_id": "903000000000099",
"display_name": "Bowman Furniture",
"salutation": "Mr.",
"first_name": "Benjamin",
"last_name": "George",
"email": "benjamin.george@bowmanfurniture.com",
"company_name": "Bowman Furniture",
"billing_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"country": "U.S.A",
"zip": 92612,
"fax": 4527389
},
"shipping_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"zip": 92612,
"country": "U.S.A",
"fax": 4527389
},
"payment_terms": 0,
"payment_terms_label": "Due On Receipt"
},
"custom_fields": [
{
"index": 1,
"label": "string",
"value": "string",
"data_type": "text"
}
],
"taxes": [
{
"tax_id": "903000002345",
"tax_name": "GST",
"tax_amount": "2.50"
}
],
"contactpersons": [
{
"contactperson_id": "903000000000099"
}
],
"notes": [
{
"note_id": "903000076543",
"description": "",
"commented_by": "Benjamin",
"commented_time": "2016-06-11T17:57:13-0700"
}
],
"payment_gateways": [
{
"payment_gateway": null
}
],
"unbilled_charge_id": "903000000000099",
"can_charge_setup_fee_immediately": false
}
Create a subscription
Create a new subscription. To create a subscription for a new customer, you have to pass the customer object. To create a subscription for a existing customer pass the customer_id
of that customer.
OAuth Scope : ZohoSubscriptions.subscriptions.CREATE
Arguments
display_name
, company_name
, first_name
, last_name
, email
, fax
, currency_code
and billing_address
.attention
, street
, city
, state
,zip
, country
and fax
.attention
, street
, city
, state
,zip
, country
and fax
.Allowed values for
gst_treatment
: business_gst
, business_none
, consumer
, overseas
business_gst
- For a GST Registered business owner. business_none
- For a GST unregistered business owner. consumer
- For a consumer. overseas
- Customer for whom you export your goods/services.uk
. If the customer is in an EU country & VAT registered, you are resides in Northen Ireland and selling Goods then his VAT treatment is eu_vat_registered
, if he resides outside of the UK then his VAT treatment is overseas
(For Pre Brexit, this can be split as eu_vat_registered
, eu_vat_not_registered
and non_eu
).eu_vat_registered
. (This node is only available for EU VAT registered customers.)is_taxable
is true
.contactperson_id
.auto_collect
is true
plan_code
, name
, price
, quantity
.exclude_setup_fee
is true
setup_fee_tax_id
must be empty for applying tax Exemption.tax_id
must be empty for applying tax Exemption.billing_cycles
specified at the time of creation of the plan would be the default value. If this needs to be overridden for this particular subscription, a value can be provided here.exclude_trial
is true
addon_code
, name
, price
and quantity
.tax_id
must be empty for applying tax Exemption.test_gateway
, payflow_pro
, stripe
, 2checkout
, authorize_net
, payments_pro
, forte
, worldpay
, wepay
.acquisition_of_merchandise
, return_discount_bonus
, general_expense
, buildings
, furniture_office_equipment
, transport_equipment
, computer_equipmentdye_molds_tools
, telephone_communication
, satellite_communication
, other_machinery_equipment
, hospital_expense
, medical_expense_disability
, funeral_expense
, donation
, interest_mortage_loans
, contribution_sar
, medical_expense_insurance_pormium
, school_transportation_expense
, deposit_saving_account
, payment_educational_service
, no_tax_effect
, payment
, payroll
.auto_collect
node is true and any other payment method is not specified
parameters_data='{"field1":"value1","field2":"value2"}';
headers_data = Map();
headers_data.put("X-com-zoho-subscriptions-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/billing/v1/subscriptions"
type: POST
headers: headers_data
content-type: application/json
parameters: parameters_data
connection: <connection_name>
]
info response;
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}");
Request request = new Request.Builder()
.url("https://www.zohoapis.com/billing/v1/subscriptions")
.post(body)
.addHeader("X-com-zoho-subscriptions-organizationid", "10234695")
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'POST',
headers: {
'X-com-zoho-subscriptions-organizationid': '10234695',
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f',
'content-type': 'application/json'
},
body: '{"field1":"value1","field2":"value2"}'
};
fetch('https://www.zohoapis.com/billing/v1/subscriptions', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}"
headers = {
'X-com-zoho-subscriptions-organizationid': "10234695",
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
'content-type': "application/json"
}
conn.request("POST", "/billing/v1/subscriptions", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "POST",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/billing/v1/subscriptions",
"headers": {
"X-com-zoho-subscriptions-organizationid": "10234695",
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
"content-type": "application/json"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.write(JSON.stringify({field1: 'value1', field2: 'value2'}));
req.end();
curl --request POST \
--url https://www.zohoapis.com/billing/v1/subscriptions \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'X-com-zoho-subscriptions-organizationid: 10234695' \
--header 'content-type: application/json' \
--data '{"field1":"value1","field2":"value2"}'
{
"add_to_unbilled_charges": true,
"customer": {
"display_name": "Bowman Furniture",
"salutation": "Mr.",
"first_name": "Benjamin",
"last_name": "George",
"email": "benjamin.george@bowmanfurniture.com",
"company_name": "Bowman Furniture",
"billing_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"country": "U.S.A",
"zip": 92612,
"fax": 4527389
},
"shipping_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"zip": 92612,
"country": "U.S.A",
"fax": 4527389
},
"payment_terms": 0,
"payment_terms_label": "Due On Receipt",
"custom_fields": [
{
"label": "string",
"value": "string"
}
],
"place_of_contact": "TN",
"gst_no": "33AAAAA0000A1Z5",
"gst_treatment": "business_gst",
"vat_treatment": "overseas",
"vat_reg_no": 51423456782,
"country_code": "DE",
"is_taxable": true,
"tax_id": "903000002345",
"tax_authority_id": "903000006345",
"tax_authority_name": "ATO",
"tax_exemption_id": "903000006345",
"tax_exemption_code": "GST FREE"
},
"customer_id": null,
"payment_terms": 0,
"payment_terms_label": "Due On Receipt",
"custom_fields": [
{
"label": "string",
"value": "string"
}
],
"contactpersons": [
{
"contactperson_id": "903000000000099"
}
],
"card_id": "9030000079226",
"starts_at": "2016-06-05",
"exchange_rate": 2,
"place_of_supply": "TN",
"plan": {
"plan_code": "basic-monthly",
"plan_description": "Monthly Basic plan",
"price": 50,
"setup_fee": 20,
"setup_fee_tax_id": "9030000123123",
"tags": [
{
"tag_id": 0,
"tag_option_id": 0
}
],
"item_custom_fields": [
{
"label": "string",
"value": "string"
}
],
"quantity": 1,
"tax_id": null,
"tax_exemption_id": "903000006345",
"tax_exemption_code": "GST FREE",
"tds_tax_id": 982000000557012,
"sat_item_key_code": 71121206,
"unitkey_code": "E48",
"setup_fee_tax_exemption_id": "9030000123098",
"setup_fee_tax_exemption_code": "GST FREE",
"exclude_trial": false,
"exclude_setup_fee": false,
"billing_cycles": -1,
"trial_days": 0
},
"addons": [
{
"addon_code": "Email-basic",
"addon_description": "Monthly addon.",
"price": 50,
"quantity": null,
"tags": [
{
"tag_id": 0,
"tag_option_id": 0
}
],
"item_custom_fields": [
{
"label": "string",
"value": "string"
}
],
"tax_id": null,
"tax_exemption_id": "903000006345",
"tax_exemption_code": "GST FREE",
"tds_tax_id": 982000000557012,
"sat_item_key_code": 71121206,
"unitkey_code": "E48"
}
],
"coupon_code": "Flat10",
"auto_collect": true,
"reference_id": "bowmanfurniture",
"salesperson_name": "Franklin",
"payment_gateways": [
{
"payment_gateway": null
}
],
"create_backdated_invoice": true,
"can_charge_setup_fee_immediately": false,
"template_id": 903000000063009,
"cfdi_usage": "acquisition_of_merchandise",
"allow_partial_payments": true,
"account_id": "90300000792007"
}
{
"code": 0,
"message": "Subscription has been created successfully.",
"subscription": {
"subscription_id": "90300000079200",
"name": "GatorHost-Basic",
"status": "live",
"amount": 50,
"created_at": "2016-06-11",
"activated_at": "2016-06-15",
"current_term_starts_at": "2016-06-05",
"current_term_ends_at": "2016-06-05",
"last_billing_at": "2016-06-05",
"next_billing_at": "2016-06-30",
"expires_at": "2016-06-05",
"interval": 1,
"interval_unit": "months",
"auto_collect": true,
"created_time": "2016-06-11T17:57:13-0700",
"updated_time": "2016-06-04T16:44:15-0700",
"reference_id": "bowmanfurniture",
"place_of_supply": "TN",
"salesperson_id": "903000000058001",
"salesperson_name": "Franklin",
"child_invoice_id": "90300000079210",
"currency_code": "USD",
"currency_symbol": "$",
"end_of_term": false,
"product_id": "90300000079065",
"product_name": "Bowman Furniture",
"plan": {
"plan_code": "basic-monthly",
"name": "GatorHost-Basic",
"quantity": 1,
"price": 50,
"tags": [
{
"tag_id": 0,
"tag_option_id": 0
}
],
"item_custom_fields": [
{
"label": "string",
"value": "string"
}
],
"discount": 20,
"total": 50,
"setup_fee": 20,
"plan_description": "Monthly Basic plan",
"tax_id": "903000002345",
"trial_days": 0
},
"addons": [
{
"addon_code": "Email-basic",
"name": "Monthly Addon",
"addon_description": "Monthly addon.",
"quantity": 1,
"tags": [
{
"tag_id": 0,
"tag_option_id": 0
}
],
"item_custom_fields": [
{
"label": "string",
"value": "string"
}
],
"price": 50,
"discount": null,
"total": null,
"tax_id": null
}
],
"coupon": {
"coupon_code": "Flat10",
"discount_amount": 44
},
"card": {
"card_id": "9030000079226",
"last_four_digits": 2145,
"payment_gateway": "payflow_pro",
"expiry_month": 9,
"expiry_year": 2030
},
"payment_terms": 0,
"payment_terms_label": "Due On Receipt",
"can_add_bank_account": true,
"customer": {
"customer_id": "903000000000099",
"display_name": "Bowman Furniture",
"salutation": "Mr.",
"first_name": "Benjamin",
"last_name": "George",
"email": "benjamin.george@bowmanfurniture.com",
"company_name": "Bowman Furniture",
"billing_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"country": "U.S.A",
"zip": 92612,
"fax": 4527389
},
"shipping_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"zip": 92612,
"country": "U.S.A",
"fax": 4527389
},
"payment_terms": 0,
"payment_terms_label": "Due On Receipt"
},
"custom_fields": [
{
"index": 1,
"label": "string",
"value": "string",
"data_type": "text"
}
],
"taxes": [
{
"tax_id": "903000002345",
"tax_name": "GST",
"tax_amount": "2.50"
}
],
"contactpersons": [
{
"contactperson_id": "903000000000099"
}
],
"notes": [
{
"note_id": "903000076543",
"description": "",
"commented_by": "Benjamin",
"commented_time": "2016-06-11T17:57:13-0700"
}
],
"payment_gateways": [
{
"payment_gateway": null
}
],
"unbilled_charge_id": "903000000000099",
"can_charge_setup_fee_immediately": false
}
}
List all subscriptions
List of subscriptions that match the given subscription status.
To list the subscriptions of a particular customer append a param customer_id={customer_id}
.
To list subscriptions based on Reference#, append the param reference_contains={reference_value}
.
OAuth Scope : ZohoSubscriptions.subscriptions.READ
Query Parameters
All
, ACTIVE
, LIVE
, FUTURE
, TRIAL
, PAST_DUE
, UNPAID
, NON_RENEWING
, CANCELLED_FROM_DUNNING
, CANCELLED
, EXPIRED
, TRIAL_EXPIRED
, CANCELLED_LAST_MONTH
, CANCELLED_THIS_MONTH
. To list subscriptions based on Online/Offline, pass the
filter_by
param value as SubscriptionMode.ONLINE
or SubscriptionMode.OFFLINE
. headers_data = Map();
headers_data.put("X-com-zoho-subscriptions-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/billing/v1/subscriptions"
type: GET
headers: headers_data
connection: <connection_name>
]
info response;
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://www.zohoapis.com/billing/v1/subscriptions")
.get()
.addHeader("X-com-zoho-subscriptions-organizationid", "10234695")
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'GET',
headers: {
'X-com-zoho-subscriptions-organizationid': '10234695',
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
}
};
fetch('https://www.zohoapis.com/billing/v1/subscriptions', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
headers = {
'X-com-zoho-subscriptions-organizationid': "10234695",
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
conn.request("GET", "/billing/v1/subscriptions", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "GET",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/billing/v1/subscriptions",
"headers": {
"X-com-zoho-subscriptions-organizationid": "10234695",
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
curl --request GET \
--url https://www.zohoapis.com/billing/v1/subscriptions \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'X-com-zoho-subscriptions-organizationid: 10234695'
{
"code": 0,
"message": "success",
"subscriptions": [
{
"customer_id": "903000000000099",
"customer_name": "Benjamin",
"email": "benjamin.george@bowmanfurniture.com",
"plan_name": "Basic Monthly",
"subscription_id": "90300000079200",
"name": "GatorHost-Basic",
"status": "live",
"amount": 50,
"created_at": "2016-06-11",
"activated_at": "2016-06-15",
"current_term_ends_at": "2016-06-05",
"current_term_starts_at": "2016-06-05",
"last_billing_at": "2016-06-05",
"next_billing_at": "2016-06-30",
"expires_at": "2016-06-05",
"interval": 1,
"interval_unit": "months",
"auto_collect": true,
"created_time": "2016-06-11T17:57:13-0700",
"updated_time": "2016-06-04T16:44:15-0700",
"reference_id": "bowmanfurniture",
"salesperson_id": "903000000058001",
"salesperson_name": "Franklin",
"currency_code": "USD",
"currency_symbol": "$"
},
{...},
{...}
]
}
Update a subscription
Update details of an existing subscription.
OAuth Scope : ZohoSubscriptions.subscriptions.UPDATE
Arguments
auto_collect
is true.
plan_code
, name
, price
, quantity
.exclude_setup_fee
is true
tax_id
must be empty for applying tax Exemption.billing_cycles
specified at the time of creation of the plan would be the default value. If this needs to be overridden for this particular subscription, a value can be provided here.exclude_trial
is true
addon_code
, name
, price
and quantity
.tax_id
must be empty for applying tax Exemption.end_of_term
is set to false. If end_of_term
is set to true, the subscription changes take effect only after the current term of the subscription ends.contactperson_id
.test_gateway
, payflow_pro
, stripe
, 2checkout
, authorize_net
, payments_pro
, forte
, worldpay
, wepay
.acquisition_of_merchandise
, return_discount_bonus
, general_expense
, buildings
, furniture_office_equipment
, transport_equipment
, computer_equipmentdye_molds_tools
, telephone_communication
, satellite_communication
, other_machinery_equipment
, hospital_expense
, medical_expense_disability
, funeral_expense
, donation
, interest_mortage_loans
, contribution_sar
, medical_expense_insurance_pormium
, school_transportation_expense
, deposit_saving_account
, payment_educational_service
, no_tax_effect
, payment
, payroll
.auto_collect
node is true and any other payment method is not specified
parameters_data='{"field1":"value1","field2":"value2"}';
headers_data = Map();
headers_data.put("X-com-zoho-subscriptions-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/billing/v1/subscriptions/90300000079200"
type: PUT
headers: headers_data
content-type: application/json
parameters: parameters_data
connection: <connection_name>
]
info response;
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}");
Request request = new Request.Builder()
.url("https://www.zohoapis.com/billing/v1/subscriptions/90300000079200")
.put(body)
.addHeader("X-com-zoho-subscriptions-organizationid", "10234695")
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'PUT',
headers: {
'X-com-zoho-subscriptions-organizationid': '10234695',
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f',
'content-type': 'application/json'
},
body: '{"field1":"value1","field2":"value2"}'
};
fetch('https://www.zohoapis.com/billing/v1/subscriptions/90300000079200', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}"
headers = {
'X-com-zoho-subscriptions-organizationid': "10234695",
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
'content-type': "application/json"
}
conn.request("PUT", "/billing/v1/subscriptions/90300000079200", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "PUT",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/billing/v1/subscriptions/90300000079200",
"headers": {
"X-com-zoho-subscriptions-organizationid": "10234695",
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
"content-type": "application/json"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.write(JSON.stringify({field1: 'value1', field2: 'value2'}));
req.end();
curl --request PUT \
--url https://www.zohoapis.com/billing/v1/subscriptions/90300000079200 \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'X-com-zoho-subscriptions-organizationid: 10234695' \
--header 'content-type: application/json' \
--data '{"field1":"value1","field2":"value2"}'
{
"card_id": "9030000079226",
"exchange_rate": 2,
"plan": {
"plan_code": "basic-monthly",
"plan_description": "Monthly Basic plan",
"price": 50,
"setup_fee": 20,
"quantity": 1,
"tags": [
{
"tag_id": 0,
"tag_option_id": 0
}
],
"item_custom_fields": [
{
"label": "string",
"value": "string"
}
],
"tax_id": null,
"tax_exemption_id": "903000006345",
"tax_exemption_code": "GST FREE",
"tds_tax_id": 982000000557012,
"sat_item_key_code": 71121206,
"unitkey_code": "E48",
"setup_fee_tax_exemption_id": "9030000123098",
"setup_fee_tax_exemption_code": "GST FREE",
"exclude_trial": false,
"exclude_setup_fee": false,
"billing_cycles": -1,
"trial_days": 0
},
"addons": [
{
"addon_code": "Email-basic",
"addon_description": "Monthly addon.",
"price": 50,
"quantity": null,
"tags": [
{
"tag_id": 0,
"tag_option_id": 0
}
],
"item_custom_fields": [
{
"label": "string",
"value": "string"
}
],
"tax_id": null,
"tax_exemption_id": "903000006345",
"tax_exemption_code": "GST FREE",
"tds_tax_id": 982000000557012,
"sat_item_key_code": 71121206,
"unitkey_code": "E48"
}
],
"auto_collect": true,
"coupon_code": "Flat10",
"reference_id": "bowmanfurniture",
"salesperson_id": "903000000058001",
"salesperson_name": "Franklin",
"end_of_term": false,
"contactpersons": [
{
"contactperson_id": "903000000000099"
}
],
"payment_terms": 0,
"payment_terms_label": "Due On Receipt",
"payment_gateways": [
{
"payment_gateway": null
}
],
"custom_fields": [
{
"index": 1,
"label": "string",
"value": "string",
"data_type": "text"
}
],
"template_id": 903000000063009,
"can_charge_setup_fee_immediately": false,
"cfdi_usage": "acquisition_of_merchandise",
"allow_partial_payments": true,
"customer_id": "903000000000099",
"account_id": "90300000792007"
}
{
"code": 0,
"message": "Subscription has been updated successfully.",
"subscription": {
"subscription_id": "90300000079200",
"name": "GatorHost-Basic",
"status": "live",
"amount": 50,
"created_at": "2016-06-11",
"activated_at": "2016-06-15",
"current_term_starts_at": "2016-06-05",
"current_term_ends_at": "2016-06-05",
"last_billing_at": "2016-06-05",
"next_billing_at": "2016-06-30",
"expires_at": "2016-06-05",
"interval": 1,
"interval_unit": "months",
"auto_collect": true,
"created_time": "2016-06-11T17:57:13-0700",
"updated_time": "2016-06-04T16:44:15-0700",
"reference_id": "bowmanfurniture",
"salesperson_id": "903000000058001",
"salesperson_name": "Franklin",
"child_invoice_id": "90300000079210",
"currency_code": "USD",
"currency_symbol": "$",
"end_of_term": false,
"product_id": "90300000079065",
"product_name": "Bowman Furniture",
"plan": {
"plan_code": "basic-monthly",
"name": "GatorHost-Basic",
"quantity": 1,
"price": 50,
"tags": [
{
"tag_id": 0,
"tag_option_id": 0
}
],
"item_custom_fields": [
{
"label": "string",
"value": "string"
}
],
"discount": 20,
"total": 50,
"setup_fee": 20,
"plan_description": "Monthly Basic plan",
"tax_id": "903000002345",
"trial_days": 0
},
"addons": [
{
"addon_code": "Email-basic",
"name": "Monthly Addon",
"addon_description": "Monthly addon.",
"quantity": 1,
"tags": [
{
"tag_id": 0,
"tag_option_id": 0
}
],
"item_custom_fields": [
{
"label": "string",
"value": "string"
}
],
"price": 10,
"discount": null,
"total": null,
"tax_id": null
}
],
"coupon": {
"coupon_code": "Flat10",
"discount_amount": 44
},
"card": {
"card_id": "90300000079226",
"last_four_digits": 2145,
"payment_gateway": "payflow_pro",
"expiry_month": 9,
"expiry_year": 2030
},
"payment_terms": 0,
"payment_terms_label": "Due On Receipt",
"can_add_bank_account": true,
"customer": {
"display_name": "Bowman Furniture",
"salutation": "Mr.",
"first_name": "Benjamin",
"last_name": "George",
"email": "benjamin.george@bowmanfurniture.com",
"company_name": "Bowman Furniture",
"billing_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"country": "U.S.A",
"zip": 92612,
"fax": 4527389
},
"shipping_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"zip": 92612,
"country": "U.S.A",
"fax": 4527389
},
"payment_terms": 0,
"payment_terms_label": "Due On Receipt"
},
"custom_fields": [
{
"index": 1,
"label": "string",
"value": "string",
"data_type": "text"
}
],
"taxes": [
{
"tax_id": "903000002345",
"tax_name": "GST",
"tax_amount": "2.50"
}
],
"contactpersons": [
{
"contactperson_id": "903000000000099"
}
],
"notes": [
{
"note_id": "903000076543",
"description": "",
"commented_by": "Benjamin",
"commented_time": "2016-06-11T17:57:13-0700"
}
],
"payment_gateways": [
{
"payment_gateway": null
}
],
"can_charge_setup_fee_immediately": false
}
}
Retrieve a subscription
Details of an existing subscription.
OAuth Scope : ZohoSubscriptions.subscriptions.READ
headers_data = Map();
headers_data.put("X-com-zoho-subscriptions-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/billing/v1/subscriptions/90300000079200"
type: GET
headers: headers_data
connection: <connection_name>
]
info response;
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://www.zohoapis.com/billing/v1/subscriptions/90300000079200")
.get()
.addHeader("X-com-zoho-subscriptions-organizationid", "10234695")
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'GET',
headers: {
'X-com-zoho-subscriptions-organizationid': '10234695',
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
}
};
fetch('https://www.zohoapis.com/billing/v1/subscriptions/90300000079200', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
headers = {
'X-com-zoho-subscriptions-organizationid': "10234695",
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
conn.request("GET", "/billing/v1/subscriptions/90300000079200", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "GET",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/billing/v1/subscriptions/90300000079200",
"headers": {
"X-com-zoho-subscriptions-organizationid": "10234695",
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
curl --request GET \
--url https://www.zohoapis.com/billing/v1/subscriptions/90300000079200 \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'X-com-zoho-subscriptions-organizationid: 10234695'
{
"code": 0,
"message": "success",
"subscription": {
"subscription_id": "90300000079200",
"unbilled_charge_id": "903000000000099",
"name": "GatorHost-Basic",
"status": "live",
"amount": 50,
"created_at": "2016-06-11",
"activated_at": "2016-06-15",
"current_term_starts_at": "2016-06-05",
"current_term_ends_at": "2016-06-05",
"last_billing_at": "2016-06-05",
"next_billing_at": "2016-06-30",
"expires_at": "2016-06-05",
"interval": 1,
"interval_unit": "months",
"auto_collect": true,
"created_time": "2016-06-11T17:57:13-0700",
"updated_time": "2016-06-04T16:44:15-0700",
"reference_id": "bowmanfurniture",
"salesperson_id": "903000000058001",
"salesperson_name": "Franklin",
"child_invoice_id": "90300000079210",
"currency_code": "USD",
"currency_symbol": "$",
"end_of_term": false,
"product_id": "90300000079065",
"product_name": "Bowman Furniture",
"plan": {
"plan_code": "basic-monthly",
"name": "GatorHost-Basic",
"quantity": 1,
"item_custom_fields": [
{
"label": "string",
"value": "string"
}
],
"price": 50,
"tags": [
{
"tag_id": 0,
"tag_option_id": 0
}
],
"discount": 20,
"total": 50,
"setup_fee": 20,
"plan_description": "Monthly Basic plan",
"tax_id": "903000002345",
"trial_days": 0
},
"addons": [
{
"addon_code": "Email-basic",
"name": "Monthly Addon",
"addon_description": "Monthly addon.",
"quantity": 1,
"tags": [
{
"tag_id": 0,
"tag_option_id": 0
}
],
"item_custom_fields": [
{
"label": "string",
"value": "string"
}
],
"price": 10,
"discount": null,
"total": null,
"tax_id": null
}
],
"coupon": {
"coupon_code": "Flat10",
"discount_amount": 44
},
"card": {
"card_id": "90300000079226",
"last_four_digits": 2145,
"payment_gateway": "payflow_pro",
"expiry_month": 9,
"expiry_year": 2030,
"is_primary": true,
"is_backup": "false;"
},
"payment_terms": 0,
"payment_terms_label": "Due On Receipt",
"can_add_bank_account": true,
"customer": {
"customer_id": "903000000000099",
"display_name": "Bowman Furniture",
"first_name": "Benjamin",
"last_name": "George",
"email": "benjamin.george@bowmanfurniture.com",
"company_name": "Bowman Furniture",
"billing_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"country": "U.S.A",
"zip": 92612,
"fax": 4527389
},
"shipping_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"zip": 92612,
"country": "U.S.A",
"fax": 4527389
},
"payment_terms": 0,
"payment_terms_label": "Due On Receipt"
},
"custom_fields": [
{
"index": 1,
"label": "string",
"value": "string",
"data_type": "text"
}
],
"taxes": [
{
"tax_id": "903000002345",
"tax_name": "GST",
"tax_amount": "2.50"
}
],
"contactpersons": [
{
"contactperson_id": "903000000000099"
}
],
"notes": [
{
"note_id": "903000076543",
"description": "",
"commented_by": "Benjamin",
"commented_time": "2016-06-11T17:57:13-0700"
}
],
"payment_gateways": [
{
"payment_gateway": null
}
]
}
}
Delete a subscription
Delete an existing subscription.
OAuth Scope : ZohoSubscriptions.subscriptions.DELETE
headers_data = Map();
headers_data.put("X-com-zoho-subscriptions-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/billing/v1/subscriptions/90300000079200"
type: DELETE
headers: headers_data
connection: <connection_name>
]
info response;
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://www.zohoapis.com/billing/v1/subscriptions/90300000079200")
.delete(null)
.addHeader("X-com-zoho-subscriptions-organizationid", "10234695")
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'DELETE',
headers: {
'X-com-zoho-subscriptions-organizationid': '10234695',
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
}
};
fetch('https://www.zohoapis.com/billing/v1/subscriptions/90300000079200', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
headers = {
'X-com-zoho-subscriptions-organizationid': "10234695",
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
conn.request("DELETE", "/billing/v1/subscriptions/90300000079200", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "DELETE",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/billing/v1/subscriptions/90300000079200",
"headers": {
"X-com-zoho-subscriptions-organizationid": "10234695",
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
curl --request DELETE \
--url https://www.zohoapis.com/billing/v1/subscriptions/90300000079200 \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'X-com-zoho-subscriptions-organizationid: 10234695'
{
"code": 0,
"message": "The subscription has been deleted."
}
Cancel a subscription
Your subscription can be either cancelled immediately or at the end of the current term based on the value of `cancel_at_end`.
OAuth Scope : ZohoSubscriptions.subscriptions.CREATE
Query Parameters
headers_data = Map();
headers_data.put("X-com-zoho-subscriptions-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/cancel"
type: POST
headers: headers_data
connection: <connection_name>
]
info response;
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/cancel")
.post(null)
.addHeader("X-com-zoho-subscriptions-organizationid", "10234695")
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'POST',
headers: {
'X-com-zoho-subscriptions-organizationid': '10234695',
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
}
};
fetch('https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/cancel', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
headers = {
'X-com-zoho-subscriptions-organizationid': "10234695",
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
conn.request("POST", "/billing/v1/subscriptions/90300000079200/cancel", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "POST",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/billing/v1/subscriptions/90300000079200/cancel",
"headers": {
"X-com-zoho-subscriptions-organizationid": "10234695",
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
curl --request POST \
--url https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/cancel \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'X-com-zoho-subscriptions-organizationid: 10234695'
{
"code": 0,
"message": "Your subscription will be canceled at the end of this term.",
"subscription": {
"subscription_id": "90300000079200",
"name": "GatorHost-Basic",
"status": "live",
"amount": 50,
"created_at": "2016-06-11",
"activated_at": "2016-06-15",
"current_term_starts_at": "2016-06-05",
"current_term_ends_at": "2016-06-05",
"last_billing_at": "2016-06-05",
"next_billing_at": "2016-06-30",
"expires_at": "2016-06-05",
"interval": 1,
"interval_unit": "months",
"auto_collect": true,
"created_time": "2016-06-11T17:57:13-0700",
"updated_time": "2016-06-04T16:44:15-0700",
"reference_id": "bowmanfurniture",
"salesperson_id": "903000000058001",
"salesperson_name": "Franklin",
"child_invoice_id": "90300000079210",
"currency_code": "USD",
"currency_symbol": "$",
"end_of_term": false,
"product_id": "90300000079065",
"product_name": "Bowman Furniture",
"plan": {
"plan_code": "basic-monthly",
"name": "GatorHost-Basic",
"quantity": 1,
"price": 50,
"discount": 20,
"total": 50,
"setup_fee": 20,
"plan_description": "Monthly Basic plan",
"tax_id": "903000002345",
"trial_days": 0
},
"addons": [
{
"addon_code": "Email-basic",
"name": "Monthly Addon",
"addon_description": "Monthly addon.",
"quantity": 1,
"price": 10,
"discount": null,
"total": null,
"tax_id": null
}
],
"coupon": {
"coupon_code": "Flat10",
"discount_amount": 44
},
"card": {
"card_id": "9030000079226",
"last_four_digits": 2145,
"payment_gateway": "payflow_pro",
"expiry_month": 9,
"expiry_year": 2030
},
"payment_terms": 0,
"payment_terms_label": "Due On Receipt",
"can_add_bank_account": true,
"customer": {
"customer_id": "903000000099",
"display_name": "Bowman Furniture",
"salutation": "Mr.",
"first_name": "Benjamin",
"last_name": "George",
"email": "benjamin.george@bowmanfurniture.com",
"company_name": "Bowman Furniture",
"billing_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"country": "U.S.A",
"zip": 92612,
"fax": 4527389
},
"shipping_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"zip": 92612,
"country": "U.S.A",
"fax": 4527389
},
"payment_terms": 0,
"payment_terms_label": "Due On Receipt"
},
"custom_fields": [
{
"index": 1,
"label": "string",
"value": "string",
"data_type": "text"
}
],
"taxes": [
{
"tax_id": "903000002345",
"tax_name": "GST",
"tax_amount": "2.50"
}
],
"contactpersons": [
{
"contactperson_id": "903000000000099"
}
],
"notes": [
{
"note_id": "903000076543",
"description": "",
"commented_by": "Benjamin",
"commented_time": "2016-06-11T17:57:13-0700"
}
],
"payment_gateways": [
{
"payment_gateway": null
}
]
}
}
Reactivate subscription
Reactivate a subscription. You can reactivate a subscription only if the `status` of the subscription is non-renewing.
OAuth Scope : ZohoSubscriptions.subscriptions.CREATE
headers_data = Map();
headers_data.put("X-com-zoho-subscriptions-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/reactivate"
type: POST
headers: headers_data
connection: <connection_name>
]
info response;
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/reactivate")
.post(null)
.addHeader("X-com-zoho-subscriptions-organizationid", "10234695")
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'POST',
headers: {
'X-com-zoho-subscriptions-organizationid': '10234695',
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
}
};
fetch('https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/reactivate', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
headers = {
'X-com-zoho-subscriptions-organizationid': "10234695",
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
conn.request("POST", "/billing/v1/subscriptions/90300000079200/reactivate", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "POST",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/billing/v1/subscriptions/90300000079200/reactivate",
"headers": {
"X-com-zoho-subscriptions-organizationid": "10234695",
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
curl --request POST \
--url https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/reactivate \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'X-com-zoho-subscriptions-organizationid: 10234695'
{
"code": 0,
"message": "Subscription has been reactivated successfully.",
"subscription": {
"subscription_id": "90300000079200",
"name": "GatorHost-Basic",
"status": "live",
"amount": 50,
"created_at": "2016-06-11",
"activated_at": "2016-06-15",
"current_term_starts_at": "2016-06-05",
"current_term_ends_at": "2016-06-05",
"last_billing_at": "2016-06-05",
"next_billing_at": "2016-06-30",
"expires_at": "2016-06-05",
"interval": 1,
"interval_unit": "months",
"auto_collect": true,
"created_time": "2016-06-11T17:57:13-0700",
"updated_time": "2016-06-04T16:44:15-0700",
"reference_id": "bowmanfurniture",
"salesperson_id": "903000000058001",
"salesperson_name": "Franklin",
"child_invoice_id": "90300000079210",
"currency_code": "USD",
"currency_symbol": "$",
"end_of_term": false,
"product_id": "90300000079065",
"product_name": "Bowman Furniture",
"plan": {
"plan_code": "basic-monthly",
"name": "GatorHost-Basic",
"quantity": 1,
"price": 50,
"tags": [
{
"tag_id": 0,
"tag_option_id": 0
}
],
"item_custom_fields": [
{
"label": "string",
"value": "string"
}
],
"discount": 20,
"total": 50,
"setup_fee": 20,
"plan_description": "Monthly Basic plan",
"billing_cycles": -1,
"trial_days": 0
},
"addons": [
{
"addon_code": "Email-basic",
"name": "Monthly Addon",
"addon_description": "Monthly addon.",
"quantity": 1,
"tags": [
{
"tag_id": 0,
"tag_option_id": 0
}
],
"item_custom_fields": [
{
"label": "string",
"value": "string"
}
],
"price": 10,
"discount": null,
"total": null
}
],
"coupon": {
"coupon_code": "Flat10",
"discount_amount": 44
},
"card": {
"card_id": "90300000079226",
"last_four_digits": 2145,
"payment_gateway": "payflow_pro",
"expiry_month": 9,
"expiry_year": 2030
},
"payment_terms": 0,
"payment_terms_label": "Due On Receipt",
"can_add_bank_account": true,
"customer": {
"customer_id": "903000000000099",
"display_name": "Bowman Furniture",
"first_name": "Benjamin",
"last_name": "George",
"email": "benjamin.george@bowmanfurniture.com",
"company_name": "Bowman Furniture",
"billing_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"country": "U.S.A",
"zip": 92612,
"fax": 4527389
},
"shipping_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"zip": 92612,
"country": "U.S.A",
"fax": 4527389
},
"payment_terms": 0,
"payment_terms_label": "Due On Receipt"
},
"custom_fields": [
{
"index": 1,
"label": "string",
"value": "string",
"data_type": "text"
}
],
"taxes": [
{
"tax_id": "903000002345",
"tax_name": "GST",
"tax_amount": "2.50"
}
],
"contactpersons": [
{
"contactperson_id": "903000000000099"
}
],
"notes": [
{
"note_id": "903000076543",
"description": "string",
"commented_by": "Benjamin",
"commented_time": "2016-06-11T17:57:13-0700"
}
],
"payment_gateways": [
{
"payment_gateway": null
}
]
}
}
View Scheduled Changes
To view the End of Term changes.
OAuth Scope : ZohoSubscriptions.subscriptions.READ
headers_data = Map();
headers_data.put("X-com-zoho-subscriptions-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/scheduledchanges"
type: GET
headers: headers_data
connection: <connection_name>
]
info response;
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/scheduledchanges")
.get()
.addHeader("X-com-zoho-subscriptions-organizationid", "10234695")
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'GET',
headers: {
'X-com-zoho-subscriptions-organizationid': '10234695',
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
}
};
fetch('https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/scheduledchanges', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
headers = {
'X-com-zoho-subscriptions-organizationid': "10234695",
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
conn.request("GET", "/billing/v1/subscriptions/90300000079200/scheduledchanges", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "GET",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/billing/v1/subscriptions/90300000079200/scheduledchanges",
"headers": {
"X-com-zoho-subscriptions-organizationid": "10234695",
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
curl --request GET \
--url https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/scheduledchanges \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'X-com-zoho-subscriptions-organizationid: 10234695'
{
"code": 0,
"message": "success",
"subscription": {
"subscription_id": "90300000079200",
"name": "GatorHost-Basic",
"status": "live",
"amount": 50,
"created_at": "2016-06-11",
"activated_at": "2016-06-15",
"current_term_ends_at": "2016-06-05",
"current_term_starts_at": "2016-06-05",
"last_billing_at": "2016-06-05",
"next_billing_at": "2016-06-30",
"expires_at": "2016-06-05",
"interval": 1,
"interval_unit": "months",
"auto_collect": true,
"created_time": "2016-06-11T17:57:13-0700",
"updated_time": "2016-06-04T16:44:15-0700",
"reference_id": "bowmanfurniture",
"salesperson_id": "903000000058001",
"salesperson_name": "Franklin",
"currency_code": "USD",
"currency_symbol": "$",
"product_id": "90300000079065",
"plan": {
"plan_code": "basic-monthly",
"name": "GatorHost-Basic",
"quantity": 1,
"price": 50,
"discount": 20,
"total": 50,
"setup_fee": 20,
"plan_description": "Monthly Basic plan",
"tax_id": "903000002345",
"trial_days": 0
},
"addons": [
{
"addon_code": "Email-basic",
"name": "Monthly Addon",
"addon_description": "Monthly addon.",
"quantity": 1,
"price": 10,
"discount": null,
"total": null,
"tax_id": null
}
],
"taxes": [
{
"tax_id": "903000002345",
"tax_name": "GST",
"tax_amount": "2.50"
}
],
"coupon": {
"coupon_code": "Flat10",
"discount_amount": 44
},
"tax_id": "903000002345"
}
}
Subscription Activities
List of all the recent activities associated to a subscription.
OAuth Scope : ZohoSubscriptions.subscriptions.READ
headers_data = Map();
headers_data.put("X-com-zoho-subscriptions-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/recentactivities"
type: GET
headers: headers_data
connection: <connection_name>
]
info response;
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/recentactivities")
.get()
.addHeader("X-com-zoho-subscriptions-organizationid", "10234695")
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'GET',
headers: {
'X-com-zoho-subscriptions-organizationid': '10234695',
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
}
};
fetch('https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/recentactivities', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
headers = {
'X-com-zoho-subscriptions-organizationid': "10234695",
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
conn.request("GET", "/billing/v1/subscriptions/90300000079200/recentactivities", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "GET",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/billing/v1/subscriptions/90300000079200/recentactivities",
"headers": {
"X-com-zoho-subscriptions-organizationid": "10234695",
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
curl --request GET \
--url https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/recentactivities \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'X-com-zoho-subscriptions-organizationid: 10234695'
{
"code": 0,
"message": "success",
"activities": [
{
"activity_id": "90300000745213",
"description": "Invoice created - INV-000241",
"activity_time": "2016-06-11T17:57:13-0700",
"commented_by": "Zoho Billing"
},
{...},
{...}
]
}
Buy one-time addon
Include a one-time addon in the subscription.
OAuth Scope : ZohoSubscriptions.subscriptions.CREATE
Arguments
addon_code
, name
, price
and quantity
.tax_id
must be empty for applying tax Exemption.parameters_data='{"field1":"value1","field2":"value2"}';
headers_data = Map();
headers_data.put("X-com-zoho-subscriptions-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/buyonetimeaddon"
type: POST
headers: headers_data
content-type: application/json
parameters: parameters_data
connection: <connection_name>
]
info response;
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}");
Request request = new Request.Builder()
.url("https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/buyonetimeaddon")
.post(body)
.addHeader("X-com-zoho-subscriptions-organizationid", "10234695")
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'POST',
headers: {
'X-com-zoho-subscriptions-organizationid': '10234695',
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f',
'content-type': 'application/json'
},
body: '{"field1":"value1","field2":"value2"}'
};
fetch('https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/buyonetimeaddon', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}"
headers = {
'X-com-zoho-subscriptions-organizationid': "10234695",
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
'content-type': "application/json"
}
conn.request("POST", "/billing/v1/subscriptions/90300000079200/buyonetimeaddon", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "POST",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/billing/v1/subscriptions/90300000079200/buyonetimeaddon",
"headers": {
"X-com-zoho-subscriptions-organizationid": "10234695",
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
"content-type": "application/json"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.write(JSON.stringify({field1: 'value1', field2: 'value2'}));
req.end();
curl --request POST \
--url https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/buyonetimeaddon \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'X-com-zoho-subscriptions-organizationid: 10234695' \
--header 'content-type: application/json' \
--data '{"field1":"value1","field2":"value2"}'
{
"addons": [
{
"addon_code": "Email-basic",
"quantity": 1,
"tags": [
{
"tag_id": 0,
"tag_option_id": 0
}
],
"item_custom_fields": [
{
"label": "string",
"value": "string"
}
],
"price": 10,
"tax_id": null,
"tax_exemption_id": null,
"tax_exemption_code": null,
"product_type": "goods"
}
],
"exchange_rate": 2,
"coupon_code": null,
"add_to_unbilled_charges": true
}
{
"code": 0,
"message": "One-time addon has been purchased successfully.",
"invoice": {
"invoice_id": "9030000079426",
"number": "INV-384",
"status": "live",
"invoice_date": "2016-06-15",
"due_date": "2016-06-15",
"payment_expected_date": "10-05-2016",
"ach_payment_initiated": true,
"invoice_items": [
{
"item_id": "90300000079434",
"name": "GatorHost-Basic",
"description": "One time addon purchased",
"code": "basic-monthly",
"price": 50,
"quantity": 1,
"tags": [
{
"tag_id": 0,
"tag_option_id": 0
}
],
"item_custom_fields": [
{
"label": "string",
"value": "string"
}
],
"discount_amount": 44,
"item_total": 50
}
],
"transaction_type": "invoice",
"customer_id": "903000000000099",
"customer_name": "Benjamin",
"email": "benjamin.george@bowmanfurniture.com",
"total": 50,
"payment_made": 370,
"balance": 0,
"coupons": [
{
"coupon_code": "Flat10",
"coupon_name": "Flat 10",
"discount_amount": 44
}
],
"credits_applied": 0,
"credits": [
{
"creditnote_id": "9030000079876",
"creditnotes_number": "CN-26",
"credited_date": "2016-06-15",
"credited_amount": 15
}
],
"taxes": [
{
"tax_id": "903000002345",
"tax_name": "GST",
"tax_amount": "2.50"
}
],
"custom_fields": [
{
"index": 1,
"label": "string",
"value": "string",
"data_type": "text"
}
],
"salesperson_id": "903000000058001",
"salesperson_name": "Franklin",
"write_off_amount": 0,
"payments": [
{
"payment_id": "90300000079467",
"payment_mode": "autotransaction",
"invoice_payment_id": "9030000079469",
"gateway_transaction_id": "9030000056453",
"description": "",
"date": "2016-06-15",
"reference_number": "INV-384",
"amount": 50,
"exchange_rate": 2
}
],
"currency_code": "USD",
"currency_symbol": "$",
"created_time": "2016-06-11T17:57:13-0700",
"updated_time": "2016-06-04T16:44:15-0700",
"billing_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"country": "U.S.A",
"zip": 92612,
"fax": 4527389
},
"shipping_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"zip": 92612,
"country": "U.S.A",
"fax": 4527389
},
"comments": [
{
"comment_id": "90300000003133",
"description": "Invoice has been marked as void",
"commented_by_id": "90300000002099",
"commented_by": null,
"comment_type": "system",
"date": null,
"time": "2016-06-11T17:57:13-0700",
"operation_type": "add",
"transaction_id": "9030000079467",
"transaction_type": "invoice"
}
]
}
}
Associate a coupon
Apply a coupon to a subscription which has been already created.
OAuth Scope : ZohoSubscriptions.subscriptions.CREATE
headers_data = Map();
headers_data.put("X-com-zoho-subscriptions-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/coupons/Flat10"
type: POST
headers: headers_data
connection: <connection_name>
]
info response;
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/coupons/Flat10")
.post(null)
.addHeader("X-com-zoho-subscriptions-organizationid", "10234695")
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'POST',
headers: {
'X-com-zoho-subscriptions-organizationid': '10234695',
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
}
};
fetch('https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/coupons/Flat10', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
headers = {
'X-com-zoho-subscriptions-organizationid': "10234695",
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
conn.request("POST", "/billing/v1/subscriptions/90300000079200/coupons/Flat10", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "POST",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/billing/v1/subscriptions/90300000079200/coupons/Flat10",
"headers": {
"X-com-zoho-subscriptions-organizationid": "10234695",
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
curl --request POST \
--url https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/coupons/Flat10 \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'X-com-zoho-subscriptions-organizationid: 10234695'
{
"code": 0,
"message": "The coupon has been added to the subscription."
}
Remove a coupon
To remove coupon associated with a subscription.
OAuth Scope : ZohoSubscriptions.subscriptions.DELETE
headers_data = Map();
headers_data.put("X-com-zoho-subscriptions-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/coupons"
type: DELETE
headers: headers_data
connection: <connection_name>
]
info response;
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/coupons")
.delete(null)
.addHeader("X-com-zoho-subscriptions-organizationid", "10234695")
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'DELETE',
headers: {
'X-com-zoho-subscriptions-organizationid': '10234695',
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
}
};
fetch('https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/coupons', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
headers = {
'X-com-zoho-subscriptions-organizationid': "10234695",
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
conn.request("DELETE", "/billing/v1/subscriptions/90300000079200/coupons", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "DELETE",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/billing/v1/subscriptions/90300000079200/coupons",
"headers": {
"X-com-zoho-subscriptions-organizationid": "10234695",
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
curl --request DELETE \
--url https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/coupons \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'X-com-zoho-subscriptions-organizationid: 10234695'
{
"code": 0,
"message": "The coupon has been removed from the subscription."
}
Update Card
Update the card details of a customer. Once updated, the past card will no longer be charged.
OAuth Scope : ZohoSubscriptions.subscriptions.CREATE
Arguments
auto_collect
node is true and any other payment method is not specified
parameters_data='{"field1":"value1","field2":"value2"}';
headers_data = Map();
headers_data.put("X-com-zoho-subscriptions-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/card"
type: POST
headers: headers_data
content-type: application/json
parameters: parameters_data
connection: <connection_name>
]
info response;
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}");
Request request = new Request.Builder()
.url("https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/card")
.post(body)
.addHeader("X-com-zoho-subscriptions-organizationid", "10234695")
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'POST',
headers: {
'X-com-zoho-subscriptions-organizationid': '10234695',
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f',
'content-type': 'application/json'
},
body: '{"field1":"value1","field2":"value2"}'
};
fetch('https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/card', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}"
headers = {
'X-com-zoho-subscriptions-organizationid': "10234695",
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
'content-type': "application/json"
}
conn.request("POST", "/billing/v1/subscriptions/90300000079200/card", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "POST",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/billing/v1/subscriptions/90300000079200/card",
"headers": {
"X-com-zoho-subscriptions-organizationid": "10234695",
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
"content-type": "application/json"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.write(JSON.stringify({field1: 'value1', field2: 'value2'}));
req.end();
curl --request POST \
--url https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/card \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'X-com-zoho-subscriptions-organizationid: 10234695' \
--header 'content-type: application/json' \
--data '{"field1":"value1","field2":"value2"}'
{
"card_id": "9030000079226",
"auto_collect": true
}
{
"code": 0,
"message": "Card has been updated successfully.",
"subscription": {
"subscription_id": "90300000079200",
"name": "GatorHost-Basic",
"status": "live",
"amount": 50,
"created_at": "2016-06-11",
"activated_at": "2016-06-15",
"current_term_starts_at": "2016-06-05",
"current_term_ends_at": "2016-06-05",
"last_billing_at": "2016-06-05",
"next_billing_at": "2016-06-30",
"expires_at": "2016-06-05",
"interval": 1,
"interval_unit": "months",
"auto_collect": true,
"created_time": "2016-06-11T17:57:13-0700",
"updated_time": "2016-06-04T16:44:15-0700",
"reference_id": "bowmanfurniture",
"salesperson_id": "903000000058001",
"salesperson_name": "Franklin",
"child_invoice_id": "90300000079210",
"currency_code": "USD",
"currency_symbol": "$",
"end_of_term": false,
"product_id": "90300000079065",
"product_name": "Bowman Furniture",
"plan": {
"plan_code": "basic-monthly",
"name": "GatorHost-Basic",
"quantity": 1,
"price": 50,
"discount": 20,
"total": 50,
"setup_fee": 20,
"plan_description": "Monthly Basic plan",
"tax_id": "903000002345",
"trial_days": 0
},
"addons": [
{
"addon_code": "Email-basic",
"name": "Monthly Addon",
"addon_description": "Monthly addon.",
"quantity": 1,
"price": 10,
"discount": null,
"total": null,
"tax_id": null
}
],
"coupon": {
"coupon_code": "Flat10",
"discount_amount": 44
},
"card": {
"card_id": "903000079226",
"last_four_digits": 2145,
"payment_gateway": "payflow_pro",
"expiry_month": 9,
"expiry_year": 2030
},
"payment_terms": 0,
"payment_terms_label": "Due On Receipt",
"can_add_bank_account": true,
"customer": {
"customer_id": "9030000000099",
"display_name": "Bowman Furniture",
"first_name": "Benjamin",
"last_name": "George",
"email": "benjamin.george@bowmanfurniture.com",
"company_name": "Bowman Furniture",
"billing_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"country": "U.S.A",
"zip": 92612,
"fax": 4527389
},
"shipping_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"zip": 92612,
"country": "U.S.A",
"fax": 4527389
},
"payment_terms": 0,
"payment_terms_label": "Due On Receipt"
},
"custom_fields": [
{
"index": 1,
"label": "string",
"value": "string",
"data_type": "text"
}
],
"contactpersons": [
{
"contactperson_id": "903000000000099"
}
],
"notes": [
{
"note_id": "903000076543",
"description": "",
"commented_by": "Benjamin",
"commented_time": "2016-06-11T17:57:13-0700"
}
],
"payment_gateways": [
{
"payment_gateway": null
}
]
}
}
Remove Card
Delete a card associated with the subscription. The subscription will become an offline subscription.
OAuth Scope : ZohoSubscriptions.subscriptions.DELETE
headers_data = Map();
headers_data.put("X-com-zoho-subscriptions-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/card"
type: DELETE
headers: headers_data
connection: <connection_name>
]
info response;
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/card")
.delete(null)
.addHeader("X-com-zoho-subscriptions-organizationid", "10234695")
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'DELETE',
headers: {
'X-com-zoho-subscriptions-organizationid': '10234695',
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
}
};
fetch('https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/card', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
headers = {
'X-com-zoho-subscriptions-organizationid': "10234695",
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
conn.request("DELETE", "/billing/v1/subscriptions/90300000079200/card", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "DELETE",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/billing/v1/subscriptions/90300000079200/card",
"headers": {
"X-com-zoho-subscriptions-organizationid": "10234695",
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
curl --request DELETE \
--url https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/card \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'X-com-zoho-subscriptions-organizationid: 10234695'
{
"code": 0,
"message": "Card has been successfully removed from the subscription."
}
Add Charge
Charge a one-time amount for the subscription.
OAuth Scope : ZohoSubscriptions.subscriptions.CREATE
Arguments
parameters_data='{"field1":"value1","field2":"value2"}';
headers_data = Map();
headers_data.put("X-com-zoho-subscriptions-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/charge"
type: POST
headers: headers_data
content-type: application/json
parameters: parameters_data
connection: <connection_name>
]
info response;
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}");
Request request = new Request.Builder()
.url("https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/charge")
.post(body)
.addHeader("X-com-zoho-subscriptions-organizationid", "10234695")
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'POST',
headers: {
'X-com-zoho-subscriptions-organizationid': '10234695',
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f',
'content-type': 'application/json'
},
body: '{"field1":"value1","field2":"value2"}'
};
fetch('https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/charge', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}"
headers = {
'X-com-zoho-subscriptions-organizationid': "10234695",
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
'content-type': "application/json"
}
conn.request("POST", "/billing/v1/subscriptions/90300000079200/charge", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "POST",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/billing/v1/subscriptions/90300000079200/charge",
"headers": {
"X-com-zoho-subscriptions-organizationid": "10234695",
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
"content-type": "application/json"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.write(JSON.stringify({field1: 'value1', field2: 'value2'}));
req.end();
curl --request POST \
--url https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/charge \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'X-com-zoho-subscriptions-organizationid: 10234695' \
--header 'content-type: application/json' \
--data '{"field1":"value1","field2":"value2"}'
{
"amount": 50,
"description": "Charges for Additional usage",
"tags": [
{
"tag_id": 0,
"tag_option_id": 0
}
],
"item_custom_fields": [
{
"label": "string",
"value": "string"
}
],
"account_id": "90300000791111",
"add_to_unbilled_charges": true
}
{
"code": 0,
"message": "One time charge has been added successfully.",
"invoice": {
"invoice_id": "9030000079426",
"number": "INV-384",
"status": "live",
"invoice_items": [
{
"item_id": "90300000079434",
"name": "One-time charge",
"description": "Charges for Additional usage",
"code": "basic-monthly",
"price": 50,
"quantity": 1,
"tags": [
{
"tag_id": 0,
"tag_option_id": 0
}
],
"item_custom_fields": [
{
"label": "string",
"value": "string"
}
],
"item_total": 50,
"account_id": "90300000791111",
"account_name": "General Income"
}
],
"invoice_date": "2016-06-15",
"due_date": "2016-06-15",
"payment_expected_date": "10-05-2016",
"ach_payment_initiated": true,
"transaction_type": "invoice",
"customer_id": "903000000000099",
"customer_name": "Benjamin",
"email": "benjamin.george@bowmanfurniture.com",
"total": 50,
"payment_made": 50,
"balance": 0,
"credits_applied": 0,
"write_off_amount": 0,
"payments": [
{
"payment_id": "90300000079467",
"payment_mode": "autotransaction",
"invoice_payment_id": "9030000079469",
"gateway_transaction_id": "9030000056453",
"description": "",
"date": "2016-06-15",
"reference_number": "INV-384",
"amount": 50,
"exchange_rate": 2
}
],
"currency_code": "USD",
"currency_symbol": "$",
"created_time": "2016-06-11T17:57:13-0700",
"updated_time": "2016-06-04T16:44:15-0700",
"billing_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"country": "U.S.A",
"zip": 92612,
"fax": 4527389
},
"comments": [
{
"comment_id": "90300000003133",
"description": "Invoice created from subscription - GatorHost-Basic.",
"commented_by_id": "90300000002099",
"commented_by": null,
"comment_type": "system",
"date": null,
"time": "2016-06-11T17:57:13-0700",
"operation_type": "add",
"transaction_id": "9030000079467",
"transaction_type": "invoice"
}
]
}
}
Add contact person
Associate a contact person with the subscription. Only an existing contact person can be associated.
OAuth Scope : ZohoSubscriptions.subscriptions.CREATE
Arguments
contactperson_id
.parameters_data='{"field1":"value1","field2":"value2"}';
headers_data = Map();
headers_data.put("X-com-zoho-subscriptions-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/contactpersons"
type: POST
headers: headers_data
content-type: application/json
parameters: parameters_data
connection: <connection_name>
]
info response;
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}");
Request request = new Request.Builder()
.url("https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/contactpersons")
.post(body)
.addHeader("X-com-zoho-subscriptions-organizationid", "10234695")
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'POST',
headers: {
'X-com-zoho-subscriptions-organizationid': '10234695',
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f',
'content-type': 'application/json'
},
body: '{"field1":"value1","field2":"value2"}'
};
fetch('https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/contactpersons', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}"
headers = {
'X-com-zoho-subscriptions-organizationid': "10234695",
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
'content-type': "application/json"
}
conn.request("POST", "/billing/v1/subscriptions/90300000079200/contactpersons", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "POST",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/billing/v1/subscriptions/90300000079200/contactpersons",
"headers": {
"X-com-zoho-subscriptions-organizationid": "10234695",
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
"content-type": "application/json"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.write(JSON.stringify({field1: 'value1', field2: 'value2'}));
req.end();
curl --request POST \
--url https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/contactpersons \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'X-com-zoho-subscriptions-organizationid: 10234695' \
--header 'content-type: application/json' \
--data '{"field1":"value1","field2":"value2"}'
{
"contactpersons": [
{
"contactperson_id": "903000000000099"
}
]
}
{
"code": 0,
"message": "The contact person's information has been added.",
"subscription": {
"subscription_id": "90300000079200",
"name": "GatorHost-Basic",
"status": "live",
"amount": 50,
"created_at": "2016-06-11",
"activated_at": "2016-06-15",
"current_term_starts_at": "2016-06-05",
"current_term_ends_at": "2016-06-05",
"last_billing_at": "2016-06-05",
"next_billing_at": "2016-06-30",
"expires_at": "2016-06-05",
"interval": 1,
"interval_unit": "months",
"auto_collect": true,
"created_time": "2016-06-11T17:57:13-0700",
"updated_time": "2016-06-04T16:44:15-0700",
"reference_id": "bowmanfurniture",
"salesperson_id": "903000000058001",
"salesperson_name": "Franklin",
"child_invoice_id": "90300000079210",
"currency_code": "USD",
"currency_symbol": "$",
"end_of_term": false,
"product_id": "90300000079065",
"product_name": "Bowman Furniture",
"plan": {
"plan_code": "basic-monthly",
"name": "GatorHost-Basic",
"quantity": 1,
"price": 50,
"discount": 20,
"total": 50,
"setup_fee": 20,
"plan_description": "Monthly Basic plan",
"tax_id": "903000002345",
"trial_days": 0
},
"addons": [
{
"addon_code": "Email-basic",
"name": "Monthly Addon",
"addon_description": "Monthly addon.",
"quantity": 1,
"price": 50,
"discount": null,
"total": null,
"tax_id": null
}
],
"coupon": {
"coupon_code": "Flat10",
"discount_amount": 44
},
"card": {
"card_id": "9030000079226",
"last_four_digits": 2145,
"payment_gateway": "payflow_pro",
"expiry_month": 9,
"expiry_year": 2030
},
"payment_terms": 0,
"payment_terms_label": "Due On Receipt",
"can_add_bank_account": true,
"customer": {
"customer_id": "9030000000099",
"display_name": "Bowman Furniture",
"first_name": "Benjamin",
"last_name": "George",
"email": "benjamin.george@bowmanfurniture.com",
"company_name": "Bowman Furniture",
"billing_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"country": "U.S.A",
"zip": 92612,
"fax": 4527389
},
"shipping_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"zip": 92612,
"country": "U.S.A",
"fax": 4527389
},
"payment_terms": 0,
"payment_terms_label": "Due On Receipt"
},
"custom_fields": [
{
"index": 1,
"label": "string",
"value": "string",
"data_type": "text"
}
],
"taxes": [
{
"tax_id": "903000002345",
"tax_name": "GST",
"tax_amount": "2.50"
}
],
"contactpersons": [
{
"contactperson_id": "903000000000099"
}
],
"notes": [
{
"note_id": "903000076543",
"description": "",
"commented_by": "Benjamin",
"commented_time": "2016-06-11T17:57:13-0700"
}
],
"payment_gateways": [
{
"payment_gateway": null
}
]
}
}
Postpone renewal
A subscription renewal date (billing date) can be postponed thereby extending the subscription term. Also, subscription renewal can only be postponed and not preponed.
OAuth Scope : ZohoSubscriptions.subscriptions.CREATE
Arguments
parameters_data='{"field1":"value1","field2":"value2"}';
headers_data = Map();
headers_data.put("X-com-zoho-subscriptions-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/postpone"
type: POST
headers: headers_data
content-type: application/json
parameters: parameters_data
connection: <connection_name>
]
info response;
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}");
Request request = new Request.Builder()
.url("https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/postpone")
.post(body)
.addHeader("X-com-zoho-subscriptions-organizationid", "10234695")
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'POST',
headers: {
'X-com-zoho-subscriptions-organizationid': '10234695',
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f',
'content-type': 'application/json'
},
body: '{"field1":"value1","field2":"value2"}'
};
fetch('https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/postpone', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}"
headers = {
'X-com-zoho-subscriptions-organizationid': "10234695",
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
'content-type': "application/json"
}
conn.request("POST", "/billing/v1/subscriptions/90300000079200/postpone", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "POST",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/billing/v1/subscriptions/90300000079200/postpone",
"headers": {
"X-com-zoho-subscriptions-organizationid": "10234695",
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
"content-type": "application/json"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.write(JSON.stringify({field1: 'value1', field2: 'value2'}));
req.end();
curl --request POST \
--url https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/postpone \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'X-com-zoho-subscriptions-organizationid: 10234695' \
--header 'content-type: application/json' \
--data '{"field1":"value1","field2":"value2"}'
{
"renewal_at": "2016-06-24"
}
{
"code": 0,
"message": "Billing date of the subscription has been changed.",
"subscription": {
"subscription_id": "90300000079200",
"name": "GatorHost-Basic",
"status": "live",
"amount": 50,
"created_at": "2016-06-11",
"activated_at": "2016-06-15",
"current_term_starts_at": "2016-06-05",
"current_term_ends_at": "2016-06-05",
"last_billing_at": "2016-06-05",
"next_billing_at": "2016-06-30",
"expires_at": "2016-06-05",
"interval": 1,
"interval_unit": "months",
"auto_collect": true,
"created_time": "2016-06-11T17:57:13-0700",
"updated_time": "2016-06-04T16:44:15-0700",
"reference_id": "bowmanfurniture",
"salesperson_id": "903000000058001",
"salesperson_name": "Franklin",
"child_invoice_id": "90300000079210",
"currency_code": "USD",
"currency_symbol": "$",
"end_of_term": false,
"product_id": "90300000079065",
"product_name": "Bowman Furniture",
"plan": {
"plan_code": "basic-monthly",
"name": "GatorHost-Basic",
"quantity": 1,
"price": 50,
"discount": 20,
"total": 50,
"setup_fee": 20,
"plan_description": "Monthly Basic plan",
"tax_id": "903000002345",
"trial_days": 0
},
"addons": [
{
"addon_code": "Email-basic",
"name": "Monthly Addon",
"addon_description": "Monthly addon.",
"quantity": 1,
"price": 10,
"discount": null,
"total": null,
"tax_id": null
}
],
"coupon": {
"coupon_code": "Flat10",
"discount_amount": 44
},
"card": {
"card_id": "90300000079226",
"last_four_digits": 2145,
"payment_gateway": "payflow_pro",
"expiry_month": 9,
"expiry_year": 2030
},
"payment_terms": 0,
"payment_terms_label": "Due On Receipt",
"can_add_bank_account": true,
"customer": {
"customer_id": "903000000099",
"display_name": "Bowman Furniture",
"first_name": "Benjamin",
"last_name": "George",
"email": "benjamin.george@bowmanfurniture.com",
"company_name": "Bowman Furniture",
"billing_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"country": "U.S.A",
"zip": 92612,
"fax": 4527389
},
"shipping_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"zip": 92612,
"country": "U.S.A",
"fax": 4527389
},
"payment_terms": 0,
"payment_terms_label": "Due On Receipt"
},
"custom_fields": [
{
"index": 1,
"label": "string",
"value": "string",
"data_type": "text"
}
],
"taxes": [
{
"tax_id": "903000002345",
"tax_name": "GST",
"tax_amount": "2.50"
}
],
"contactpersons": [
{
"contactperson_id": "903000000000099"
}
],
"notes": [
{
"note_id": "903000076543",
"description": "",
"commented_by": "Benjamin",
"commented_time": "2016-06-11T17:57:13-0700"
}
],
"payment_gateways": [
{
"payment_gateway": null
}
]
}
}
Add/Edit description for a item in line items list
Add/Edit description to a particular plan or addon in the line items list.
OAuth Scope : ZohoSubscriptions.subscriptions.CREATE
Arguments
parameters_data='{"field1":"value1","field2":"value2"}';
headers_data = Map();
headers_data.put("X-com-zoho-subscriptions-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/lineitems/%7Bplan_or_addon_code%7D"
type: POST
headers: headers_data
content-type: application/json
parameters: parameters_data
connection: <connection_name>
]
info response;
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}");
Request request = new Request.Builder()
.url("https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/lineitems/%7Bplan_or_addon_code%7D")
.post(body)
.addHeader("X-com-zoho-subscriptions-organizationid", "10234695")
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'POST',
headers: {
'X-com-zoho-subscriptions-organizationid': '10234695',
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f',
'content-type': 'application/json'
},
body: '{"field1":"value1","field2":"value2"}'
};
fetch('https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/lineitems/%7Bplan_or_addon_code%7D', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}"
headers = {
'X-com-zoho-subscriptions-organizationid': "10234695",
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
'content-type': "application/json"
}
conn.request("POST", "/billing/v1/subscriptions/90300000079200/lineitems/%7Bplan_or_addon_code%7D", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "POST",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/billing/v1/subscriptions/90300000079200/lineitems/%7Bplan_or_addon_code%7D",
"headers": {
"X-com-zoho-subscriptions-organizationid": "10234695",
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
"content-type": "application/json"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.write(JSON.stringify({field1: 'value1', field2: 'value2'}));
req.end();
curl --request POST \
--url https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/lineitems/%7Bplan_or_addon_code%7D \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'X-com-zoho-subscriptions-organizationid: 10234695' \
--header 'content-type: application/json' \
--data '{"field1":"value1","field2":"value2"}'
{
"description": ""
}
{
"code": 0,
"message": "Item description has been updated successfully."
}
Change to Online/Offline mode
Change the status of a particular subscription to Online/Offline mode. If auto_collect
is false, the subscription is in Offline mode. If auto_collect
is true, the subscription is in Online mode.
OAuth Scope : ZohoSubscriptions.subscriptions.CREATE
Arguments
parameters_data='{"field1":"value1","field2":"value2"}';
headers_data = Map();
headers_data.put("X-com-zoho-subscriptions-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/autocollect"
type: POST
headers: headers_data
content-type: application/json
parameters: parameters_data
connection: <connection_name>
]
info response;
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}");
Request request = new Request.Builder()
.url("https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/autocollect")
.post(body)
.addHeader("X-com-zoho-subscriptions-organizationid", "10234695")
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'POST',
headers: {
'X-com-zoho-subscriptions-organizationid': '10234695',
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f',
'content-type': 'application/json'
},
body: '{"field1":"value1","field2":"value2"}'
};
fetch('https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/autocollect', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}"
headers = {
'X-com-zoho-subscriptions-organizationid': "10234695",
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
'content-type': "application/json"
}
conn.request("POST", "/billing/v1/subscriptions/90300000079200/autocollect", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "POST",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/billing/v1/subscriptions/90300000079200/autocollect",
"headers": {
"X-com-zoho-subscriptions-organizationid": "10234695",
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
"content-type": "application/json"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.write(JSON.stringify({field1: 'value1', field2: 'value2'}));
req.end();
curl --request POST \
--url https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/autocollect \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'X-com-zoho-subscriptions-organizationid: 10234695' \
--header 'content-type: application/json' \
--data '{"field1":"value1","field2":"value2"}'
{
"auto_collect": true
}
{
"code": 0,
"message": "Auto charge Status has been changed successfully.",
"subscription": {
"subscription_id": "90300000079200",
"name": "GatorHost-Basic",
"status": "live",
"amount": 50,
"created_at": "2016-06-11",
"activated_at": "2016-06-15",
"current_term_starts_at": "2016-06-05",
"current_term_ends_at": "2016-06-05",
"last_billing_at": "2016-06-05",
"next_billing_at": "2016-06-30",
"expires_at": "2016-06-05",
"interval": 1,
"interval_unit": "months",
"auto_collect": true,
"created_time": "2016-06-11T17:57:13-0700",
"updated_time": "2016-06-04T16:44:15-0700",
"reference_id": "bowmanfurniture",
"salesperson_id": "903000000058001",
"salesperson_name": "Franklin",
"child_invoice_id": "90300000079210",
"currency_code": "USD",
"currency_symbol": "$",
"end_of_term": false,
"product_id": "90300000079065",
"product_name": "Bowman Furniture",
"plan": {
"plan_code": "basic-monthly",
"name": "GatorHost-Basic",
"quantity": 1,
"price": 50,
"discount": 20,
"total": 50,
"setup_fee": 20,
"plan_description": "Monthly Basic plan",
"tax_id": "903000002345",
"trial_days": 0
},
"addons": [
{
"addon_code": "Email-basic",
"name": "Monthly Addon",
"addon_description": "Monthly addon.",
"quantity": 1,
"price": 10,
"discount": null,
"total": null,
"tax_id": null
}
],
"coupon": {
"coupon_code": "Flat10",
"discount_amount": 44
},
"card": {
"card_id": "90300000079226",
"last_four_digits": 2145,
"payment_gateway": "payflow_pro",
"expiry_month": 9,
"expiry_year": 2030
},
"payment_terms": 0,
"payment_terms_label": "Due On Receipt",
"can_add_bank_account": true,
"customer": {
"customer_id": "903000000000099",
"display_name": "Bowman Furniture",
"first_name": "Benjamin",
"last_name": "George",
"email": "benjamin.george@bowmanfurniture.com",
"company_name": "Bowman Furniture",
"billing_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"country": "U.S.A",
"zip": 92612,
"fax": 4527389
},
"shipping_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"zip": 92612,
"country": "U.S.A",
"fax": 4527389
},
"payment_terms": 0,
"payment_terms_label": "Due On Receipt"
},
"custom_fields": [
{
"index": 1,
"label": "string",
"value": "string",
"data_type": "text"
}
],
"taxes": [
{
"tax_id": "903000002345",
"tax_name": "GST",
"tax_amount": "2.50"
}
],
"contactpersons": [
{
"contactperson_id": "903000000000099"
}
],
"notes": [
{
"note_id": "903000076543",
"description": "string",
"commented_by": "Benjamin",
"commented_time": "2016-06-11T17:57:13-0700"
}
],
"payment_gateways": [
{
"payment_gateway": null
}
]
}
}
Update Reference
Update reference id to easily identify and keep track of your subscription.
OAuth Scope : ZohoSubscriptions.subscriptions.CREATE
Arguments
parameters_data='{"field1":"value1","field2":"value2"}';
headers_data = Map();
headers_data.put("X-com-zoho-subscriptions-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/reference"
type: POST
headers: headers_data
content-type: application/json
parameters: parameters_data
connection: <connection_name>
]
info response;
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}");
Request request = new Request.Builder()
.url("https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/reference")
.post(body)
.addHeader("X-com-zoho-subscriptions-organizationid", "10234695")
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'POST',
headers: {
'X-com-zoho-subscriptions-organizationid': '10234695',
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f',
'content-type': 'application/json'
},
body: '{"field1":"value1","field2":"value2"}'
};
fetch('https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/reference', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}"
headers = {
'X-com-zoho-subscriptions-organizationid': "10234695",
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
'content-type': "application/json"
}
conn.request("POST", "/billing/v1/subscriptions/90300000079200/reference", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "POST",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/billing/v1/subscriptions/90300000079200/reference",
"headers": {
"X-com-zoho-subscriptions-organizationid": "10234695",
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
"content-type": "application/json"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.write(JSON.stringify({field1: 'value1', field2: 'value2'}));
req.end();
curl --request POST \
--url https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/reference \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'X-com-zoho-subscriptions-organizationid: 10234695' \
--header 'content-type: application/json' \
--data '{"field1":"value1","field2":"value2"}'
{
"reference_id": "bowmanfurniture"
}
{
"code": 0,
"message": "Subscription has been updated successfully.",
"subscription": {
"subscription_id": "90300000079200",
"name": "GatorHost-Basic",
"status": "live",
"amount": 50,
"created_at": "2016-06-11",
"activated_at": "2016-06-15",
"current_term_starts_at": "2016-06-05",
"current_term_ends_at": "2016-06-05",
"last_billing_at": "2016-06-05",
"next_billing_at": "2016-06-30",
"expires_at": "2016-06-05",
"interval": 1,
"interval_unit": "months",
"auto_collect": true,
"created_time": "2016-06-11T17:57:13-0700",
"updated_time": "2016-06-04T16:44:15-0700",
"reference_id": "bowmanfurniture",
"salesperson_id": "903000000058001",
"salesperson_name": "Franklin",
"child_invoice_id": "90300000079210",
"currency_code": "USD",
"currency_symbol": "$",
"end_of_term": false,
"product_id": "90300000079065",
"product_name": "Bowman Furniture",
"plan": {
"plan_code": "basic-monthly",
"name": "GatorHost-Basic",
"quantity": 1,
"price": 50,
"discount": 20,
"total": 50,
"setup_fee": 20,
"plan_description": "Monthly Basic plan",
"tax_id": "903000002345",
"trial_days": 0
},
"addons": [
{
"addon_code": "Email-basic",
"name": "Monthly Addon",
"addon_description": "Monthly addon.",
"quantity": 1,
"price": 10,
"discount": null,
"total": null,
"tax_id": null
}
],
"coupon": {
"coupon_code": "Flat10",
"discount_amount": 44
},
"card": {
"card_id": "90300000079226",
"last_four_digits": 2145,
"payment_gateway": "payflow_pro",
"expiry_month": 9,
"expiry_year": 2030
},
"payment_terms": 0,
"payment_terms_label": "Due On Receipt",
"can_add_bank_account": true,
"customer": {
"customer_id": "903000000000099",
"display_name": "Bowman Furniture",
"first_name": "Benjamin",
"last_name": "George",
"email": "benjamin.george@bowmanfurniture.com",
"company_name": "Bowman Furniture",
"billing_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"country": "U.S.A",
"zip": 92612,
"fax": 4527389
},
"shipping_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"zip": 92612,
"country": "U.S.A",
"fax": 4527389
},
"payment_terms": 0,
"payment_terms_label": "Due On Receipt"
},
"custom_fields": [
{
"index": 1,
"label": "string",
"value": "string",
"data_type": "text"
}
],
"taxes": [
{
"tax_id": "903000002345",
"tax_name": "GST",
"tax_amount": "2.50"
}
],
"contactpersons": [
{
"contactperson_id": "903000000000099"
}
],
"notes": [
{
"note_id": "903000076543",
"description": "string",
"commented_by": "Benjamin",
"commented_time": "2016-06-11T17:57:13-0700"
}
],
"payment_gateways": [
{
"payment_gateway": null
}
]
}
}
Update Sales Person
Update a sales person associated with a particular subscription.
OAuth Scope : ZohoSubscriptions.subscriptions.CREATE
Arguments
parameters_data='{"field1":"value1","field2":"value2"}';
headers_data = Map();
headers_data.put("X-com-zoho-subscriptions-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/salesperson"
type: POST
headers: headers_data
content-type: application/json
parameters: parameters_data
connection: <connection_name>
]
info response;
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}");
Request request = new Request.Builder()
.url("https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/salesperson")
.post(body)
.addHeader("X-com-zoho-subscriptions-organizationid", "10234695")
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'POST',
headers: {
'X-com-zoho-subscriptions-organizationid': '10234695',
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f',
'content-type': 'application/json'
},
body: '{"field1":"value1","field2":"value2"}'
};
fetch('https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/salesperson', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}"
headers = {
'X-com-zoho-subscriptions-organizationid': "10234695",
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
'content-type': "application/json"
}
conn.request("POST", "/billing/v1/subscriptions/90300000079200/salesperson", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "POST",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/billing/v1/subscriptions/90300000079200/salesperson",
"headers": {
"X-com-zoho-subscriptions-organizationid": "10234695",
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
"content-type": "application/json"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.write(JSON.stringify({field1: 'value1', field2: 'value2'}));
req.end();
curl --request POST \
--url https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/salesperson \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'X-com-zoho-subscriptions-organizationid: 10234695' \
--header 'content-type: application/json' \
--data '{"field1":"value1","field2":"value2"}'
{
"salesperson_id": "",
"salesperson_name": "Franklin"
}
{
"code": 0,
"message": "Sales Person has been updated successfully.",
"subscription": {
"subscription_id": "90300000079200",
"name": "GatorHost-Basic",
"status": "live",
"amount": 50,
"created_at": "2016-06-11",
"activated_at": "2016-06-15",
"current_term_starts_at": "2016-06-05",
"current_term_ends_at": "2016-06-05",
"last_billing_at": "2016-06-05",
"next_billing_at": "2016-06-30",
"expires_at": "2016-06-05",
"interval": 1,
"interval_unit": "months",
"auto_collect": true,
"created_time": "2016-06-11T17:57:13-0700",
"updated_time": "2016-06-04T16:44:15-0700",
"reference_id": "bowmanfurniture",
"salesperson_id": "903000000058001",
"salesperson_name": "Franklin",
"child_invoice_id": "90300000079210",
"currency_code": "USD",
"currency_symbol": "$",
"end_of_term": false,
"product_id": "90300000079065",
"product_name": "Bowman Furniture",
"plan": {
"plan_code": "basic-monthly",
"name": "GatorHost-Basic",
"quantity": 1,
"price": 50,
"discount": 20,
"total": 50,
"setup_fee": 20,
"plan_description": "Monthly Basic plan",
"tax_id": "903000002345",
"trial_days": 0
},
"addons": [
{
"addon_code": "Email-basic",
"name": "Monthly Addon",
"addon_description": "Monthly addon.",
"quantity": 1,
"price": 10,
"discount": null,
"total": null,
"tax_id": null
}
],
"coupon": {
"coupon_code": "Flat10",
"discount_amount": 44
},
"card": {
"card_id": "90300000079226",
"last_four_digits": 2145,
"payment_gateway": "payflow_pro",
"expiry_month": 9,
"expiry_year": 2030
},
"payment_terms": 0,
"payment_terms_label": "Due On Receipt",
"can_add_bank_account": true,
"customer": {
"customer_id": "903000000000099",
"display_name": "Bowman Furniture",
"first_name": "Benjamin",
"last_name": "George",
"email": "benjamin.george@bowmanfurniture.com",
"company_name": "Bowman Furniture",
"billing_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"country": "U.S.A",
"zip": 92612,
"fax": 4527389
},
"shipping_address": {
"attention": "Benjamin George",
"street": "Harrington Bay Street",
"city": "Salt Lake City",
"state": "CA",
"zip": 92612,
"country": "U.S.A",
"fax": 4527389
},
"payment_terms": 0,
"payment_terms_label": "Due On Receipt"
},
"custom_fields": [
{
"index": 1,
"label": "string",
"value": "string",
"data_type": "text"
}
],
"taxes": [
{
"tax_id": "903000002345",
"tax_name": "GST",
"tax_amount": "2.50"
}
],
"contactpersons": [
{
"contactperson_id": "903000000000099"
}
],
"notes": [
{
"note_id": "903000076543",
"description": "string",
"commented_by": "Benjamin",
"commented_time": "2016-06-11T17:57:13-0700"
}
],
"payment_gateways": [
{
"payment_gateway": null
}
]
}
}
Update Custom Fields
Update the custom fields associated with a particular subscription.
OAuth Scope : ZohoSubscriptions.subscriptions.CREATE
Arguments
parameters_data='{"field1":"value1","field2":"value2"}';
headers_data = Map();
headers_data.put("X-com-zoho-subscriptions-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/customfields"
type: POST
headers: headers_data
content-type: application/json
parameters: parameters_data
connection: <connection_name>
]
info response;
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}");
Request request = new Request.Builder()
.url("https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/customfields")
.post(body)
.addHeader("X-com-zoho-subscriptions-organizationid", "10234695")
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'POST',
headers: {
'X-com-zoho-subscriptions-organizationid': '10234695',
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f',
'content-type': 'application/json'
},
body: '{"field1":"value1","field2":"value2"}'
};
fetch('https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/customfields', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}"
headers = {
'X-com-zoho-subscriptions-organizationid': "10234695",
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
'content-type': "application/json"
}
conn.request("POST", "/billing/v1/subscriptions/90300000079200/customfields", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "POST",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/billing/v1/subscriptions/90300000079200/customfields",
"headers": {
"X-com-zoho-subscriptions-organizationid": "10234695",
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
"content-type": "application/json"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.write(JSON.stringify({field1: 'value1', field2: 'value2'}));
req.end();
curl --request POST \
--url https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/customfields \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'X-com-zoho-subscriptions-organizationid: 10234695' \
--header 'content-type: application/json' \
--data '{"field1":"value1","field2":"value2"}'
{
"custom_fields": [
{
"label": "string",
"value": "string"
}
]
}
{
"code": 0,
"message": "Custom Fields Updated Successfully.",
"data": {
"index": 1,
"value": "string",
"label": "string",
"data_type": "text",
"customfield_id": "9030000089798"
}
}
Add a note
Notes related to the subscription can be added by the user at anytime.
OAuth Scope : ZohoSubscriptions.subscriptions.CREATE
Arguments
parameters_data='{"field1":"value1","field2":"value2"}';
headers_data = Map();
headers_data.put("X-com-zoho-subscriptions-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/notes"
type: POST
headers: headers_data
content-type: application/json
parameters: parameters_data
connection: <connection_name>
]
info response;
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}");
Request request = new Request.Builder()
.url("https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/notes")
.post(body)
.addHeader("X-com-zoho-subscriptions-organizationid", "10234695")
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'POST',
headers: {
'X-com-zoho-subscriptions-organizationid': '10234695',
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f',
'content-type': 'application/json'
},
body: '{"field1":"value1","field2":"value2"}'
};
fetch('https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/notes', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}"
headers = {
'X-com-zoho-subscriptions-organizationid': "10234695",
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
'content-type': "application/json"
}
conn.request("POST", "/billing/v1/subscriptions/90300000079200/notes", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "POST",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/billing/v1/subscriptions/90300000079200/notes",
"headers": {
"X-com-zoho-subscriptions-organizationid": "10234695",
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
"content-type": "application/json"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.write(JSON.stringify({field1: 'value1', field2: 'value2'}));
req.end();
curl --request POST \
--url https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/notes \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'X-com-zoho-subscriptions-organizationid: 10234695' \
--header 'content-type: application/json' \
--data '{"field1":"value1","field2":"value2"}'
{
"description": null
}
{
"code": 0,
"message": "Notes added.",
"note": {
"notes": [
{
"note_id": "903000076543",
"description": "",
"commented_by": "Benjamin",
"commented_time": "2016-06-11T17:57:13-0700"
}
]
}
}
Delete a note
Delete a specific note.
OAuth Scope : ZohoSubscriptions.subscriptions.DELETE
headers_data = Map();
headers_data.put("X-com-zoho-subscriptions-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/notes/903000076543"
type: DELETE
headers: headers_data
connection: <connection_name>
]
info response;
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/notes/903000076543")
.delete(null)
.addHeader("X-com-zoho-subscriptions-organizationid", "10234695")
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.build();
Response response = client.newCall(request).execute();
const options = {
method: 'DELETE',
headers: {
'X-com-zoho-subscriptions-organizationid': '10234695',
Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
}
};
fetch('https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/notes/903000076543', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
headers = {
'X-com-zoho-subscriptions-organizationid': "10234695",
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
conn.request("DELETE", "/billing/v1/subscriptions/90300000079200/notes/903000076543", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
const http = require("https");
const options = {
"method": "DELETE",
"hostname": "www.zohoapis.com",
"port": null,
"path": "/billing/v1/subscriptions/90300000079200/notes/903000076543",
"headers": {
"X-com-zoho-subscriptions-organizationid": "10234695",
"Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
curl --request DELETE \
--url https://www.zohoapis.com/billing/v1/subscriptions/90300000079200/notes/903000076543 \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'X-com-zoho-subscriptions-organizationid: 10234695'
{
"code": 0,
"message": "The note has been deleted."
}