Hola a ver lo que te puedo decir a primera vista
1 - Lo primero es que la ruta del controller es con s controllers
2 - Luego todos esos archivos que llamas en el controller no los necesitas
puedes probar el controller levanta con algo tan simple que consultandolo en tu browser (claro si pruebas un get )
tutienda.com/index.php?fc=module&module=TUMODULO&controller=ajax
y si quieres desde seo lo buscas y le creas un friendly asi te aseguras que prestashop te lee el controller
3 Ahora la llamada historicamente la hago asi sin problema asi
$.ajax({
type: 'POST',
url: prestashop.urls.base_url + 'index.php?fc=module&module=yourmodule&controller=ajax' ,
headers: { "cache-control": "no-cache" },
dataType: 'json',
data: {
ajax: true,
// Otros valores aqui
} ,
success: function(response) {
// AQUI
},
error: function(response) {
// ERROR AQUI
},
});