muy buenos días ! estoy intentando implementar el SDK de MercadoPago en Laravel 8 y estoy teniendo el siguiente problema:
intente de varias formas pero no hubo caso, así que me decante por hacer la clásica, enviar los datos desde el controller directamente para verificar que este funcionando y para mi sorpresa tampoco funciona...
estoy usando el dx-php original de mercadopago
public function pagar(Order $order): string { $preference = new Preference(); # Building an item $item1 = new Item(); $item1->id = "00001"; $item1->title = "item"; $item1->quantity = 1; $item1->unit_price = 100; $item2 = new Item(); $item2->id = "00001"; $item2->title = "item"; $item2->quantity = 1; $item2->unit_price = 100; $preference->items = array($item1, $item2); $preference->payment_methods = array("excluded_payment_types" => array( array("id" => "credit_card") ),"installments" => 12 ); $preference->external_reference = "A Custom External Reference"; $preference->save(); if (config('payment-methods.use_sandbox')) { return $preference->sandbox_init_point; } return $preference->sandbox_init_point; }
Todos los metodos que usé me tira el mismo error : Invalid argument supplied for foreach()
alguien me puede decir que es lo que está mal?este es el codigo del foreach esta en la api oficial
public function proccess_causes($causes){ if(isset($causes['code']) && isset($causes['description'])){ $this->add_cause($causes['code'], $causes['description']); }else{ foreach ($causes as $cause){ if(is_array($cause) && (!isset($cause['code']) && !isset($cause['description']))){ $this->proccess_causes($cause); }else{ $this->add_cause($cause['code'], $cause['description']); } } } }