private function getSubscriptionNotary($price)
 {
     $subArgs = new SubscriptionNotaryArguments($this->_merchantSubId);
     $subArgs->setAmount($price)->setCategory(NotaryArguments::CATEGORY_APPLICATION_OTHER)->setDescription('SAMPLE APP')->setMerchantTransactionId('mtid' . time())->setMerchantProductId($this->_merchantProdId)->setMerchantRedirectUrl($this->_redirectURL);
     $request = new NotaryService($this->apiFQDN, $this->clientId, $this->clientSecret);
     return $request->getSubscriptionNotary($subArgs);
 }
 /**
  * Sends a request to the api for generating a signed document and 
  * signature, both of which will be contained within the returned notary 
  * object. The notary object can then be used for creating a new 
  * subscription.
  *
  * @param SubscriptionNotaryArguments $args arguments for generating notary 
  *
  * @return Notary notary generated from payload
  * @throws ServiceException if api response isn't successful
  */
 public function getSubscriptionNotary(SubscriptionNotaryArguments $args)
 {
     $vars = array('Amount' => $args->getAmount(), 'Category' => $args->getCategory(), 'Channel' => $args->getChannel(), 'Description' => $args->getDescription(), 'MerchantTransactionId' => $args->getMerchantTransactionId(), 'MerchantProductId' => $args->getMerchantProductId(), 'MerchantPaymentRedirectUrl' => $args->getMerchantRedirectUrl(), 'MerchantSubscriptionIdList' => $args->getMerchantSubscriptionIdList(), 'IsPurchaseOnNoActiveSubscription' => $args->isPurchaseOnNoActiveSubscription(), 'SubscriptionRecurrences' => $args->getSubscriptionRecurrences(), 'SubscriptionPeriod' => $args->getSubscriptionPeriod(), 'SubscriptionPeriodAmount' => $args->getSubscriptionPeriodAmount());
     $payload = json_encode($vars);
     return $this->getNotary($payload);
 }