En realidad es bastante fàcil, mercadopago te notifica a una url tuya cuando hay algun cambio, te devuelve el id que vos le enviaste al hacer la compra, y el nuevo status (te lo envia por POST), con eso ya podes disparar un cambio en la base de datos, el envio de un mail o lo que sea.
Acá te dejo un cachito de codigo de una controller de codeigniter que se encarga de recibir esa notificación. Si no sabes codeigniter pero sabes php lo vas a entender està fàcil
Código PHP:
Ver original<?php
exit('No direct script access allowed');
class mp extends CI_Controller {
function notify() {
/*
ESTO TE ENVIA UN MAIL CADA VEZ QUE SE REALIZA UNA NOTIFICACION DE MP, ES UTIL AL PRINCIPIO SI QUERES CONTROLAR QUE TODO VAYA BIEN */
$this->load->library('email');
$this->email->subject('enviando compra');
$tmpMessage = print_r($this->input->post(), true); $this->email->message($tmpMessage);
$this->email->send();
/*
Y CON ESTO "ATAJAMOS" LOS DATOS QUE NOS MANDA MP POR POST */
$data['id'] = $this->input->post('seller_op_id'); // identificador de la compra local
$data['mp_op_id'] = $this->input->post('mp_op_id'); // identificador de la compra en mercadopago
$data['status'] = $this->input->post('status'); // estado de la compra A, P o C
$data['payment_method'] = $this->input->post('payment_method'); // modo de pago OFF = offline TCO = tarjeta
/*
ACÀ ENVIAS UN MAIL AL USUARIO, O A VOS, O CAMBIAS ALGO EN LA BASE O HACES LO QUE TENGAS QUE HACER */
}
}