Para poder consultar el estado de la suscripción tendrás que ejecutar el método getSubscriptionsWithParameters(). Envías el plan_id y el customer_id para conocer las suscripciones según su estado ACTIVE, ENDED, CANCELLED.
function getSubscriptionsWithParameters(){
$parameters = array(
//Todos son opcionales
// Identificador del plan
PayUParameters::PLAN_ID => "xxxxxxxxxxxxxx",
// Código del plan
PayUParameters::PLAN_CODE => "xxxxxxxx",
// Estado de la suscripción
//ACTIVE, ENDED, CANCELLED
PayUParameters::SUBSCRIPTION_STATE => "ACTIVE",//ACTIVE, ENDED, CANCELLED
// identificador del pagador
PayUParameters::CUSTOMER_ID => "xxxxxxxx",
// Identificador de la cuenta
PayUParameters::ACCOUNT_ID => "500538",
// Máximo de registros a presentar
PayUParameters::LIMIT => "10",
//primer registro a obtener
PayUParameters::OFFSET => "0",
);
$response= PayUSubscriptions::findSubscriptionsByPlanOrCustomerOrAccount($parameters);
if($response){
foreach ($response->subscriptionsList as $subscription){
$subscription->id;
$subscription->plan->id;
$subscription->plan->planCode;
$subscription->plan->description;
$subscription->customer->id;
if(isset($subscription->customer->fullName))$subscription->customer->fullName;
if(isset($subscription->customer->email))$subscription->customer->email;
foreach ($subscription->customer->creditCards as $creditCard){
$creditCard->token;
$creditCard->type;
}
$subscription->successfulPayments;
$subscription->pendingPayments;
$subscription->state;
}
}
}