"Visualizar los pagos solicitados y el estado de cada uno de ellos en una pagina que trae la información desde MercadoPago.
Esto puede ser bastante difícil, alcanza con que dado un ID de transacción pueda consultar su estado (si está pagado o pendiente de pago)".
El único es que ellos quieren que el pago realizado con el checkout pro sea visualizado en la misma cuenta del vendedor en mercado pago. Siendo más específico en la parte de actividad de la cuenta.
He investigado que se puede obtener el payment y el preference mediante la url con GET pero está lejos de lo que me piden. Esto es lo que tengo de momento, en caso de que el pago haya sido efectuado:
Código PHP:
Ver original
public function success(){ $this->updateItems(); $payid = $_GET["payment_id"]; //$paytype = $_GET["payment_type"]; MercadoPago\SDK::setAccessToken('TEST-6451616915373368-042720-2a5cde5a2a4020c3baf46fc94be461db-199806132'); $payment = $this->createPayment($payid, $paytype); //$merchant = MercadoPago\MerchantOrder::find_by_id($_GET["merchant_order_id"]); $payer = new MercadoPago\Payer(); $payer->first_name = "Juan Alberto"; $payer->last_name = "Ocampo"; $payment->payer = $payer; $payment->save(); //$preference = MercadoPago\Preference::find_by_id($_GET["preference_id"]); //echo "<pre>"; //var_dump($payment); //echo "</pre>"; //$merchant->save(); Session::set("msg",Session::msgSuccess("Pago Realizado")); $this->redirect("success.php",[ "payment" => $payment ]); }
Este es el error que me da:
Cita:
["error":protected]=>
object(MercadoPago\RecuperableError)#147 (4) {
["message"]=>
string(609) "The name of the following parameters is wrong : [date_approved, money_release_date, collector_id, captured, id, payment_type_id, date_last_updated, date_created, status_detail, live_mode, currency_id, card, transaction_details.total_paid_amount, transaction_details.acquirer_reference, transaction_details.installment_amount, transaction_details.net_received_amount, transaction_details.overpaid_amount, transaction_details.external_resource_url, transaction_details.payable_deferral_period, transaction_details.payment_method_reference_id, additional_info.nsu_processadora, additional_info.available_balance]"
["status"]=>
int(400)
["error"]=>
string(11) "bad_request"
["causes"]=>
array(1) {
[0]=>
object(MercadoPago\ErrorCause)#163 (2) {
["code"]=>
int(8)
["description"]=>
string(36) "The name of the parameters is wrong."
}
}
}
object(MercadoPago\RecuperableError)#147 (4) {
["message"]=>
string(609) "The name of the following parameters is wrong : [date_approved, money_release_date, collector_id, captured, id, payment_type_id, date_last_updated, date_created, status_detail, live_mode, currency_id, card, transaction_details.total_paid_amount, transaction_details.acquirer_reference, transaction_details.installment_amount, transaction_details.net_received_amount, transaction_details.overpaid_amount, transaction_details.external_resource_url, transaction_details.payable_deferral_period, transaction_details.payment_method_reference_id, additional_info.nsu_processadora, additional_info.available_balance]"
["status"]=>
int(400)
["error"]=>
string(11) "bad_request"
["causes"]=>
array(1) {
[0]=>
object(MercadoPago\ErrorCause)#163 (2) {
["code"]=>
int(8)
["description"]=>
string(36) "The name of the parameters is wrong."
}
}
}
Estoy precisando con urgencia tener esto listo.
Espero sus respuestas y saludos.