Ir para conteúdo

lucxsborges

Members
  • Total de itens

    1
  • Registro em

  • Última visita

Posts postados por lucxsborges


  1. Estou tentando realizar a consulta de status de uma transação do pagseguro pela seguinte API: "Transações por Código" (https://dev.pagseguro.uol.com.br/docs/bibliotecas-php-transacoes-busca-por-codigo) e ela me retorna o erro "Not Found", o problema não está nela, e sim em uma API anterior que uso para criar uma recorrencia, esta deveria me retornar o código da transação para que eu pudesse buscar o status dela, porém ela me retorna um código diferente do que é registrado na conta do Pagseguro, segue a API que uso para criar a recorrencia: "Recorrência Transparente: Adesão à recorrência" (https://dev.pagseguro.uol.com.br/docs/bibliotecas-php-recorrencia-transparente-adesao-a-recorrencia). Alguém já teve esse problema e conseguiu encontrar uma solução?

     

    Segue abaixo o código que estou usando:

     
    public function aderirPlano(
    $plan,
    $reference,
    $senderName,
    $senderEmail,
    $senderIp,
    $street,
    $adress_number,
    $district,
    $postalCode,
    $city,
    $state,
    $country,
    $type,
    $value,
    $areaCode,
    $phone_number,
    $creditCardtoken,
    $creditCardholderName,
    $creditCardholderBirthdate
    )
    {
    $preApproval = new \PagSeguro\Domains\Requests\DirectPreApproval\Accession();
     
    /**
    * Código do plano ao qual a assinatura será vinculada. Formato: Obtido no método /pre-approvals/request.
    *
    * @var string $preApprovalPlan
    */
    $preApproval->setPlan($plan);
     
    /**
    * Código de referência da assinatura no seu sistema. Formato: Livre, com no mínimo 1 e no máximo 200 caracteres.
    *
    * @var string $preApprovalReference
    */
    $preApproval->setReference($reference);
     
    /**
    * Nome completo do consumidor. Formato: Livre, com no mínimo duas sequências de strings e limite total de 50
    * caracteres.
    *
    * @var string $senderName
    */
    $preApproval->setSender()->setName($senderName);
     
    /**
    * E-mail do consumidor. Formato: Um e-mail válido, com limite de 60 caracteres.
    *
    * @var string $senderEmail
    */
    $preApproval->setSender()->setEmail($senderEmail);
     
    /**
    * Endereço de IP de origem do consumidor. Obrigatório se hash for nulo. Formato: 4 números, de 0 a 255, separados por
    * ponto.
    *
    * @var string $senderIp
    */
    $preApproval->setSender()->setIp($senderIp);
     
    /*
    * Endereço do consumidor.
    */
    $preApproval->setSender()->setAddress()->withParameters(
    $street,
    $adress_number,
    $district,
    $postalCode,
    $city,
    $state,
    $country
    );
     
    $document = new \PagSeguro\Domains\DirectPreApproval\Document();
    $document->withParameters($type, $value);
     
    /** @var \PagSeguro\Domains\DirectPreApproval\Document $document Documentos do consumidor */
    $preApproval->setSender()->setDocuments($document);
     
    $preApproval->setSender()->setPhone()->withParameters(
    /**
    * DDD do comprador. Formato: Um número de 2 dígitos correspondente a um DDD válido.
    *
    * @var string $areaCode
    */
    $areaCode,
    /**
    * Número do telefone do comprador. Formato: Um número entre 7 e 9 dígitos.
    *
    * @var string $number
    */
    $phone_number
    );
     
    /**
    * Token retornado no método Javascript PagSeguroDirectPayment.createCardToken().
    *
    * @var string $creditCardtoken
    */
    $preApproval->setPaymentMethod()->setCreditCard()->setToken($creditCardtoken);
     
    /**
    * Nome conforme impresso no cartão de crédito. Formato: No mínimo 1 e no máximo 50 caracteres.
    *
    * @var string $creditCardholderName
    */
    $preApproval->setPaymentMethod()->setCreditCard()->setHolder()->setName($creditCardholderName);
     
    /**
    * Data de nascimento do dono do cartão de crédito. Formato: dd/MM/yyyy.
    *
    * @var string $creditCardholderBirthdate
    */
    $preApproval->setPaymentMethod()->setCreditCard()->setHolder()->setBirthDate($creditCardholderBirthdate);
     
    /** @var \PagSeguro\Domains\DirectPreApproval\Document $document Documentos do consumidor */
    $preApproval->setPaymentMethod()->setCreditCard()->setHolder()->setDocuments($document);
     
    $preApproval->setPaymentMethod()->setCreditCard()->setHolder()->setPhone()->withParameters(
    /**
    * DDD do comprador. Formato: Um número de 2 dígitos correspondente a um DDD válido.
    *
    * @var string $areaCode
    */
    $areaCode,
    /**
    * Número do telefone do comprador. Formato: Um número entre 7 e 9 dígitos.
    *
    * @var string $number
    */
    $phone_number
    );
     
    /*
    * Endereço de Cobrança.
    */
    $preApproval->setPaymentMethod()->setCreditCard()->setHolder()->setBillingAddress()->withParameters(
    $street,
    $adress_number,
    $district,
    $postalCode,
    $city,
    $state,
    $country
    );
     
    try {
    $response = $preApproval->register(
    /** @var \PagSeguro\Domains\AccountCredentials | \PagSeguro\Domains\ApplicationCredentials $credential */
    \PagSeguro\Configuration\Configure::getAccountCredentials(),
    true
    );
    return $response;
    } catch (Exception $e) {
    return $e->getMessage();
    }
    }

     

    No controller chamo essa função acima e ela retorna um parametro "code" que eu salvo em uma variável e uso ela em seguida na seguinte função:

     

    public function dadosTransacao($transactionCode)
    {
    try {
    $response = \PagSeguro\Services\Transactions\Search\Code::search(
    /** @var \PagSeguro\Domains\AccountCredentials | \PagSeguro\Domains\ApplicationCredentials $credential */
    \PagSeguro\Configuration\Configure::getAccountCredentials(),
    /**
    * Código que identifica a transação. Código da transação que será consultada.
    *
    * Presença: Obrigatória.
    * Tipo: Texto.
    * Formato: Uma sequência de 36 caracteres, com os hífens, ou 32 caracteres, sem os hífens.
    *
    * @var string $transactionCode
    */
    $transactionCode
    );
    return $response;
    } catch (Exception $e) {
    return $e->getMessage();
    }
    }

     

    E então recebo "Not found" como resposta.

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.