Ejecutando un script externo cuando un Usuario complete una compra.
soporte, ws.webtv, store, tienda, gestion, llamada, script, externo, webhooks, callbacks
Desde WS.WebTV 2.1.0.1 es posible llamar a un script externo cuando un Usuario complete una compra.
¿Cómo funciona?
Si especifica las URL del script en el archivo de configuración de la WebTV (config/Config.inc.php), el sistema llamará a dicho scripts cuando un Usuario finalice una compra.
Esta funcionalidad puede ser complementada con la extensión API. Por ejemplo, después de que un usuario finalice una compra Ud. puede querer realizar determinadas acciones sobre la cuenta del usuario o sobre su contenido usando el API de la WebTV.
Este script será llamado cuando un Usuario finalice una compra.
Datos enviados por la WebTV como variables POST:
• user_id (int): ID del Usuario (comprador).
• order_id (int): ID del Pedido.
• order_number (string): Número de Pedido.
• products (string): arreglo con los productos comrpados, en formato JSON.
Cada entrada del arreglo de productos contendrá la siguiente información (índices):
• sku (string): SKU del producto
• content_id (int): ID del contenido (si aplica)
• content_type_id (int): ID del tipo de contenido
• content_type_name (string): Nombre del tipo de contenido
• product_type_id (int): ID del tipo de producto
• product_type_name (string): Nombre del tipo de producto
Variable en el archivo de configuración:
$STORE_ON_PURCHASE_SCRIPT_URL = ""; // Debe ser una URL absoluta, comenzado por http:// o https://
Ejemplo de datos contenidos en variables POST para una compra de una Membresía de Contribución por un Usuario con ID 54:
// PHP CODE
echo $_POST["user_id"]; // (int) 54
echo $_POST["order_id"]; // (int) 235
echo $_POST["order_number"]; // (string) ORD00235
echo $_POST["products"]; // (string) [{"sku":"USRMBRCONTPER","content_id":-1,"content_type_id":"0","content_type_name":"SITE","product_type_id":"10","product_type_name":"MEMBERSHIPPERIODCONTRIBUTING"}]
print_r( json_decode($_POST["products"], true) );
/*
array (
0 =>
array (
'sku' => 'USRMBRCONTPER',
'content_id' => -1,
'content_type_id' => '0',
'content_type_name' => 'SITE',
'product_type_id' => '10',
'product_type_name' => 'MEMBERSHIPPERIODCONTRIBUTING',
),
)
*/