<?php header('Content-Type: text/plain'); require '../ChargeOverAPI.php'; //This url should be specific to your ChargeOver instance $url = 'http://dev.chargeover.com/api/v3'; //$url = 'https://YOUR-INSTANCE-NAME.chargeover.com/api/v3'; $authmode = ChargeOverAPI::AUTHMODE_HTTP_BASIC; $username = '******'; $password = '******'; $API = new ChargeOverAPI($url, $authmode, $username, $password); $Package = new ChargeOverAPI_Object_Package(); $Package->setCustomerId(18); // Tell it to use whatever ACH account is on file for this customer //$Package->setPaymethod('ach'); //$Package->setPaymethod('crd'); // ... or whichever credit card // By default, ChargeOver will create MONTHLY recurring packages - but you can change this: //$Package->setPaycycle('yrl'); // yearly //$Package->setPaycycle('qtr'); // quarterly // @todo more cycles docs $LineItem = new ChargeOverAPI_Object_LineItem(); $LineItem->setItemId(1); //$LineItem->setDescrip('Test of a description goes here.'); $LineItem->setTrialDays(20); $LineItem->setLineQuantity(15); $Package->addLineItems($LineItem); $resp = $API->create($Package); if (!$API->isError($resp)) { $package_id = $resp->response->id; print 'SUCCESS! Package # is: ' . $package_id; } else {
<?php header('Content-Type: text/plain'); require '../ChargeOverAPI.php'; //This url should be specific to your ChargeOver instance $url = 'http://macbookpro.chargeover.com:8888/chargeover/signup/api/v3.php'; //$url = 'https://YOUR-INSTANCE-NAME.chargeover.com/api/v3'; $authmode = ChargeOverAPI::AUTHMODE_HTTP_BASIC; $username = '******'; $password = '******'; $API = new ChargeOverAPI($url, $authmode, $username, $password); $your_subscription_id = 'abcd1234' . mt_rand(0, 1000); // Create a new billing package $Package = new ChargeOverAPI_Object_Package(); $Package->setCustomerId(1); // Tell the package to not invoice until the 1st $Package->setHolduntilDatetime(date('Y-m-01', strtotime('+1 month'))); // Here is your unique subscription ID # $Package->setExternalKey($your_subscription_id); // This is for our data usage $LineItem = new ChargeOverAPI_Object_LineItem(); $LineItem->setItemId(13); $Package->addLineItems($LineItem); // This is for our extra # of devices $LineItem = new ChargeOverAPI_Object_LineItem(); $LineItem->setItemId(14); $Package->addLineItems($LineItem); $resp = $API->create($Package); if ($resp->response->id) { // Created the package! // Now, every day you want to push new usage to it