curl --request POST \
--url https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/subscriptions/{ID} \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
"{ \"object\": \"Subscription\", \"id\": \"sub_12345\", \"account\": { \"object\": \"Account\", \"id\": \"cust_2234\" } }"
'import requests
url = "https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/subscriptions/{ID}"
payload = "{ \"object\": \"Subscription\", \"id\": \"sub_12345\", \"account\": { \"object\": \"Account\", \"id\": \"cust_2234\" } }"
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify('{ "object": "Subscription", "id": "sub_12345", "account": { "object": "Account", "id": "cust_2234" } }')
};
fetch('https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/subscriptions/{ID}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/subscriptions/{ID}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode('{ "object": "Subscription", "id": "sub_12345", "account": { "object": "Account", "id": "cust_2234" } }'),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/subscriptions/{ID}"
payload := strings.NewReader("\"{ \\\"object\\\": \\\"Subscription\\\", \\\"id\\\": \\\"sub_12345\\\", \\\"account\\\": { \\\"object\\\": \\\"Account\\\", \\\"id\\\": \\\"cust_2234\\\" } }\"")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/subscriptions/{ID}")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("\"{ \\\"object\\\": \\\"Subscription\\\", \\\"id\\\": \\\"sub_12345\\\", \\\"account\\\": { \\\"object\\\": \\\"Account\\\", \\\"id\\\": \\\"cust_2234\\\" } }\"")
.asString();require 'uri'
require 'net/http'
url = URI("https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/subscriptions/{ID}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "\"{ \\\"object\\\": \\\"Subscription\\\", \\\"id\\\": \\\"sub_12345\\\", \\\"account\\\": { \\\"object\\\": \\\"Account\\\", \\\"id\\\": \\\"cust_2234\\\" } }\""
response = http.request(request)
puts response.read_body"{ \"object\": \"Subscription\", \"id\": \"sub_12345\", \"vid\": \"b25ba01e345b0ec3855c0323ce0f56e02ca839fb\", \"created\": \"2023-01-20T13:25:01+00:00\", \"account\": { \"object\": \"Account\", \"id\": \"cust_2234\", \"external_id\": \"Ext_2234\", \"vid\": \"0cdae787f01facd2d86a7d48c6529b5679c7cfbe\", \"created\": \"2023-01-20T13:35:11+00:00\", \"default_currency\": \"USD\", \"email\": \"rbrown@example.com\", \"email_type\": \"html\", \"language\": \"EN-U\", \"notify_before_billing\": true, \"company\": \"Peanuts\", \"name\": \"Robbert Brown\", \"shipping_address\": { \"object\": \"Address\", \"vid\": \"ae42d842242e3c8c5928f093be9d1f9ad82f7dd7\", \"name\": \"Robbert Brown\", \"line1\": \"123 Main Street\", \"city\": \"San Francisco\", \"district\": \"CA\", \"postal_code\": \"94105\", \"country\": \"US\", \"phone\": \"415-555-3212\" }, \"metadata\": { \"favorite dog\": \"Snoopy\", \"favorite activity\": \"flying kites\" } }, \"billing_plan\": { \"object\": \"BillingPlan\", \"id\": \"plan_1234\", \"vid\": \"a5e4eb7e26b81138e91d9042973d41e797072344\", \"created\": \"2023-01-20T13:22:42+00:00\", \"description\": \"Simple Monthly Plan with Trial\", \"status\": \"Active\", \"trial\": { \"object\": \"BillingPlanPeriod\", \"type\": \"Day\", \"quantity\": 7, \"cycles\": 1, \"prices\": { \"object\": \"List\", \"data\": [ { \"object\": \"BillingPlanPrice\", \"amount\": 0, \"currency\": \"USD\" } ], \"total_count\": 1 }, \"do_not_notify_first_bill\": false }, \"periods\": { \"object\": \"List\", \"data\": [ { \"object\": \"BillingPlanPeriod\", \"type\": \"Month\", \"quantity\": 1, \"cycles\": 1, \"prices\": { \"object\": \"List\", \"data\": [ { \"object\": \"BillingPlanPrice\", \"amount\": 49.99, \"currency\": \"USD\" } ], \"total_count\": 1 } } ], \"total_count\": 1 }, \"skip_initial_billing_notification\": false, \"metadata\": { \"plan info\": \"trial billing plan\" }, \"entitlements\": { \"object\": \"List\", \"data\": [ { \"object\": \"Entitlement\", \"id\": \"ent_p1235\", \"description\": \"Access to ent_p1235\" } ], \"total_count\": 1 }, \"times_to_run\": \"1\", \"used_on_subscriptions\": true }, \"payment_method\": { \"object\": \"PaymentMethod\", \"id\": \"paymentMethod_1234\", \"vid\": \"7d372db846a01aafbae14807b94a221313cf6d5a\", \"created\": \"2023-01-20T13:20:05+00:00\", \"type\": \"CreditCard\", \"credit_card\": { \"object\": \"CreditCard\", \"vid\": \"c840fd31aed4346f92a617886cbfc147034f6bd7\", \"account\": \"341111XXXXX1111\", \"bin\": \"341111\", \"type\": \"AX\", \"last_digits\": \"1111\", \"account_length\": 15, \"expiration_date\": \"202605\", \"last_au_request_date\": null, \"last_update_date\": null }, \"account_holder\": \"Charles Brown\", \"billing_address\": { \"object\": \"Address\", \"vid\": \"519bd0405f9ca442868a1c98b603055ad09bc54c\", \"name\": \"Charlie Brown\", \"line1\": \"123 Main Street\", \"city\": \"San Francisco\", \"district\": \"CA\", \"postal_code\": \"94105\", \"country\": \"US\", \"phone\": \"415-555-3212\" }, \"customer_specified_type\": \"Personal Amex\", \"primary\": true, \"active\": true, \"linked_subscription\": true }, \"currency\": \"USD\", \"description\": \"Subscription_2234\", \"status\": \"Active\", \"billing_state\": \"Free/Trial\", \"starts\": \"2023-01-20T05:52:02+00:00\", \"ends\": \"2023-01-26T00:00:00+00:00\", \"entitled_through\": \"2023-01-26T00:00:00+00:00\", \"items\": { \"object\": \"List\", \"data\": [ { \"object\": \"SubscriptionItem\", \"id\": \"sub_1234.1\", \"vid\": \"fe5b615735fc3d7c5544adddf99c38bae714e9bc\", \"index\": 0, \"product\": { \"object\": \"Product\", \"id\": \"prod_1234\", \"vid\": \"f549e4f493c23e16c3d7b74ebb51358ade375d11\", \"created\": \"2023-01-20T13:19:33+00:00\", \"status\": \"Active\", \"tax_classification\": \"TaxExempt\", \"prices\": { \"object\": \"List\", \"data\": [ { \"object\": \"ProductPrice\", \"amount\": 200, \"currency\": \"USD\" } ], \"total_count\": 1 } }, \"quantity\": 1, \"created\": \"2023-01-20T05:52:02+00:00\", \"starts\": \"2023-01-19T00:00:00+00:00\", \"discount_tickets\": { \"object\": \"List\", \"data\": [], \"total_count\": 0 } } ], \"total_count\": 1 }, \"billing_day\": 26, \"minimum_commitment\": 0, \"notify_on_transition\": false, \"most_recent_billing\": null, \"next_billing\": { \"object\": \"Transaction\", \"created\": \"2023-01-26T00:00:00+00:00\", \"amount\": 249.99, \"currency\": \"USD\", \"items\": { \"object\": \"List\", \"data\": [ { \"object\": \"TransactionItem\", \"sku\": \"prod_1234\", \"item_type\": \"Purchase\", \"price\": 249.99, \"quantity\": 1, \"tax_classification\": \"TaxExempt\", \"tax_type\": \"Exclusive Sales\", \"item_refunds\": { \"object\": \"List\", \"data\": [], \"total_count\": 0 }, \"subtotal\": 249.99, \"total\": 249.99 } ], \"total_count\": 1 }, \"subscription_sequence\": 2, \"payment_provider_response\": \"\" }, \"balance\": 0 }""{ \"object\": \"Error\", \"message\": \"JSON is invalid\" }"{
"code": "<string>",
"message": "<string>"
}"{ \"object\": \"Error\", \"message\": \"This endpoint does not exist. Check our API docs.\" }"Modify a Subscription (Update)
Update, amend, or modify a Subscription. See Vindicia Knowledgebase regarding various modify scenarios and additional approaches. REST approaches for the most common modifications are below (see “Accepts” section for this operation).
- Billing Plan Change
- Add or Remove a Subscription Item
- Replace an existing Subscription Item with a new one
curl --request POST \
--url https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/subscriptions/{ID} \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
"{ \"object\": \"Subscription\", \"id\": \"sub_12345\", \"account\": { \"object\": \"Account\", \"id\": \"cust_2234\" } }"
'import requests
url = "https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/subscriptions/{ID}"
payload = "{ \"object\": \"Subscription\", \"id\": \"sub_12345\", \"account\": { \"object\": \"Account\", \"id\": \"cust_2234\" } }"
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify('{ "object": "Subscription", "id": "sub_12345", "account": { "object": "Account", "id": "cust_2234" } }')
};
fetch('https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/subscriptions/{ID}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/subscriptions/{ID}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode('{ "object": "Subscription", "id": "sub_12345", "account": { "object": "Account", "id": "cust_2234" } }'),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/subscriptions/{ID}"
payload := strings.NewReader("\"{ \\\"object\\\": \\\"Subscription\\\", \\\"id\\\": \\\"sub_12345\\\", \\\"account\\\": { \\\"object\\\": \\\"Account\\\", \\\"id\\\": \\\"cust_2234\\\" } }\"")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/subscriptions/{ID}")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("\"{ \\\"object\\\": \\\"Subscription\\\", \\\"id\\\": \\\"sub_12345\\\", \\\"account\\\": { \\\"object\\\": \\\"Account\\\", \\\"id\\\": \\\"cust_2234\\\" } }\"")
.asString();require 'uri'
require 'net/http'
url = URI("https://virtserver.swaggerhub.com/Amdocs_Media/Subscribe_API_WIP/2024.09/subscriptions/{ID}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "\"{ \\\"object\\\": \\\"Subscription\\\", \\\"id\\\": \\\"sub_12345\\\", \\\"account\\\": { \\\"object\\\": \\\"Account\\\", \\\"id\\\": \\\"cust_2234\\\" } }\""
response = http.request(request)
puts response.read_body"{ \"object\": \"Subscription\", \"id\": \"sub_12345\", \"vid\": \"b25ba01e345b0ec3855c0323ce0f56e02ca839fb\", \"created\": \"2023-01-20T13:25:01+00:00\", \"account\": { \"object\": \"Account\", \"id\": \"cust_2234\", \"external_id\": \"Ext_2234\", \"vid\": \"0cdae787f01facd2d86a7d48c6529b5679c7cfbe\", \"created\": \"2023-01-20T13:35:11+00:00\", \"default_currency\": \"USD\", \"email\": \"rbrown@example.com\", \"email_type\": \"html\", \"language\": \"EN-U\", \"notify_before_billing\": true, \"company\": \"Peanuts\", \"name\": \"Robbert Brown\", \"shipping_address\": { \"object\": \"Address\", \"vid\": \"ae42d842242e3c8c5928f093be9d1f9ad82f7dd7\", \"name\": \"Robbert Brown\", \"line1\": \"123 Main Street\", \"city\": \"San Francisco\", \"district\": \"CA\", \"postal_code\": \"94105\", \"country\": \"US\", \"phone\": \"415-555-3212\" }, \"metadata\": { \"favorite dog\": \"Snoopy\", \"favorite activity\": \"flying kites\" } }, \"billing_plan\": { \"object\": \"BillingPlan\", \"id\": \"plan_1234\", \"vid\": \"a5e4eb7e26b81138e91d9042973d41e797072344\", \"created\": \"2023-01-20T13:22:42+00:00\", \"description\": \"Simple Monthly Plan with Trial\", \"status\": \"Active\", \"trial\": { \"object\": \"BillingPlanPeriod\", \"type\": \"Day\", \"quantity\": 7, \"cycles\": 1, \"prices\": { \"object\": \"List\", \"data\": [ { \"object\": \"BillingPlanPrice\", \"amount\": 0, \"currency\": \"USD\" } ], \"total_count\": 1 }, \"do_not_notify_first_bill\": false }, \"periods\": { \"object\": \"List\", \"data\": [ { \"object\": \"BillingPlanPeriod\", \"type\": \"Month\", \"quantity\": 1, \"cycles\": 1, \"prices\": { \"object\": \"List\", \"data\": [ { \"object\": \"BillingPlanPrice\", \"amount\": 49.99, \"currency\": \"USD\" } ], \"total_count\": 1 } } ], \"total_count\": 1 }, \"skip_initial_billing_notification\": false, \"metadata\": { \"plan info\": \"trial billing plan\" }, \"entitlements\": { \"object\": \"List\", \"data\": [ { \"object\": \"Entitlement\", \"id\": \"ent_p1235\", \"description\": \"Access to ent_p1235\" } ], \"total_count\": 1 }, \"times_to_run\": \"1\", \"used_on_subscriptions\": true }, \"payment_method\": { \"object\": \"PaymentMethod\", \"id\": \"paymentMethod_1234\", \"vid\": \"7d372db846a01aafbae14807b94a221313cf6d5a\", \"created\": \"2023-01-20T13:20:05+00:00\", \"type\": \"CreditCard\", \"credit_card\": { \"object\": \"CreditCard\", \"vid\": \"c840fd31aed4346f92a617886cbfc147034f6bd7\", \"account\": \"341111XXXXX1111\", \"bin\": \"341111\", \"type\": \"AX\", \"last_digits\": \"1111\", \"account_length\": 15, \"expiration_date\": \"202605\", \"last_au_request_date\": null, \"last_update_date\": null }, \"account_holder\": \"Charles Brown\", \"billing_address\": { \"object\": \"Address\", \"vid\": \"519bd0405f9ca442868a1c98b603055ad09bc54c\", \"name\": \"Charlie Brown\", \"line1\": \"123 Main Street\", \"city\": \"San Francisco\", \"district\": \"CA\", \"postal_code\": \"94105\", \"country\": \"US\", \"phone\": \"415-555-3212\" }, \"customer_specified_type\": \"Personal Amex\", \"primary\": true, \"active\": true, \"linked_subscription\": true }, \"currency\": \"USD\", \"description\": \"Subscription_2234\", \"status\": \"Active\", \"billing_state\": \"Free/Trial\", \"starts\": \"2023-01-20T05:52:02+00:00\", \"ends\": \"2023-01-26T00:00:00+00:00\", \"entitled_through\": \"2023-01-26T00:00:00+00:00\", \"items\": { \"object\": \"List\", \"data\": [ { \"object\": \"SubscriptionItem\", \"id\": \"sub_1234.1\", \"vid\": \"fe5b615735fc3d7c5544adddf99c38bae714e9bc\", \"index\": 0, \"product\": { \"object\": \"Product\", \"id\": \"prod_1234\", \"vid\": \"f549e4f493c23e16c3d7b74ebb51358ade375d11\", \"created\": \"2023-01-20T13:19:33+00:00\", \"status\": \"Active\", \"tax_classification\": \"TaxExempt\", \"prices\": { \"object\": \"List\", \"data\": [ { \"object\": \"ProductPrice\", \"amount\": 200, \"currency\": \"USD\" } ], \"total_count\": 1 } }, \"quantity\": 1, \"created\": \"2023-01-20T05:52:02+00:00\", \"starts\": \"2023-01-19T00:00:00+00:00\", \"discount_tickets\": { \"object\": \"List\", \"data\": [], \"total_count\": 0 } } ], \"total_count\": 1 }, \"billing_day\": 26, \"minimum_commitment\": 0, \"notify_on_transition\": false, \"most_recent_billing\": null, \"next_billing\": { \"object\": \"Transaction\", \"created\": \"2023-01-26T00:00:00+00:00\", \"amount\": 249.99, \"currency\": \"USD\", \"items\": { \"object\": \"List\", \"data\": [ { \"object\": \"TransactionItem\", \"sku\": \"prod_1234\", \"item_type\": \"Purchase\", \"price\": 249.99, \"quantity\": 1, \"tax_classification\": \"TaxExempt\", \"tax_type\": \"Exclusive Sales\", \"item_refunds\": { \"object\": \"List\", \"data\": [], \"total_count\": 0 }, \"subtotal\": 249.99, \"total\": 249.99 } ], \"total_count\": 1 }, \"subscription_sequence\": 2, \"payment_provider_response\": \"\" }, \"balance\": 0 }""{ \"object\": \"Error\", \"message\": \"JSON is invalid\" }"{
"code": "<string>",
"message": "<string>"
}"{ \"object\": \"Error\", \"message\": \"This endpoint does not exist. Check our API docs.\" }"Authorizations
Basic authentication header of the form Basic <encoded-value>, where <encoded-value> is the base64-encoded string username:password.
Path Parameters
The id or the vid of the Subscription to modify A unique identifier. Optionally, this object can also be identified by its vid. Using a unique custom identifier is strongly encouraged.
128Query Parameters
Indicates whether to prorate for unused service portions.
Billing date at which changes take effect; today or nextBill.
Use this parameter to change the billing date and have Subscribe automatically prorate the charges thereby extending or shortening the billing cycle.
Note: If you don't want to have proration while changing the billing date, use the Change the Subscription Billing Day call instead. You can change the billing date to a later date (extend the billing cycle), or change the billing date to an earlier date (shorten the billing cycle) for monthly billing cycles only.
Important: To change and prorate the billing date, you must also set bill_prorated_period query parameter to true, which allows Subscribe to calculate the prorated changes.
Extend the billing cycle example: A $30 monthly subscription bills on the 1st of the month. On February 20,new_billing_date is set to the 16th of March, effective immediately. Subscribe calculates a new charge for the period 3-1 through 3-15, for an immediate prorated charge of $15. Next regular monthly billing is performed on the 16th of March.
Shorten the billing cycle example: A $30 monthly subscription bills on the 1st of the month. On February 10,new_billing_date is set to the 16th of February, effective immediately. Subscribe calculates a refund for the period 2-16 through 2-28 and applies it against the initial charge of $30 billed on February 1st. Next regular monthly billing is performed on the 16th of February.
Note: This parameter supports monthly billing cycles only. Other billing cycle frequencies such as weekly, quarterly, or yearly ar not supported.
Indicates whether to commit changes or return results without execution
Body
JSON - This request supports the same arguments as 'create’ (a full Subscription object) excepting the behavior of the id. Providing an id or vid in the URL indicates to Subscribe that this is an update, not a create call. Therefore, id and vid cannot be updated. The following changes will modify the subscribed service:
- Plan Change: Providing a new Billing Plan will change the billing plan/schedule for the subscription as of the effective_date.
- Replacing an existing/active Item with a new Item: Include a new Subscription Item populating the
replacesattribute (in the Subscription Item) with the id of the existing item being replaced. - Add a new Item: Include a new Subscription Item (leaving undefined the
replaced_byandreplacesparameters in the Subscription Item). - Remove an existing Item: Include a new but empty/undefined Subscription Item populating ONLY the
replacesattribute with the id of the existing item being removed. All changes will take effect as of the effective_date provided; Proration calculations, when required, will use the period between the last scheduled billing and theeffective_date(calculated to whole days). - Apply a Campaign Code to a Subscription Item: Use the
replaced_byandreplacesattributes (in the Subscription Item) to apply a Campaign Code to a Subscription Item by replacing the existing item with the same item and including the Campaign Code.
Value is "Subscription".
Subscription A unique identifier. Optionally, this object can also be identified by its vid. Using a unique custom identifier is strongly encouraged.
128The Account represents a merchant’s customer. As such it can contain as much or as little information as you collect about the customers (people or organizations) to which you offer billing and subscriptions. Subscriptions and Transactions must belong to an Account - as such, Accounts will be required in CashBox for billing. Read More in our User Guide
An Account can have any number of children accounts and may have up to one parent account. Read more in our User Guide.
An Account owns the “on file” payment methods to be used by it in billing.
Show child attributes
Show child attributes
The status of the subscription from a service and entitlement perspective.
Pending Activation, Active, Pending Cancel, Cancelled, Expired, Processing, Deleted, Dryrun, Unknown, Upgraded, Legacy Suspended, Bogus AutoBill Status The product-based line items for the subscription.
Show child attributes
Show child attributes
A Globally Unique Identifier (GUID) for this object. This value is generated by Vindicia.
128The date/time at which the subscription was requested.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
The financial state of the subscription.
Free/Trial, Billing Completed, Failed To Collect, Free Period, Bogus BillingState The date/time the subscription starts service.
The date/time the subscription ends service.
The date/time to which the subscription will entitle service if no further payments are made – a “paid thru” date based on billing schedule and grace period.
Optional source IP Address at sign-up.
Optional “soft descriptor” to send to the payment processor for transactions from this subscription.
The day of the month on which the subscription is (typically) billed. Often called an “anniversary date.”
Number of billing cycles customer is obligated to maintain the subscription. Cancelling before this time requires CSP to “force” cancellation.
Affiliate or channel identifier, if any, under which the subscription was submitted.
A more granular or subordinate affiliate identifier.
Indicates whether to send an expiration or trial-end email notification using the days-in-advance configuration in the Billing Plan.
The Transaction object provides a way to charge a customer. You can create one-time transactions, retrieve individual transactions, fetch individual transactions, and list all Transactions for a given account or subscription. Posting with a new Transaction creates a new one-time Transaction object. If “to_be_captured” is false, the request will trigger an authorization attempt (based on the provided payment method’s authorization process). If successfully authorized, a subsequent post to the transaction’s actions/capture endpoint will capture the authorized transaction. If you post a new transaction with “to_be_captured” true, it will authorize and immediately capture the transaction if successful. To refund transactions, use the refunds endpoint.
Show child attributes
Show child attributes
A list of any refunds associated with the Transaction in most_recent_billing.
Show child attributes
Show child attributes
The Transaction object provides a way to charge a customer. You can create one-time transactions, retrieve individual transactions, fetch individual transactions, and list all Transactions for a given account or subscription. Posting with a new Transaction creates a new one-time Transaction object. If “to_be_captured” is false, the request will trigger an authorization attempt (based on the provided payment method’s authorization process). If successfully authorized, a subsequent post to the transaction’s actions/capture endpoint will capture the authorized transaction. If you post a new transaction with “to_be_captured” true, it will authorize and immediately capture the transaction if successful. To refund transactions, use the refunds endpoint.
Show child attributes
Show child attributes
A set of key/value pairs that you can attach to an object. Useful for storing additional information. Subscription metadata will be inherited by resulting transactions.
The Credit object represents a service credit granted to an account or subscription, taking the form of either currency, token, or time amounts.
Show child attributes
Show child attributes
Instructions for if/how to include the invoice statement for this subscription. Values can be Attachment, DoNotSend,Inline
Attachment, DoNotSend, Inline Net Terms (in days); after this many days from a billing, the invoice will be considered delinquent.
Days before scheduled billing to deliver the statement.
Template to use for statement generation.
The Campaign code redeemed on this AutoBill against the price of the Billing Plan. To apply a Campaign, use this field to pass in a valid Coupon or Promotion code. Note This data member will not be returned. Only supported for Single Discount.
The unique identifier for a Campaign applied to this AutoBill’s BillingPlan. This is a read-only field returned by Vindicia for informational purposes. Values sent in with a SOAP call will be ignored. Read only. Only supported for Single Discount.
Used to create a Subscription Pending Activation.
The mandates object represents the end-custom approval for a one-time or recurring billing using their provided bank account details. A common requirement for UK and SEPA direct debit payment methods.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
The policy object governing Subscription behavior.
Show child attributes
Show child attributes
Only supported for Stackable Discounts.
Show child attributes
Show child attributes
Response
JSON - A full Subscription object representing the new version of the Subscription.
Value is "Subscription".
Subscription A unique identifier. Optionally, this object can also be identified by its vid. Using a unique custom identifier is strongly encouraged.
128The Account represents a merchant’s customer. As such it can contain as much or as little information as you collect about the customers (people or organizations) to which you offer billing and subscriptions. Subscriptions and Transactions must belong to an Account - as such, Accounts will be required in CashBox for billing. Read More in our User Guide
An Account can have any number of children accounts and may have up to one parent account. Read more in our User Guide.
An Account owns the “on file” payment methods to be used by it in billing.
Show child attributes
Show child attributes
The status of the subscription from a service and entitlement perspective.
Pending Activation, Active, Pending Cancel, Cancelled, Expired, Processing, Deleted, Dryrun, Unknown, Upgraded, Legacy Suspended, Bogus AutoBill Status The product-based line items for the subscription.
Show child attributes
Show child attributes
A Globally Unique Identifier (GUID) for this object. This value is generated by Vindicia.
128The date/time at which the subscription was requested.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
The financial state of the subscription.
Free/Trial, Billing Completed, Failed To Collect, Free Period, Bogus BillingState The date/time the subscription starts service.
The date/time the subscription ends service.
The date/time to which the subscription will entitle service if no further payments are made – a “paid thru” date based on billing schedule and grace period.
Optional source IP Address at sign-up.
Optional “soft descriptor” to send to the payment processor for transactions from this subscription.
The day of the month on which the subscription is (typically) billed. Often called an “anniversary date.”
Number of billing cycles customer is obligated to maintain the subscription. Cancelling before this time requires CSP to “force” cancellation.
Affiliate or channel identifier, if any, under which the subscription was submitted.
A more granular or subordinate affiliate identifier.
Indicates whether to send an expiration or trial-end email notification using the days-in-advance configuration in the Billing Plan.
The Transaction object provides a way to charge a customer. You can create one-time transactions, retrieve individual transactions, fetch individual transactions, and list all Transactions for a given account or subscription. Posting with a new Transaction creates a new one-time Transaction object. If “to_be_captured” is false, the request will trigger an authorization attempt (based on the provided payment method’s authorization process). If successfully authorized, a subsequent post to the transaction’s actions/capture endpoint will capture the authorized transaction. If you post a new transaction with “to_be_captured” true, it will authorize and immediately capture the transaction if successful. To refund transactions, use the refunds endpoint.
Show child attributes
Show child attributes
A list of any refunds associated with the Transaction in most_recent_billing.
Show child attributes
Show child attributes
The Transaction object provides a way to charge a customer. You can create one-time transactions, retrieve individual transactions, fetch individual transactions, and list all Transactions for a given account or subscription. Posting with a new Transaction creates a new one-time Transaction object. If “to_be_captured” is false, the request will trigger an authorization attempt (based on the provided payment method’s authorization process). If successfully authorized, a subsequent post to the transaction’s actions/capture endpoint will capture the authorized transaction. If you post a new transaction with “to_be_captured” true, it will authorize and immediately capture the transaction if successful. To refund transactions, use the refunds endpoint.
Show child attributes
Show child attributes
A set of key/value pairs that you can attach to an object. Useful for storing additional information. Subscription metadata will be inherited by resulting transactions.
The Credit object represents a service credit granted to an account or subscription, taking the form of either currency, token, or time amounts.
Show child attributes
Show child attributes
Instructions for if/how to include the invoice statement for this subscription. Values can be Attachment, DoNotSend,Inline
Attachment, DoNotSend, Inline Net Terms (in days); after this many days from a billing, the invoice will be considered delinquent.
Days before scheduled billing to deliver the statement.
Template to use for statement generation.
The Campaign code redeemed on this AutoBill against the price of the Billing Plan. To apply a Campaign, use this field to pass in a valid Coupon or Promotion code. Note This data member will not be returned. Only supported for Single Discount.
The unique identifier for a Campaign applied to this AutoBill’s BillingPlan. This is a read-only field returned by Vindicia for informational purposes. Values sent in with a SOAP call will be ignored. Read only. Only supported for Single Discount.
Used to create a Subscription Pending Activation.
The mandates object represents the end-custom approval for a one-time or recurring billing using their provided bank account details. A common requirement for UK and SEPA direct debit payment methods.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
The policy object governing Subscription behavior.
Show child attributes
Show child attributes
Only supported for Stackable Discounts.
Show child attributes
Show child attributes

