O PagSeguro envia o a atualização de status de pagamento via POST na URL de retorno em JSON.
Primeiro precisamos tratar esse retorno da API, isso é bem simples como você pode ver no código a baixo:
<?php
$json = file_get_contents('php://input'); //recebendo o JSON via POST
$resultado = json_decode($json); //fazendo o decode dos dados
foreach($resultado->charges as $linha){
$status .= $linha->status;
}
// gravar no seu banco $resultado->id e $status
?>
Caso queira verificar o JSON completo segue o link da documentação: