/** * Returns the recurring bill items with the query params * * @param parameters * The parameters to be sent to the server * @return the recurring bill items found * @throws PayUException * @throws InvalidParametersException * @throws ConnectionException */ public static function findList($parameters, $lang = null) { $subscriptionId = CommonRequestUtil::getParameter($parameters, PayUParameters::SUBSCRIPTION_ID); $description = CommonRequestUtil::getParameter($parameters, PayUParameters::DESCRIPTION); $request = new \stdClass(); $request->subscriptionId = $subscriptionId; $request->description = $description; if (isset($subscriptionId) || isset($description)) { $urlSegment = PayUSubscriptionsUrlResolver::getInstance()->getUrlSegment(PayUSubscriptionsUrlResolver::RECURRING_BILL_ITEM_ENTITY, PayUSubscriptionsUrlResolver::GET_LIST_OPERATION, null); $urlSegment = CommonRequestUtil::addQueryParamsToUrl($urlSegment, $request); } else { throw new \InvalidArgumentException('You must send ' . PayUParameters::SUBSCRIPTION_ID . ' or ' . PayUParameters::DESCRIPTION . ' parameters'); } $payUHttpRequestInfo = PayUSubscriptionsRequestUtil::buildHttpRequestInfo($urlSegment, $lang, RequestMethod::GET); return PayUApiServiceUtil::sendRequest(null, $payUHttpRequestInfo); }
/** * Finds all bill filtered by * - customer id * - date begin * - date final * - payment method * - subscription Id * * @param parameters The parameters to be sent to the server * @param string $lang language of request see SupportedLanguages class * @return the subscription plan list * @throws PayUException * @throws InvalidArgumentException */ public static function listRecurringBills($parameters, $lang = null) { $request = new \stdClass(); $request->customerId = CommonRequestUtil::getParameter($parameters, PayUParameters::CUSTOMER_ID); $request->dateBegin = CommonRequestUtil::getParameter($parameters, PayUParameters::RECURRING_BILL_DATE_BEGIN); $request->dateFinal = CommonRequestUtil::getParameter($parameters, PayUParameters::RECURRING_BILL_DATE_FINAL); $request->paymentMethod = CommonRequestUtil::getParameter($parameters, PayUParameters::RECURRING_BILL_PAYMENT_METHOD_TYPE); $request->state = CommonRequestUtil::getParameter($parameters, PayUParameters::RECURRING_BILL_STATE); $request->subscriptionId = CommonRequestUtil::getParameter($parameters, PayUParameters::SUBSCRIPTION_ID); $request->limit = CommonRequestUtil::getParameter($parameters, PayUParameters::LIMIT); $request->offset = CommonRequestUtil::getParameter($parameters, PayUParameters::OFFSET); $urlSegment = PayUSubscriptionsUrlResolver::getInstance()->getUrlSegment(PayUSubscriptionsUrlResolver::RECURRING_BILL_ENTITY, PayUSubscriptionsUrlResolver::QUERY_OPERATION); $urlSegment = CommonRequestUtil::addQueryParamsToUrl($urlSegment, $request); $payUHttpRequestInfo = PayUSubscriptionsRequestUtil::buildHttpRequestInfo($urlSegment, $lang, RequestMethod::GET); return PayUApiServiceUtil::sendRequest(null, $payUHttpRequestInfo); }
/** * Finds the customers associated to a plan by plan id or by plan code * * @param parameters The parameters to be sent to the server * @param string $lang language of request see SupportedLanguages class * @return The response to the request sent * * @throws PayUException * @throws InvalidArgumentException */ public static function findCustomerListByPlanIdOrPlanCode($parameters, $lang = null) { $request = new \stdClass(); $request->planId = CommonRequestUtil::getParameter($parameters, PayUParameters::PLAN_ID); $request->planCode = CommonRequestUtil::getParameter($parameters, PayUParameters::PLAN_CODE); $request->limit = CommonRequestUtil::getParameter($parameters, PayUParameters::LIMIT); $request->offset = CommonRequestUtil::getParameter($parameters, PayUParameters::OFFSET); $urlSegment = PayUSubscriptionsUrlResolver::getInstance()->getUrlSegment(PayUSubscriptionsUrlResolver::CUSTOMER_ENTITY, PayUSubscriptionsUrlResolver::CUSTOMERS_PARAM_SEARCH, null); $urlSegment = CommonRequestUtil::addQueryParamsToUrl($urlSegment, $request); $payUHttpRequestInfo = PayUSubscriptionsRequestUtil::buildHttpRequestInfo($urlSegment, $lang, RequestMethod::GET); return PayUApiServiceUtil::sendRequest(null, $payUHttpRequestInfo); }
/** * Finds all subscription plans filtered by merchant or account * by default the function filter by merchant if you need filter by account * you can send in the parameters the account id * @param parameters The parameters to be sent to the server * @param string $lang language of request see SupportedLanguages class * @return the subscription plan list * @throws PayUException * @throws InvalidParametersException * @throws InvalidArgumentException */ public static function listPlans($parameters, $lang = null) { $request = new \stdClass(); $request->accountId = CommonRequestUtil::getParameter($parameters, PayUParameters::ACCOUNT_ID); $request->limit = CommonRequestUtil::getParameter($parameters, PayUParameters::LIMIT); $request->offset = CommonRequestUtil::getParameter($parameters, PayUParameters::OFFSET); $urlSegment = PayUSubscriptionsUrlResolver::getInstance()->getUrlSegment(PayUSubscriptionsUrlResolver::PLAN_ENTITY, PayUSubscriptionsUrlResolver::QUERY_OPERATION); $urlSegment = CommonRequestUtil::addQueryParamsToUrl($urlSegment, $request); $payUHttpRequestInfo = PayUSubscriptionsRequestUtil::buildHttpRequestInfo($urlSegment, $lang, RequestMethod::GET); return PayUApiServiceUtil::sendRequest(null, $payUHttpRequestInfo); }
/** * Finds the subscriptions associated to a customer by either * payer id, plan id, plan code, accoun id and account status * using an offset and a limit * * @param parameters The parameters to be sent to the server * @param string $lang language of request see SupportedLanguages class * @return The response to the request sent * * @throws PayUException * @throws InvalidArgumentException */ public static function findSubscriptionsByPlanOrCustomerOrAccount($parameters, $lang = null) { $request = new \stdClass(); $request->planId = CommonRequestUtil::getParameter($parameters, PayUParameters::PLAN_ID); $request->planCode = CommonRequestUtil::getParameter($parameters, PayUParameters::PLAN_CODE); $request->state = CommonRequestUtil::getParameter($parameters, PayUParameters::ACCOUNT_STATE); $request->customerId = CommonRequestUtil::getParameter($parameters, PayUParameters::CUSTOMER_ID); $request->accountId = CommonRequestUtil::getParameter($parameters, PayUParameters::ACCOUNT_ID); $request->limit = CommonRequestUtil::getParameter($parameters, PayUParameters::LIMIT); $request->offset = CommonRequestUtil::getParameter($parameters, PayUParameters::OFFSET); $urlSegment = PayUSubscriptionsUrlResolver::getInstance()->getUrlSegment(PayUSubscriptionsUrlResolver::SUBSCRIPTIONS_ENTITY, UrlResolver::GET_LIST_OPERATION, null); $urlSegment = CommonRequestUtil::addQueryParamsToUrl($urlSegment, $request); $payUHttpRequestInfo = PayUSubscriptionsRequestUtil::buildHttpRequestInfo($urlSegment, $lang, RequestMethod::GET); return PayUApiServiceUtil::sendRequest(null, $payUHttpRequestInfo); }