te muestro el sp
 
Código:
 procedure pa_insertaproducto(parametros , param_salida in out t_cursor_salida) 
IS
    contarProdServ integer;
  BEGIN
    SELECT count(*)
      into contarProdServ
      FROM tabla
     WHERE cod_comercio = param_cod_comercio
       AND sku_producto = param_sku_producto;
    IF (contarProdServ = 0) THEN
      INSERT INTO tabla
        campos
      VALUES
        parametros
      open param_salida for
        select 1 from dual;
    
    ELSE
      UPDATE tabla
         SET campos = parametros
       WHERE cod_comercio = param_cod_comercio
         AND sku_producto = param_sku_producto;
    
      open param_salida for
        select 2 from dual;
    END IF;
  
  EXCEPTION
    WHEN OTHERS THEN
      open param_salida for
        select -1 from dual;
      rollback;
      raise;
  END;
  y bueno, el cursor devuelve un int  en este caso el null sería -1