Saltar al contenido
Falconextdev

Integrar con WooCommerce

Dispara pedidos de Falconext desde WooCommerce.

Crea un pedido en Falconext cuando una orden de WooCommerce pasa a "procesando".

Engánchate al cambio de estado de la orden

Usa el hook woocommerce_order_status_processing en tu plugin o en el functions.php del tema hijo.

PHP
PHP
add_action('woocommerce_order_status_processing', 'fx_create_order');

function fx_create_order($order_id) {
  $order = wc_get_order($order_id);

  wp_remote_post('https://api.falconext.pe/api/v1/logistics/orders', [
    'headers' => [
      'Authorization' => 'Bearer ' . FALCONEXT_API_KEY,
      'Content-Type'  => 'application/json',
    ],
    'body' => wp_json_encode([
      'external_order_id' => $order->get_order_number(),
      'customer' => [
        'name'  => $order->get_formatted_shipping_full_name(),
        'phone' => $order->get_billing_phone(),
      ],
      'delivery_address' => [
        'address' => $order->get_shipping_address_1() . ', ' . $order->get_shipping_city(),
        'city'    => $order->get_shipping_city(),
      ],
    ]),
    'timeout' => 10,
  ]);
}

Guarda el tracking en la orden

Almacena el tracking_code devuelto como order meta para mostrarlo al cliente.

Actualiza con webhooks

Registra un endpoint (por ejemplo una ruta de la REST API de WordPress) para recibir los eventos y actualizar el estado de la orden.

Evita bloquear el checkout

wp_remote_post con un timeout corto evita que una lentitud de red afecte la experiencia de compra. Considera encolarlo con Action Scheduler.