Skip to content

3.5 Alteração de método de pagamento

Fernando Henrique Bandeira edited this page Nov 19, 2017 · 4 revisions

Para alterar o método de pagamento de um pagamento recorrente pode-se utilizar a seguinte chamada:

try {
	$response = PagSeguroRecorrente::setPreApprovalCode($code)
	    ->setType('CREDITCARD')
	    ->setSenderInfo([
	        'senderName' => $request->cardName,
	        'senderPhone' => '27999999999', //Qualquer formato, desde que tenha o DDD
	        'senderEmail' => 'exemplo@email.com',
	        'senderHash' => $request->senderHash,
	        'senderCPF' => '00000000000' //Ou senderCNPJ se for Pessoa Júridica
	    ])
	    ->setCreditCardHolder([
	        //'creditCardHolderName' => 'Nome Completo', //OPCIONAL, se não passar ele usa o que for passado no senderName
	        'creditCardHolderBirthDate' => '01/01/1969', //Deve estar nesse formato,
	        //'creditCardHolderPhone' => '12 12345678', //OPCIONAL, se não passar ele usa o que for passado no senderPhone
	        //'creditCardHolderCPF' => '12345678900' //OPCIONAL, se não passar ele usa o que for passado no senderCPF, se for Jurídica tem que passar
	     ])
	    ->setSenderAddress([
	        'senderAddressStreet' => 'Exemplo Rua',
	        'senderAddressNumber' => '123',
	        'senderAddressComplement' => 'Complemento', // OPCIONAL
	        'senderAddressDistrict' => 'Exemplo Bairro',
	        'senderAddressPostalCode' => '02598-900',
	        'senderAddressCity' => 'São Paulo',
	        'senderAddressState' => 'SP'
	    ])
	    /*->setBillingAddress([ // A chamada deste método é opcional, se não chamar serão usados os dados do setSenderAddress
	        'billingAddressStreet' => 'Rua/Avenida',
	        'billingAddressNumber' => 'Número',
	        'billingAddressComplement' => 'Complemento', // OPCIONAL
	        'billingAddressDistrict' => 'Bairro',
	        'billingAddressPostalCode' => '12345-678',
	        'billingAddressCity' => 'Cidade',
	        'billingAddressState' => 'RS'
	    ])*/  
	    ->sendPreApprovalPaymentMethod([
	        'creditCardToken' => $request->creditCardToken
	    ]);

	return $response;

} catch (\Artistas\PagSeguro\PagSeguroException $e) {
    $error = [  
    	'code' => $e->getCode(),
    	'message' => $e->getMessage()
	];

    return response()->json($error, 422);
}